comando MCI_SET

Observação

Comunicação sem preconceitos A Microsoft dá suporte a um ambiente diversificado e incluso. Neste documento, há referências à palavra "subordinado". O Guia de Estilo da Microsoft para comunicações Bias-Free reconhece isso como uma palavra de exclusão. Essa redação é usada, pois é atualmente a redação usada dentro dos comandos. Para consistência, este documento contém essa palavra. Quando essa palavra for alterada nos comandos, corrigiremos este documento para estar em alinhamento.

O comando MCI_SET define as informações do dispositivo. Áudio de CD, vídeo digital, sequenciador MIDI, VCR, videodisc, sobreposição de vídeo e dispositivos de áudio de forma de onda reconhecem esse comando.

Para enviar esse comando, chame a função mciSendCommand com os parâmetros a seguir.

MCIERROR mciSendCommand(
  MCIDEVICEID wDeviceID, 
  MCI_SET, 
  DWORD dwFlags, 
  (DWORD) (LPMCI_SET_PARMS) lpSet
);

Parâmetros

wDeviceID

Identificador de dispositivo do dispositivo MCI que deve receber a mensagem de comando.

dwFlags

MCI_NOTIFY, MCI_WAIT ou, para dispositivos de vídeo digital e VCR, MCI_TEST. Para obter informações sobre esses sinalizadores, consulte Os Sinalizadores de Espera, Notificação e Teste.

lpSet

Ponteiro para uma estrutura MCI_SET_PARMS . (Dispositivos com conjuntos de comandos estendidos podem substituir essa estrutura por uma estrutura específica do dispositivo.)

Valor Retornado

Retornará zero se tiver êxito ou um erro, caso contrário.

Comentários

Os seguintes sinalizadores adicionais se aplicam a todos os dispositivos que dão suporte a MCI_SET:

MCI_SET_AUDIO

Um número de canal de áudio é incluído no membro dwAudio da estrutura identificada por lpSet. Esse sinalizador deve ser usado com MCI_SET_ON ou MCI_SET_OFF. Use uma das seguintes constantes para indicar o número do canal:

MCI_SET_AUDIO_ALL

Todos os canais de áudio.

MCI_SET_AUDIO_LEFT

Canal esquerdo.

MCI_SET_AUDIO_RIGHT

Canal direito.

MCI_SET_DOOR_CLOSED

Fecha a capa de mídia (se houver).

MCI_SET_DOOR_OPEN

Abre a capa de mídia (se houver).

MCI_SET_OFF

Desabilita o canal de áudio ou vídeo especificado.

MCI_SET_ON

Habilita o canal de áudio ou vídeo especificado.

MCI_SET_TIME_FORMAT

Um parâmetro de formato de hora é incluído no membro dwTimeFormat da estrutura identificada por lpSet. Os seguintes sinalizadores são usados com este sinalizador:

MCI_FORMAT_BYTES

Em um formato de dados PCM (Pulse Code Modulation), altera a descrição do membro de hora para bytes de entrada ou saída. Reconhecido pelo tipo de dispositivo waveaudio .

MCI_FORMAT_FRAMES

Os comandos subsequentes usarão quadros. Reconhecido pelos tipos de dispositivo digitalvideo, vcr e videodisc .

MCI_FORMAT_HMS

Altera o formato de tempo para horas, minutos e segundos. Reconhecido pelos tipos de dispositivo vcr e videodisc .

MCI_FORMAT_MILLISECONDS

Altera o formato de hora para milissegundos. Reconhecido por todos os tipos de dispositivo.

MCI_FORMAT_MSF

Altera o formato de tempo para minutos, segundos e quadros. Reconhecido pelos tipos de dispositivo cdaudio e vcr .

MCI_FORMAT_SAMPLES

Altera o formato de hora para exemplos de entrada ou saída. Reconhecido pelo tipo de dispositivo waveaudio .

MCI_FORMAT_SMPTE_24, MCI_FORMAT_SMPTE_25 e MCI_FORMAT_SMPTE_30

Define o formato de hora como 24, 25 e 30 quadros SMPTE (Society of Motion Picture and Television Engineers), respectivamente. Reconhecido pelos tipos de dispositivo de sequenciador e vcr .

MCI_FORMAT_SMPTE_30DROP

Define o formato de hora como SMPTE de 30 quadros suspensos. Reconhecido pelos tipos de dispositivo de sequenciador e vcr .

MCI_FORMAT_TMSF

Altera o formato de tempo para faixas, minutos, segundos e quadros. (O MCI usa números de faixa contínuos.) Reconhecido pelos tipos de dispositivo cdaudio e vcr .

MCI_SET_VIDEO

Define o sinal de vídeo ativado ou desativado. Esse sinalizador deve ser usado com MCI_SET_ON ou MCI_SET_OFF. Dispositivos que não têm vídeo retornam MCIERR_UNSUPPORTED_FUNCTION.

Os seguintes sinalizadores adicionais são usados com o tipo de dispositivo digitalvideo :

MCI_DGV_SET_FILEFORMAT

Um parâmetro de formato de arquivo é incluído no membro dwFileFormat da estrutura identificada por lpSet. Para dispositivos de vídeo digital, o formato de arquivo é usado para salvar ou capturar comandos. Se omitido, isso pode usar como padrão um formato definido pelo driver de dispositivo. Se o formato de arquivo especificado entrar em conflito com o algoritmo e a qualidade selecionados no momento, eles serão alterados para os padrões para o formato de arquivo. As seguintes constantes de formato de arquivo são definidas:

MCI_DGV_FF_AVI

Formato AVI.

MCI_DGV_FF_AVSS

Formato AVSS.

MCI_DGV_FF_DIB

Formato DIB.

MCI_DGV_FF_JFIF

Formato JFIF.

MCI_DGV_FF_JPEG

Formato JPEG.

MCI_DGV_FF_MPEG

Formato MPEG.

MCI_DGV_FF_RDIB

Formato DIB RLE.

MCI_DGV_FF_RJPEG

Formato RJPEG.

MCI_DGV_SET_SEEK_EXACTLY

Define o formato usado para posicionamento. Esse sinalizador deve ser usado com MCI_SET_ON ou MCI_SET_OFF. Se MCI_SET_ON for especificado, reproduzir ou gravar acessará com precisão o quadro especificado com o sinalizador MCI_FROM. Isso poderá adicionar algum atraso extra se o quadro solicitado não for um quadro-chave. Se MCI_SET_OFF for especificado, o dispositivo buscará uma imagem de quadro-chave que precede o quadro solicitado. Para alguns arquivos e dispositivos, esse pode ser o primeiro quadro do arquivo. O padrão para esse sinalizador é dependente do dispositivo.

MCI_DGV_SET_SPEED

Um parâmetro de velocidade é incluído no membro dwSpeed da estrutura identificada por lpSet. A velocidade é especificada como uma taxa entre a taxa de quadros nominal e a taxa de quadros desejada em que a taxa de quadros nominal é designada como 1000. A metade da velocidade é 500 e a velocidade dupla é 2000. O intervalo de velocidade permitido depende do dispositivo e, possivelmente, do arquivo também.

MCI_DGV_SET_STILL

Quando usado com MCI_DGV_SET_FILEFORMAT, MCI_SET define o formato de arquivo usado para comandos de captura.

Para dispositivos de vídeo digital, o parâmetro lpSet aponta para uma estrutura MCI_DGV_SET_PARMS .

Os seguintes sinalizadores adicionais são usados com o tipo de dispositivo sequenciador :

MCI_SEQ_FORMAT_SONGPTR

Define o formato de hora como unidades de ponteiro de música.

MCI_SEQ_SET_MASTER

Define o sequenciador como uma fonte de dados de sincronização e indica que o tipo de sincronização é especificado no membro dwMaster da estrutura identificada por lpSet. MCISEQ retorna MCIERR_UNSUPPORTED_FUNCTION. As seguintes constantes são definidas para o tipo de sincronização:

MCI_SEQ_MIDI

O sequenciador enviará dados de sincronização de formato MIDI.

MCI_SEQ_SMPTE

O sequenciador enviará dados de sincronização de formato SMPTE.

MCI_SEQ_NONE

O sequenciador não enviará dados de sincronização.

MCI_SEQ_SET_OFFSET

Altera o deslocamento SMPTE de uma sequência para o especificado pelo membro dwOffset da estrutura identificada por lpSet. Isso afeta apenas sequências com um tipo de divisão SMPTE.

MCI_SEQ_SET_PORT

Define a porta MIDI de saída de uma sequência como a especificada pelo identificador de dispositivo MIDI no membro dwPort da estrutura identificada por lpSet. O dispositivo fecha a porta anterior (se houver) e tenta abrir e usar a nova porta. Se falhar, ele retornará um erro e reabrirá a porta usada anteriormente (se houver). As seguintes constantes são definidas para as portas:

MCI_SEQ_NONE

Fecha a porta usada anteriormente (se houver). O sequenciador se comporta exatamente da mesma forma que se uma porta estivesse aberta, exceto que nenhuma mensagem MIDI é enviada.

MIDI_MAPPER

Define a porta aberta para o mapeador MIDI.

MCI_SEQ_SET_SLAVE

Define o sequenciador para receber dados de sincronização e indica que o tipo de sincronização é especificado no membro dwSlave da estrutura identificada por lpSet. MCISEQ retorna MCIERR_UNSUPPORTED_FUNCTION. As seguintes constantes são definidas para o tipo de sincronização:

MCI_SEQ_FILE

Define o sequenciador para receber dados de sincronização contidos no arquivo MIDI.

MCI_SEQ_MIDI

Define o sequenciador para receber dados de sincronização MIDI.

MCI_SEQ_NONE

Define o sequenciador para ignorar dados de sincronização em um fluxo MIDI.

MCI_SEQ_SMPTE

Define o sequenciador para receber dados de sincronização SMPTE.

MCI_SEQ_SET_TEMPO

Altera o tempo da sequência MIDI para o especificado pelo membro dwTempo da estrutura apontada por lpSet. Para sequências com o tipo de divisão PPQN, tempo é especificado em batidas por minuto; para sequências com o tipo de divisão SMPTE, tempo é especificado em quadros por segundo.

Para dispositivos de sequenciador, o parâmetro lpSet aponta para uma estrutura MCI_SEQ_SET_PARMS .

Os seguintes sinalizadores adicionais são usados com o tipo de dispositivo vcr :

MCI_VCR_SET_ASSEMBLE_RECORD

Define o dispositivo a ser registrado nos modos de montagem ou inserção (quando a montagem está desativada, a inserção está ativada e vice-versa). Use com um dos seguintes sinalizadores:

MCI_SET_ON

Define o registro de montagem ativado e desativa o registro de inserção. Grava todas as faixas de vídeo, áudio e código de tempo.

MCI_SET_OFF

Define o registro de montagem desativado e ativa o registro de inserção. Quando o registro de montagem está desativado, faixas individuais de vídeo, áudio e código de tempo podem ser selecionadas para gravação.

MCI_VCR_SET_CLOCK

O membro dwClock da estrutura identificada por lpSet contém a nova hora do relógio.

MCI_VCR_SET_COUNTER_FORMA

O membro dwCounterFormat da estrutura identificada por lpSet contém uma constante especificando o novo formato de tempo de contador a ser usado pelo contador de status. Para obter uma lista de constantes válidas, consulte MCI_SET_TIME_FORMAT na lista de sinalizadores adicionais para esse comando.

MCI_VCR_SET_COUNTER_VALUE

O membro dwCounterValue da estrutura identificada por lpSet contém o novo valor do contador.

MCI_VCR_SET_INDEX

O membro dwIndex da estrutura identificada por lpSet contém uma constante que indica o conteúdo da exibição na tela e deve ser um dos seguintes:

MCI_VCR_INDEX_COUNTER

Exibe o contador.

MCI_VCR_INDEX_DATE

Exibe a data.

MCI_VCR_INDEX_TIME

Exibe a hora.

MCI_VCR_INDEX_TIMECODE

Exibe o código de tempo.

Para obter mais informações, consulte o comando MCI_INDEX .

MCI_VCR_SET_PAUSE_TIMEOUT

O membro dwPauseTimeout da estrutura identificada por lpSet contém a duração máxima, em milissegundos, de um comando de pausa.

MCI_VCR_SET_POSTROLL_DURATION

O membro dwPostrollDuration da estrutura identificada por lpSet contém o comprimento da fita de vídeo, no formato de hora atual, necessário para frear o transporte vcr quando um comando de parada ou pausa é emitido.

MCI_VCR_SET_POWER

Define a energia ativada ou desativada. Deve ser usado com um dos seguintes sinalizadores:

MCI_SET_OFF

Desliga a energia.

MCI_SET_ON

Ativa a energia.

MCI_VCR_SET_PREROLL_DURATION

O membro dwPrerollDuration da estrutura identificada por lpSet contém o comprimento da fita de vídeo, no formato de tempo atual, necessário para estabilizar a saída do VCR.

MCI_VCR_SET_RECORD_FORMAT

O membro dwRecordFormat da estrutura identificada por lpSet contém uma constante que descreve a velocidade do registro, que deve ser uma das seguintes:

MCI_VCR_FORMAT_EP

Registros em velocidade lenta.

MCI_VCR_FORMAT_LP

Registros em velocidade média-lenta.

MCI_VCR_FORMAT_SP

Registros em velocidade padrão.

MCI_VCR_SET_SPEED

O membro dwSpeed da estrutura identificada por lpSet contém a nova configuração de velocidade, onde 1000 é velocidade normal, 2000 é velocidade dupla e 500 é meia velocidade e assim por diante.

MCI_VCR_SET_TAPE_LENGTH

O membro dwTapeLength da estrutura identificada por lpSet contém o novo comprimento da fita, desde que o comprimento da fita seja indetectável.

MCI_VCR_SET_TIME_MODE

O membro dwTimeMode da estrutura identificada por lpSet contém uma constante que indica o novo modo de tempo posicional. As seguintes constantes são válidas:

MCI_VCR_TIME_COUNTER

Força o dispositivo a usar o contador exclusivamente.

MCI_VCR_TIME_DETECT

Sempre que uma nova fita de vídeo é inserida no dispositivo ou o modo muda de não pronto para pronto, o dispositivo deve tentar determinar se há um código de tempo disponível na fita de vídeo. Se o código de tempo estiver disponível, use o timecode em todos os comandos subsequentes que especificam posições. Caso contrário, use o contador.

MCI_VCR_TIME_TIMECODE

Força o dispositivo a usar o timecode exclusivamente.

MCI_VCR_SET_TRACKING

Ajusta a velocidade do transporte de fita VCR com um ajuste fino e deve ser usado com um dos seguintes sinalizadores:

MCI_VCR_PLUS

Aumenta a velocidade de transporte de fita.

MCI_VCR_MINUS

Diminui a velocidade de transporte de fita.

MCI_VCR_RESET

Retorna o ajuste de acompanhamento para zero.

Para dispositivos VCR, o parâmetro lpSet aponta para uma estrutura MCI_VCR_SET_PARMS .

O seguinte sinalizador adicional é usado com o tipo de dispositivo videodisc :

MCI_VD_FORMAT_TRACK

Altera o formato de hora para faixas. O MCI usa números de controle contínuos.

Os seguintes sinalizadores adicionais são usados com o tipo de dispositivo waveaudio :

MCI_WAVE_INPUT

Define a entrada usada para gravação para o membro wInput da estrutura identificada por lpSet.

MCI_WAVE_OUTPUT

Define a saída usada para reprodução para o membro wOutput da estrutura identificada por lpSet.

MCI_WAVE_SET_ANYINPUT

Qualquer entrada de onda compatível com o formato atual pode ser usada para gravação.

MCI_WAVE_SET_ANYOUTPUT

Qualquer saída de onda compatível com o formato atual pode ser usada para reprodução.

MCI_WAVE_SET_AVGBYTESPERSEC

Define os bytes por segundo usados para reproduzir, gravar e salvar no membro nAvgBytesPerSec da estrutura identificada por lpSet.

MCI_WAVE_SET_BITSPERSAMPLE

Define os bits por exemplo usados para reproduzir, gravar e salvar no membro nBitsPerSample do formato de dados PCM identificado por lpSet.

MCI_WAVE_SET_BLOCKALIGN

Define o alinhamento do bloco usado para reproduzir, gravar e salvar no membro nBlockAlign da estrutura identificada por lpSet.

MCI_WAVE_SET_CHANNELS

O número de canais é indicado no membro nChannels da estrutura identificada por lpSet.

MCI_WAVE_SET_FORMATTAG

Define o tipo de formato usado para reproduzir, gravar e salvar no membro wFormatTag da estrutura identificada por lpSet. Especificar WAVE_FORMAT_PCM altera o formato para PCM.

MCI_WAVE_SET_SAMPLESPERSEC

Define os exemplos por segundo usados para reproduzir, gravar e salvar no membro nSamplesPerSec da estrutura identificada por lpSet.

Para dispositivos de áudio de forma de onda, o parâmetro lpSet aponta para uma estrutura MCI_WAVE_SET_PARMS .

Várias propriedades de dados waveform-audio são definidas quando o arquivo para armazenar os dados é criado. Essas propriedades descrevem como os dados são estruturados dentro do arquivo e não podem ser alterados quando a gravação é iniciada. A seguinte lista de sinalizadores identifica estas propriedades:

  • MCI_WAVE_SET_AVGBYTESPERSEC
  • MCI_WAVE_SET_BITSPERSAMPLE
  • MCI_WAVE_SET_BLOCKALIGN
  • MCI_WAVE_SET_CHANNELS
  • MCI_WAVE_SET_FORMATTAG
  • MCI_WAVE_SET_SAMPLESPERSEC

Requisitos

Requisito Valor
Cliente mínimo com suporte
Windows 2000 Professional [somente aplicativos da área de trabalho]
Servidor mínimo com suporte
Windows 2000 Server [somente aplicativos da área de trabalho]
Cabeçalho
Mmsystem.h (inclua Windows.h)

Confira também

MCI

Comandos MCI