Diese Klasse implementiert einen Medienplayer mit einfacher Steuerung und ist erzeugbar.
So erzeugen Sie eine neue MediaView:
Dim hMediaView As MediaView hMediaView = New MediaView ( Parent As Container ) [ As "EventName" ]
Alternativ können Sie das Steuerelement MediaView in der IDE aus dem Ordner 'Media' auf das Formular ziehen, wenn Sie zuvor in den Projekt-Eigenschaften die Komponente gb.media.form hinzugefügt haben.
Abbildung 23.15.1: MediaView als Video-Player
Die Klasse MediaView verfügt über diese Eigenschaften:
Eigenschaft | Datentyp | Beschreibung |
---|---|---|
Border | Boolean | Das Steuerelement erhält einen Rahmen, wenn der Wert auf True gesetzt wird oder gibt den Wert zurück. |
Duration | Float | Gibt die Spieldauer des Mediums in Sekunden zurück. Hinweis: Dieser Wert bleibt Null, bis die Datei abgespielt wurde. Das einfache Setzen der URL-Eigenschaft zeigt die Mediendauer nicht an! |
Muted | Boolean | Der Ton wird stummgeschaltet, wenn der Wert auf True gesetzt wird oder gibt den Wert zurück. |
NextURL | String | Gibt den Pfad oder die nächste URL der abzuspielenden Medien-Datei zurück oder setzt sie. |
Position | Float | Gibt die aktuelle Position innerhalb des Mediums in Sekunden zurück oder setzt sie. |
ShowControl | Boolean | Das Steuerelement wird angezeigt, wenn der Wert auf True gesetzt wird oder gibt den Wert zurück. |
Speed | Float | Gibt die Wiedergabegeschwindigkeit des Mediums zurück oder setzt den Wert. Seit Version 3.12. |
State | Integer | Gibt den Status des Mediaplayers zurück. Seit Version 3.19. |
URL | String | Gibt den Pfad oder die URL der abzuspielenden Medien-Datei zurück oder setzt sie. |
Volume | Float | Legt die Lautstärke der Tonspur auf einen Wert zwischen 0 und 1 fest oder gibt den Lautstärke-Wert zurück. |
Tabelle 23.15.1.1 : Eigenschaften der Klasse MediaView
Die Klasse MediaView verfügt über diese Methoden:
Methode | Beschreibung |
---|---|
Pause() | Die Wiedergabe der Medien-Datei pausiert. |
Play() | Die Wiedergabe der Medien-Datei wird gestartet. |
Stop() | Die Wiedergabe der Medien-Datei wird gestoppt/beendet. |
Tabelle 23.15.2.1 : Methoden der Klasse MediaView
Beispiel:
MediaView1.URL = Media.URL("/tmp/media.mpg") Print MediaView1.Duration MediaView1.Play() MediaView1.Pause() Print MediaView1.Duration
Ausgaben in der IDE-Konsole (Einheit Sekunden):
0 342
Die Klasse MediaView verfügt über dieses relevante Ereignis:
Ereignis | Beschreibung |
---|---|
AboutToFinish ( ) | Dieses Ereignis wird ausgelöst, wenn die aktuelle Medienwiedergabe kurz vor dem Ende steht. Es wird etwa zwei Sekunden vor dem Ende des Abspielens der Medien-Datei ausgelöst. |
Tabelle 23.15.2.1.1 : Ereignisse der Klasse MediaView
Das Projekt ist so konfiguriert, dass Sie Video-Dateien in unterschiedlichen Video-Formaten abspielen können.
Der Quelltext ist kurz und wird hier vollständig angegeben sowie anschließend kommentiert:
[1] ' Gambas class file [2] [3] Private $sFileName As String [4] [5] Public Sub Form_Open() [6] MediaView1.Volume = 0.7 [7] FMain.Width = 629 [8] End [9] [10] Public Sub btnOpenVideo_Click() [11] [12] Dim sFilter As String [13] Dim aFilter As String[] [14] [15] Dialog.Title = ("Select a video file") [16] sFilter = "*.avi;*.mp4;*.mpeg;*.mpg;*.webm;*.ogv;*.mkv" [17] Dialog.Filter = [sFilter, ("Video files"), "*", ("All files")] [18] Dialog.FilterIndex = 0 [19] [20] If Dialog.OpenFile(False) Then Return [21] [22] $sFileName = File.Name(Dialog.Path) [23] FMain.Caption = ("Video: ") & $sFileName [24] [25] aFilter = ["avi", "mp4", "mpeg", "mpg", "webm", "ogv", "mkv"] [26] If aFilter.Exist(File.Ext(Dialog.Path)) Then [27] MediaView1.URL = Media.URL(Dialog.Path) [28] Endif [29] [30] End [31] [32] Public Sub MediaView1_AboutToFinish() [33] Wait 2 [34] FMain.Caption = ("The video « ") & $sFileName & (" » has been played") [35] End [36] [37] Public Sub Form_Close() [38] [39] Dim hWindow As Window [40] [41] '-- Close all open windows [42] For Each hWindow In Windows [43] hWindow.Close() [44] Next [45] [46] End
Kommentare
Im Download-Bereich finden Sie ein Projekt-Archiv mit dem o.a. Beispiel.