Classificações de comandos MCI

[O recurso associado a esta página, MCI, é um recurso herdado. Foi substituído pelo MediaPlayer. O MediaPlayer foi otimizado para Windows 10 e Windows 11. A Microsoft recomenda fortemente que o novo código use MediaPlayer em vez de MCI, quando possível. A Microsoft sugere que o código existente que usa as APIs herdadas seja reescrito para usar as novas APIs, se possível.]

O MCI define quatro classificações de comando: sistema, obrigatório, básico e estendido. A lista a seguir descreve estas classificações de comando:

  • Os comandos do sistema são tratados diretamente pelo MCI, e não pelo driver.
  • Os comandos necessários são manipulados pelo driver. Todos os drivers MCI devem dar suporte aos comandos e sinalizadores necessários.
  • Comandos básicos (ou comandos opcionais) são usados por alguns dispositivos. Se um dispositivo der suporte a um comando básico, ele deverá dar suporte a um conjunto definido de sinalizadores para esse comando.
  • Os comandos estendidos são específicos para um tipo de dispositivo ou driver. Os comandos estendidos incluem comandos, como os comandos put (MCI_PUT) e where (MCI_WHERE) para os tipos de dispositivo digitalvideo e overlay, e extensões para comandos existentes (como o sinalizador "stretch" do comando status (MCI_STATUS) para o tipo de dispositivo de sobreposição).

Embora o sistema e os comandos necessários sejam o conjunto de comandos mínimo para qualquer driver MCI, os comandos básicos e estendidos não têm suporte de todos os drivers. Seu aplicativo sempre pode usar comandos do sistema e necessários e seus sinalizadores, mas se precisar usar um comando ou sinalizador básico ou estendido, ele deve primeiro consultar o driver usando o comando capability (MCI_GETDEVCAPS). As seções a seguir resumem os comandos específicos em cada categoria.

Comandos do sistema

O MCI processa os comandos do sistema a seguir diretamente, em vez de passá-los para dispositivos MCI.

String Mensagem Descrição
Quebrar MCI_BREAK Define uma tecla de interrupção para um dispositivo MCI.
Sysinfo MCI_SYSINFO Retorna informações sobre dispositivos MCI.

 

Comandos necessários

Todos os dispositivos MCI dão suporte aos comandos necessários a seguir.

String Mensagem Descrição
Capacidade MCI_GETDEVCAPS Obtém os recursos de um dispositivo.
Perto MCI_CLOSE Fecha o dispositivo.
Informação MCI_INFO Obtém informações textuais de um dispositivo.
open MCI_OPEN Inicializa o dispositivo.
Status MCI_STATUS Obtém status informações do dispositivo. Alguns dos sinalizadores desse comando não são necessários, portanto, também é um comando básico.

 

Os dispositivos também devem dar suporte a um conjunto padrão de sinalizadores de comando para os comandos necessários.

Comandos básicos

A lista a seguir resume os comandos básicos. O uso desses comandos por um dispositivo MCI é opcional.

String Mensagem Descrição
carga MCI_LOAD Carrega dados de um arquivo.
Pausa MCI_PAUSE Para de jogar. A reprodução ou a gravação podem ser retomadas na posição atual.
jogar MCI_PLAY Inicia a transmissão de dados de saída.
Registro MCI_RECORD Inicia a gravação de dados de entrada.
Currículo MCI_RESUME Retoma a reprodução ou a gravação em um dispositivo em pausa.
Salvar MCI_SAVE Salva dados em um arquivo de disco.
Procurar MCI_SEEK Busca para frente ou para trás.
Definir MCI_SET Define o estado operacional do dispositivo.
Status MCI STATUS Obtém status informações sobre o dispositivo. Esse também é um comando obrigatório; Como alguns de seus sinalizadores não são necessários, ele também está listado aqui. (Os itens opcionais dão suporte a dispositivos que usam mídia linear com posições identificáveis.)
Parar MCI_STOP Para de jogar.

 

Se um driver der suporte a um comando básico, ele também deverá dar suporte a um conjunto padrão de sinalizadores para o comando.

Comandos Estendidos

Alguns dispositivos MCI têm comandos adicionais ou adicionam sinalizadores aos comandos existentes. Embora alguns comandos estendidos se apliquem apenas a um driver de dispositivo específico, a maioria deles se aplica a todos os drivers de um tipo de dispositivo específico. Por exemplo, o conjunto de comandos para o tipo de dispositivo sequenciador estende o comando set (MCI_SET) para adicionar formatos de tempo necessários para sequenciadores MIDI.

Você não deve assumir que o dispositivo dá suporte aos comandos ou sinalizadores estendidos. Você pode usar o comando capability (MCI_GETDEVCAPS) para determinar se há suporte para um recurso específico e seu aplicativo deve estar pronto para lidar com valores retornados de "comando sem suporte" ou "função sem suporte".

Os comandos estendidos a seguir estão disponíveis com os tipos de dispositivo listados.

String Mensagem Tipos de dispositivos Descrição
CONFIGURAR MCI_CONFIGURE digitalvideo Exibe uma caixa de diálogo de configuração.
Cue MCI_CUE digitalvideo, waveaudio Prepara-se para reproduzir ou gravar.
Excluir MCI_DELETE Waveaudio Exclui um segmento de dados do arquivo de mídia.
escape MCI_ESCAPE videodisc Envia informações personalizadas para um dispositivo.
Congelar MCI_FREEZE overlay Desabilita a aquisição de vídeo para o buffer de quadros.
Colocar MCI PUT digitalvideo, overlay Define as janelas de origem, destino e quadro.
Perceber MCI_REALIZE digitalvideo Instrui o dispositivo a selecionar e realizar sua paleta em um contexto de dispositivo da janela exibida.
Setaudio MCI_ SETAUDIO digitalvideo Define parâmetros de áudio para vídeo.
setvideo MCI_ SETVIDEO digitalvideo Define parâmetros de vídeo.
signal MCI_SIGNAL digitalvideo Identifica uma posição especificada com um sinal.
Spin MCI_SPIN videodisc Inicia a rotação do disco ou impede a rotação do disco.
Passo MCI_STEP digitalvideo, videodisc Etapas para executar um ou mais quadros para frente ou inverter.
Descongelar MCI_UNFREEZE overlay Permite que o buffer de quadros adquira dados de vídeo.
Atualização MCI_UPDATE digitalvideo Repinta o quadro atual no contexto do dispositivo.
Onde MCI WHERE digitalvideo, overlay Obtém o retângulo que especifica a área de origem, destino ou quadro.
Janela MCI_WINDOW digitalvideo, overlay Controla a janela de exibição.