Abspielen von Multimediadateien mit MCI-Befehlen

Datei:...\Samples\Solution\Forms\Mci_play.scx

Das Beispielformular verwendet MCI (Multimedia Command Interface), um Multimediadateien abzuspielen. Es kann alle visuellen oder nicht-visuellen Medien wiedergeben, die auf Ihrem Computer installiert sind. Die GETFILE( )-Funktion verlangt jedoch für die gängigsten Multimediadateien des Formats AVI, WAV, MOV und MID eine Bestätigung. Um eine andere Datei auszuwählen, wählen Sie Alle Dateien und anschließend die gewünschte Datei. Eine Dokumentation zu den MCI-Befehlen erhalten Sie, indem Sie in der MSDN-Bibliothek (<a href="https://msdn.microsoft.com/library/">https://msdn.microsoft.com
/library</a>) nach "Multimedia Commands" suchen.

Die folgenden drei Funktionen der Windows-API werden im Init-Ereignis des Formulars deklariert:

  • mciSendString
  • mciGetErrorString
  • SetWindowPos

Die DoMCI-Methode des Formulars führt einen MCI-Befehl aus, der als Parameter übergeben wird.

Klassen

Sie können das Formular öffnen, um den Code anzuzeigen, der für das Ausführen von Multimediadateien erforderlich ist. Die gleichen Funktionen finden Sie jedoch auch in Klassen, die Sie leicht in Ihre eigenen Anwendungen integrieren können.

VideoFrame-Klasse

Die VideoFrame-Klasse aus der Visual FoxPro-Klassenbibliothek ...\Samples\Classes\Samples.vcx kann für die Wiedergabe einer visuellen Multimediadatei verwendet werden, beispielsweise einer Video-für-Windows-Datei. Diese Klasse ermöglicht es Ihnen, die Position und Größe des wiederzugebenden Videos anzugeben. Sie stellt außerdem integrierte Methoden für eine einfache Wiedergabe der Mediendatei zur Verfügung.

Ein Beispiel für die Verwendung dieser Klasse finden Sie in der Datei Video.scx im Visual FoxPro-Verzeichnis ...\Samples\Solution\Forms.

Eigenschaft Beschreibung
AutoOpen Gibt an, ob die Videodatei beim Instanziieren des Objekts automatisch geöffnet und angezeigt werden soll. Der Standardwert ist gleich Wahr (.T.).
AutoPlay Gibt an, ob die Videodatei automatisch abgespielt werden soll, wenn sie geöffnet wird. Der Standardwert ist gleich Wahr (.T.).
AutoRepeat Gibt an, ob die Videodatei wiederholt ausgeführt werden soll. Ist dieser Wert auf .T. festgelegt, wird das Video ohne Unterbrechung gespielt. Der Standardwert ist gleich Falsch (.F.).
ControlSource Gibt ein Feld an, das den Videodateiverweis enthält. Wenn dieses leer ist, erwartet die Klasse einen statischen Dateinamen in der VideoFile-Eigenschaft.
MCIalias Gibt den Alias an, der von MCI verwendet werden soll. Wenn dieser Eintrag leer bleibt, ist der Alias standardmäßig der der Name-Eigenschaft. Normalerweise kann dieser Eintrag leer bleiben, wenn der Benutzer jedoch die gleiche Videodatei zweimal zur gleichen Zeit spielen möchte, müsste ein unterschiedlicher Alias für jede angegeben werden.
VideoFile Enthält den Namen einer Videodatei, die wiedergegeben werden soll, beispielsweise "D:\...\Samples\Solution\FORMS\FOX.AVI".
Methode Beschreibung
CloseVideo Schließt die Videodatei und gibt alle ihr zugeordneten Ressourcen wieder frei.
DoMCI Wird von anderen Methoden aufgerufen, um MCI-Befehle auszuführen. Sie kann auch von einem Benutzer aufgerufen werden, um einen bestimmten MCI-Befehl auszuführen.
OpenVideo Öffnet die Videodatei und zeigt den ersten Frame an.
PauseVideo Unterbricht die Wiedergabe des Videos. Das Video kann mit der PlayVideo-Methode neu gestartet werden.
PlayVideo Spielt die Videodatei ab. Die Videodatei muss mit der OpenVideo-Methode geöffnet werden, bevor sie abgespielt werden kann.
SetPosition Ermöglicht es den Benutzern, die Position der Mediendatei anzugeben. Sie kann zu jedem Zeitpunkt ausgeführt werden, nachdem die Videodatei geöffnet wurde. Gültige Werte sind Start, End oder eine spezifische Millisekunde im Video.

Sound Player-Klasse

Diese Klasse ist ebenfalls in der Klassenbibliothek ...\Samples\Classes\Samples.vcx enthalten. Sie kann verwendet werden, um eine nicht-visuelle Multimediadatei abzuspielen, beispielsweise eine Waveaudiodatei. Diese Klasse ermöglicht es Ihnen, die Datei anzugeben, die wiedergegeben werden soll. Sie stellt außerdem integrierte Methoden für die einfache Wiedergabe der Mediendatei zur Verfügung.

Eigenschaft Beschreibung
AutoOpen Gibt an, ob die Audiodatei automatisch geöffnet und angezeigt werden soll, wenn das Objekt instanziiert wird. Der Standardwert ist gleich Wahr (.T.).
AutoPlay Gibt an, ob die Audiodatei automatisch abgespielt werden soll, wenn sie geöffnet wird. Der Standardwert ist gleich Wahr (.T.).
AutoRepeat Gibt an, ob die Audiodatei ohne Unterbrechung abgespielt werden soll. Der Standardwert ist gleich Falsch (.F.).
ControlSource Gibt die Spalte an, die den Audiodateiverweis enthält. Wenn diese leer ist, erwartet die Klasse einen statischen Dateinamen in der SoundFile-Eigenschaft.
MCIAlias Gibt den Alias an, der von MCI verwendet werden soll. Wenn dieser Eintrag leer bleibt, ist der Alias standardmäßig der der Name-Eigenschaft. Normalerweise kann dieser Eintrag leer bleiben, wenn der Benutzer jedoch die gleiche Audiodatei zweimal zur gleichen Zeit spielen möchte, müsste ein unterschiedlicher Alias für jede angegeben werden.
SoundFile Enthält den Namen einer abzuspielenden Audiodatei, beispielsweise "C:\WINDOWS\CHIMES.WAV".
Methode Beschreibung
OpenSound Öffnet die Sounddatei (Audiodatei).
PlaySound Spielt die Audiodatei ab. Die Datei muss mit der OpenSound-Methode geöffnet werden, bevor sie abgespielt werden kann.
PauseSound Unterbricht das Abspielen einer Audiodatei. Die Wiedergabe kann durch Aufrufen der PlaySound-Methode fortgesetzt werden.
SetPosition Ermöglicht es den Benutzern, die Position der Mediendatei anzugeben. Sie kann zu jedem Zeitpunkt ausgeführt werden, nachdem die Datei geöffnet wurde. Zulässige Werte sind Start, End oder eine bestimmte Millisekunde im Ablauf der Audiodatei.
CloseSound Schließt die Audiodatei und gibt alle zugeordneten Ressourcen wieder frei.

Siehe auch

Lösungsbeispiele | Visual FoxPro Foundation Classes A-Z