Condividi tramite


Classificazioni dei comandi MCI

[La funzionalità associata a questa pagina, MCI, è una funzionalità legacy. È stato sostituito da MediaPlayer. MediaPlayer è stato ottimizzato per Windows 10 e Windows 11. Microsoft consiglia vivamente che il nuovo codice usi MediaPlayer invece di MCI, quando possibile. Microsoft suggerisce che il codice esistente che usa le API legacy venga riscritto per usare le nuove API, se possibile.

MCI definisce quattro classificazioni dei comandi: sistema, obbligatorio, di base e esteso. L'elenco seguente descrive queste classificazioni dei comandi:

  • I comandi di sistema vengono gestiti direttamente da MCI, anziché dal driver.
  • I comandi obbligatori vengono gestiti dal driver. Tutti i driver MCI devono supportare i comandi e i flag necessari.
  • I comandi di base (o i comandi facoltativi) vengono usati da alcuni dispositivi. Se un dispositivo supporta un comando di base, deve supportare un set definito di flag per tale comando.
  • I comandi estesi sono specifici di un tipo di dispositivo o di un driver. I comandi estesi includono comandi, ad esempio i comandi put (MCI_PUT) e dove (MCI_WHERE) per i tipi di dispositivo digitalvideo e overlay e le estensioni ai comandi esistenti (ad esempio il flag "stretch" dello stato (MCI_STATUS) per il tipo di dispositivo di sovrimpressione.

Anche se i comandi di sistema e obbligatori sono il set di comandi minimo per qualsiasi driver MCI, i comandi di base e estesi non sono supportati da tutti i driver. L'applicazione può sempre usare comandi di sistema e obbligatori e i relativi flag, ma se deve usare un comando o un flag di base o esteso, deve prima eseguire una query sul driver usando il comando capability (MCI_GETDEVCAPS). Le sezioni seguenti riepilogano i comandi specifici in ogni categoria.

Comandi di sistema

MCI elabora direttamente i comandi di sistema seguenti, anziché passarli ai dispositivi MCI.

string Message Descrizione
Pausa MCI_BREAK Imposta una chiave di interruzione per un dispositivo MCI.
Sysinfo MCI_SYSINFO Restituisce informazioni sui dispositivi MCI.

 

Comandi obbligatori

Tutti i dispositivi MCI supportano i comandi necessari seguenti.

string Message Descrizione
Capacità MCI_GETDEVCAPS Ottiene le funzionalità di un dispositivo.
Vicino MCI_CLOSE Chiude il dispositivo.
Informazioni MCI_INFO Ottiene informazioni testuali da un dispositivo.
Aperto MCI_OPEN Inizializza il dispositivo.
Stato MCI_STATUS Ottiene informazioni sullo stato dal dispositivo. Alcuni flag di questo comando non sono necessari, quindi è anche un comando di base.

 

I dispositivi devono supportare anche un set standard di flag di comando per i comandi necessari.

Comandi di base

L'elenco seguente riepiloga i comandi di base. L'uso di questi comandi da parte di un dispositivo MCI è facoltativo.

string Message Descrizione
Carico MCI_LOAD Carica i dati da un file.
Pausa MCI_PAUSE Smette di giocare. La riproduzione o la registrazione possono essere riprese nella posizione corrente.
Giocare MCI_PLAY Avvia la trasmissione dei dati di output.
Registrazione MCI_RECORD Avvia la registrazione dei dati di input.
riassumere MCI_RESUME Riprende la riproduzione o la registrazione in un dispositivo sospeso.
Salvare MCI_SAVE Salva i dati in un file su disco.
Cercare MCI_SEEK Cerca avanti o indietro.
Impostare MCI_SET Imposta lo stato operativo del dispositivo.
Stato STATO MCI Ottiene informazioni sullo stato del dispositivo. Questo è anche un comando obbligatorio; poiché alcuni dei suoi flag non sono obbligatori, è elencato anche qui. Gli elementi facoltativi supportano i dispositivi che usano supporti lineari con posizioni identificabili.
Fermare MCI_STOP Smette di giocare.

 

Se un driver supporta un comando di base, deve supportare anche un set standard di flag per il comando.

Comandi estesi

Alcuni dispositivi MCI hanno comandi aggiuntivi o aggiungono flag ai comandi esistenti. Anche se alcuni comandi estesi si applicano solo a un driver di dispositivo specifico, la maggior parte di esse si applica a tutti i driver di un particolare tipo di dispositivo. Ad esempio, il set di comandi per il tipo di dispositivo sequencer estende il comando set (MCI_SET) per aggiungere formati di ora necessari per i sequencer MIDI.

Non è consigliabile presupporre che il dispositivo supporti i comandi o i flag estesi. È possibile usare il comando capability (MCI_GETDEVCAPS) per determinare se una funzionalità specifica è supportata e l'applicazione deve essere pronta per gestire i valori restituiti di "comando non supportato" o "funzione non supportata".

I comandi estesi seguenti sono disponibili con i tipi di dispositivo elencati.

string Message Tipi di dispositivi Descrizione
Configurare MCI_CONFIGURE digitalvideo Visualizza una finestra di dialogo di configurazione.
segnale MCI_CUE digitalvideo, waveaudio Prepara la riproduzione o la registrazione.
Elimina MCI_DELETE Waveaudio Elimina un segmento di dati dal file multimediale.
Fuga MCI_ESCAPE videodisc Invia informazioni personalizzate a un dispositivo.
Congelare MCI_FREEZE overlay Disabilita l'acquisizione video nel buffer dei fotogrammi.
Mettere MCI PUT digitalvideo, overlay Definisce le finestre di origine, destinazione e cornice.
Realizzare MCI_REALIZE digitalvideo Indica al dispositivo di selezionare e realizzare la tavolozza in un contesto di dispositivo della finestra visualizzata.
setaudio MCI_ SETAUDIO digitalvideo Imposta i parametri audio per il video.
setvideo MCI_ SETVIDEO digitalvideo Imposta i parametri video.
Segnale MCI_SIGNAL digitalvideo Identifica una posizione specificata con un segnale.
giro MCI_SPIN videodisc Avvia la rotazione del disco o arresta la rotazione del disco.
Passo MCI_STEP digitalvideo, videodisc Consente di eseguire la riproduzione di uno o più fotogrammi avanti o inverso.
Sbloccare MCI_UNFREEZE overlay Consente al buffer dei fotogrammi di acquisire dati video.
Aggiornamento MCI_UPDATE digitalvideo Aggiorna il frame corrente nel contesto del dispositivo.
Dove MCI WHERE digitalvideo, overlay Ottiene il rettangolo che specifica l'area di origine, destinazione o cornice.
Finestra MCI_WINDOW digitalvideo, overlay Controlla la finestra di visualizzazione.