Download sample01
VideoLan rappresenta un ottimo strumento open source per gestire i video (risprodurre, archiviare, trasmettere in streaming, acquisizione ecc.).
VideoLAN è rilasciato anche come componente OCX che può essere integrato ed utilizzato in qualsiasi ambiente di sviluppo che supporti questa tecnologia.
Come è noto Delphi gestisce egreggiamente l'integrazione di componenti OCX, è pertanto sufficente effettuare l'importazione ActiveX VideoLAN per poterlo utilizzare in un progetto Delphi:
Come è noto Delphi gestisce egreggiamente l'integrazione di componenti OCX, è pertanto sufficente effettuare l'importazione ActiveX VideoLAN per poterlo utilizzare in un progetto Delphi:
Di seguito è riportato un esempio di integrazione di videolan in un progetto delphi (ver. 7..2007) :
var
vlc1: TVLCPlugin2; //oggetto vlcplug in presente nella unit AXVLC_TLB creata da delphi
v0,v1:Variant; //variabile necessaria per chiamare la funzione vlc.add
//------------------------------------------------------------------------------
procedure TForm1.bOpenClick(Sender: TObject);
//------------------------------------------------------------------------------
beginif OpenDialog1.Execute then
begin
eSource.Text:=OpenDialog1.FileName;
vlc1.playlist.clear;
vlc1.playlist.add(eSource.Text,v0,v1);
vlc1.playlist.play;
end;
end;
//------------------------------------------------------------------------------
procedure TForm1.FormCreate(Sender: TObject);
//------------------------------------------------------------------------------
begin
vlc1:= TVLCPlugin2.Create(Panel1);
vlc1.Parent:= Panel1;
vlc1.Align:=alClient;
end;
//------------------------------------------------------------------------------
procedure TForm1.FormClose(Sender: TObject; var Action: TCloseAction);
//------------------------------------------------------------------------------
begin
vlc1.Destroy;
end;
//------------------------------------------------------------------------------
procedure TForm1.CLOSE1Click(Sender: TObject);
//------------------------------------------------------------------------------
begin
Close;
end;
//------------------------------------------------------------------------------
procedure TForm1.bStopClick(Sender: TObject);
//------------------------------------------------------------------------------
begin
vlc1.playlist.stop;
end;
//------------------------------------------------------------------------------
procedure TForm1.bPlayClick(Sender: TObject);
//------------------------------------------------------------------------------
begin
vlc1.playlist.clear;
vlc1.playlist.add(eSource.Text,v0,v1);
vlc1.playlist.play;
end;
//------------------------------------------------------------------------------
procedure TForm1.bPauseClick(Sender: TObject);
//------------------------------------------------------------------------------
begin
vlc1.playlist.togglePause;
end;
//------------------------------------------------------------------------------
procedure TForm1.bOpenClick(Sender: TObject);
//------------------------------------------------------------------------------
beginif OpenDialog1.Execute then
begin
eSource.Text:=OpenDialog1.FileName;
vlc1.playlist.clear;
vlc1.playlist.add(eSource.Text,v0,v1);
vlc1.playlist.play;
end;
end;
//------------------------------------------------------------------------------
procedure TForm1.FormCreate(Sender: TObject);
//------------------------------------------------------------------------------
begin
vlc1:= TVLCPlugin2.Create(Panel1);
vlc1.Parent:= Panel1;
vlc1.Align:=alClient;
end;
//------------------------------------------------------------------------------
procedure TForm1.FormClose(Sender: TObject; var Action: TCloseAction);
//------------------------------------------------------------------------------
begin
vlc1.Destroy;
end;
//------------------------------------------------------------------------------
procedure TForm1.CLOSE1Click(Sender: TObject);
//------------------------------------------------------------------------------
begin
Close;
end;
//------------------------------------------------------------------------------
procedure TForm1.bStopClick(Sender: TObject);
//------------------------------------------------------------------------------
begin
vlc1.playlist.stop;
end;
//------------------------------------------------------------------------------
procedure TForm1.bPlayClick(Sender: TObject);
//------------------------------------------------------------------------------
begin
vlc1.playlist.clear;
vlc1.playlist.add(eSource.Text,v0,v1);
vlc1.playlist.play;
end;
//------------------------------------------------------------------------------
procedure TForm1.bPauseClick(Sender: TObject);
//------------------------------------------------------------------------------
begin
vlc1.playlist.togglePause;
end;
//------------------------------------------------------------------------------
1 commento:
Fantastico....decisamente utile.....hai qualche idea del perchè non si riesca a ricevere utilizzando http?
Posta un commento