Klassifizierungen von MCI-Befehlen
[Das dieser Seite zugeordnete Feature MCI ist ein Legacyfeature. Es wurde von MediaPlayer abgelöst. MediaPlayer wurde für Windows 10 und Windows 11 optimiert. Microsoft empfiehlt dringend, dass neuer Code nach Möglichkeit MediaPlayer anstelle von MCI verwendet. Microsoft schlägt vor, dass vorhandener Code, der die Legacy-APIs verwendet, so umgeschrieben wird, dass nach Möglichkeit die neuen APIs verwendet werden.]
MCI definiert vier Befehlsklassifizierungen: system, required, basic und extended. In der folgenden Liste werden diese Befehlsklassifizierungen beschrieben:
- Systembefehle werden direkt von MCI und nicht vom Treiber verarbeitet.
- Erforderliche Befehle werden vom Treiber verarbeitet. Alle MCI-Treiber müssen die erforderlichen Befehle und Flags unterstützen.
- Grundlegende Befehle (oder optionale Befehle) werden von einigen Geräten verwendet. Wenn ein Gerät einen einfachen Befehl unterstützt, muss es einen definierten Satz von Flags für diesen Befehl unterstützen.
- Erweiterte Befehle sind spezifisch für einen Gerätetyp oder Treiber. Erweiterte Befehle umfassen Befehle wie put (MCI_PUT) und where -Befehle (MCI_WHERE) für die Digitalvideo- und Überlagerungsgerätetypen sowie Erweiterungen zu vorhandenen Befehlen (z. B. das "stretch"-Flag des Befehls status (MCI_STATUS) für den Überlagerungsgerätetyp).
System- und erforderliche Befehle sind zwar der Mindestbefehlssatz für jeden MCI-Treiber, aber grundlegende und erweiterte Befehle werden nicht von allen Treibern unterstützt. Ihre Anwendung kann immer Systembefehle und erforderliche Befehle und deren Flags verwenden. Wenn sie jedoch einen einfachen oder erweiterten Befehl oder ein Flag verwenden muss, sollte sie zuerst den Treiber mithilfe des Funktionsbefehls (MCI_GETDEVCAPS) abfragen. In den folgenden Abschnitten werden die spezifischen Befehle in jeder Kategorie zusammengefasst.
Systembefehle
MCI verarbeitet die folgenden Systembefehle direkt, anstatt sie an MCI-Geräte zu übergeben.
String | `Message` | BESCHREIBUNG |
---|---|---|
Brechen | MCI_BREAK | Legt einen Umbruchschlüssel für ein MCI-Gerät fest. |
Sysinfo | MCI_SYSINFO | Gibt Informationen zu MCI-Geräten zurück. |
Erforderliche Befehle
Alle MCI-Geräte unterstützen die folgenden erforderlichen Befehle.
String | `Message` | BESCHREIBUNG |
---|---|---|
Fähigkeit | MCI_GETDEVCAPS | Ruft die Funktionen eines Geräts ab. |
Schließen | MCI_CLOSE | Schließt das Gerät. |
info | MCI_INFO | Ruft Textinformationen von einem Gerät ab. |
open | MCI_OPEN | Initialisiert das Gerät. |
status | MCI_STATUS | Ruft status Informationen vom Gerät ab. Einige flags dieses Befehls sind nicht erforderlich, daher handelt es sich auch um einen einfachen Befehl. |
Geräte müssen auch einen Standardsatz von Befehlsflags für die erforderlichen Befehle unterstützen.
Grundlegende Befehle
In der folgenden Liste sind die grundlegenden Befehle zusammengefasst. Die Verwendung dieser Befehle durch ein MCI-Gerät ist optional.
String | `Message` | BESCHREIBUNG |
---|---|---|
Laden | MCI_LOAD | Lädt Daten aus einer Datei. |
anhalten | MCI_PAUSE | Beendet die Wiedergabe. Die Wiedergabe oder Aufzeichnung kann an der aktuellen Position fortgesetzt werden. |
play | MCI_PLAY | Beginnt mit der Übertragung von Ausgabedaten. |
Aufzeichnung | MCI_RECORD | Startet die Aufzeichnung von Eingabedaten. |
Fortsetzen | MCI_RESUME | Setzt die Wiedergabe oder Aufzeichnung auf einem angehaltenen Gerät fort. |
Speichern | MCI_SAVE | Speichert Daten in einer Datenträgerdatei. |
Suchen | MCI_SEEK | Sucht vorwärts oder rückwärts. |
Festgelegt | MCI_SET | Legt den Betriebszustand des Geräts fest. |
status | MCI-STATUS | Ruft status Informationen zum Gerät ab. Dies ist auch ein erforderlicher Befehl. Da einige seiner Flags nicht erforderlich sind, ist es auch hier aufgeführt. (Die optionalen Elemente unterstützen Geräte, die lineare Medien mit identifizierbaren Positionen verwenden.) |
Stoppen | MCI_STOP | Beendet die Wiedergabe. |
Wenn ein Treiber einen einfachen Befehl unterstützt, muss er auch einen Standardsatz von Flags für den Befehl unterstützen.
Erweiterte Befehle
Einige MCI-Geräte verfügen über zusätzliche Befehle oder fügen vorhandenen Befehlen Flags hinzu. Während einige erweiterte Befehle nur für einen bestimmten Gerätetreiber gelten, gelten die meisten für alle Treiber eines bestimmten Gerätetyps. Beispielsweise erweitert der Befehlssatz für den Sequencer-Gerätetyp den Befehl set (MCI_SET), um Zeitformate hinzuzufügen, die von MIDI-Sequenzern benötigt werden.
Sie sollten nicht davon ausgehen, dass das Gerät die erweiterten Befehle oder Flags unterstützt. Sie können den Funktionsbefehl (MCI_GETDEVCAPS) verwenden, um zu bestimmen, ob ein bestimmtes Feature unterstützt wird, und Ihre Anwendung sollte bereit sein, die Rückgabewerte "nicht unterstützter Befehl" oder "nicht unterstützte Funktion" zu verarbeiten.
Die folgenden erweiterten Befehle sind mit den aufgeführten Gerätetypen verfügbar.
String | Nachricht | Gerätetypen | BESCHREIBUNG |
---|---|---|---|
KONFIGURIEREN | MCI_CONFIGURE | digitalvideo | Zeigt ein Konfigurationsdialogfeld an. |
Hinweis | MCI_CUE | digitalvideo, waveaudio | Bereitet sich auf die Wiedergabe oder Aufzeichnung vor. |
Löschen | MCI_DELETE | Waveaudio | Löscht ein Datensegment aus der Mediendatei. |
escape | MCI_ESCAPE | videodisc | Sendet benutzerdefinierte Informationen an ein Gerät. |
Einfrieren | MCI_FREEZE | overlay | Deaktiviert die Videoaufnahme für den Framepuffer. |
put | MCI PUT | digitalvideo, overlay | Definiert die Quell-, Ziel- und Framefenster. |
Erkennen | MCI_REALIZE | digitalvideo | Weist das Gerät an, seine Palette in einem Gerätekontext des angezeigten Fensters auszuwählen und zu realisieren. |
Setaudio | MCI_ SETAUDIO | digitalvideo | Legt Audioparameter für Video fest. |
setvideo | MCI_ SETVIDEO | digitalvideo | Legt Videoparameter fest. |
signal | MCI_SIGNAL | digitalvideo | Identifiziert eine angegebene Position mit einem Signal. |
drehen | MCI_SPIN | videodisc | Startet das Drehen der Scheibe oder stoppt das Drehen der Scheibe. |
Schritt | MCI_STEP | digitalvideo, videodisc | Führt die Wiedergabe eines oder mehrerer Frames nach vorne oder umgekehrt aus. |
Auftauen | MCI_UNFREEZE | overlay | Ermöglicht dem Framepuffer das Abrufen von Videodaten. |
aktualisieren | MCI_UPDATE | digitalvideo | Übermalt den aktuellen Frame erneut in den Gerätekontext. |
Wo | MCI WHERE | digitalvideo, overlay | Ruft das Rechteck ab, das die Quelle, das Ziel oder den Rahmenbereich angibt. |
Fenster | MCI_WINDOW | digitalvideo, overlay | Steuert das Anzeigefenster. |