comando MCI_SET

Nota

Comunicación sin sesgos Microsoft admite un entorno diverso e inclusión. En este documento, hay referencias a la palabra "esclavo". La Guía de estilo de Microsoft para Bias-Free Communications lo reconoce como una palabra excluyente. Esta redacción se usa ya que actualmente es el uso de palabras dentro de los comandos. Para la coherencia, este documento contiene esta palabra. Cuando esta palabra se modifique en los comandos, corregiremos este documento para que esté en alineación.

El comando MCI_SET establece la información del dispositivo. Los dispositivos cd audio, digital-video, secuenciador MIDI, VCR, videodisc, video-overlay y waveform-audio reconocen este comando.

Para enviar este comando, llame a la función mciSendCommand con los parámetros siguientes.

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

Parámetros

wDeviceID

Identificador de dispositivo del dispositivo MCI que va a recibir el mensaje de comando.

dwFlags

MCI_NOTIFY, MCI_WAIT o, para dispositivos de vídeo digital y VCR, MCI_TEST. Para obtener información sobre estas marcas, vea Las marcas Wait, Notify y Test.

lpSet

Puntero a una estructura de MCI_SET_PARMS . (Los dispositivos con conjuntos de comandos extendidos pueden reemplazar esta estructura por una estructura específica del dispositivo).

Valor devuelto

Devuelve cero si es correcto o si se produce un error en caso contrario.

Comentarios

Las siguientes marcas adicionales se aplican a todos los dispositivos que admiten MCI_SET:

MCI_SET_AUDIO

Un número de canal de audio se incluye en el miembro dwAudio de la estructura identificada por lpSet. Esta marca debe usarse con MCI_SET_ON o MCI_SET_OFF. Use una de las siguientes constantes para indicar el número de canal:

MCI_SET_AUDIO_ALL

Todos los canales de audio.

MCI_SET_AUDIO_LEFT

Canal izquierdo.

MCI_SET_AUDIO_RIGHT

Canal derecho.

MCI_SET_DOOR_CLOSED

Cierra la portada del medio (si existe).

MCI_SET_DOOR_OPEN

Abre la portada del medio (si existe).

MCI_SET_OFF

Deshabilita el canal de audio o vídeo especificado.

MCI_SET_ON

Habilita el canal de audio o vídeo especificado.

MCI_SET_TIME_FORMAT

Un parámetro de formato de hora se incluye en el miembro dwTimeFormat de la estructura identificada por lpSet. Las marcas siguientes se usan con esta marca:

MCI_FORMAT_BYTES

Dentro de un formato de datos PCM (Modulación de código de pulso), cambia la descripción del miembro de hora a bytes para la entrada o salida. Reconocido por el tipo de dispositivo waveaudio .

MCI_FORMAT_FRAMES

Los comandos posteriores usarán marcos. Reconocido por los tipos de dispositivos digitalvideo, vcr y videodisc .

MCI_FORMAT_HMS

Cambia el formato de tiempo a horas, minutos y segundos. Reconocido por los tipos de dispositivo vcr y videodisc .

MCI_FORMAT_MILLISECONDS

Cambia el formato de hora a milisegundos. Reconocido por todos los tipos de dispositivo.

MCI_FORMAT_MSF

Cambia el formato de tiempo a minutos, segundos y fotogramas. Reconocido por los tipos de dispositivo cdaudio y vcr .

MCI_FORMAT_SAMPLES

Cambia el formato de hora a los ejemplos de entrada o salida. Reconocido por el tipo de dispositivo waveaudio .

MCI_FORMAT_SMPTE_24, MCI_FORMAT_SMPTE_25 y MCI_FORMAT_SMPTE_30

Establece el formato de tiempo en 24, 25 y 30 fotogramas SMPTE (Society of Motion Picture and Television Engineers), respectivamente. Reconocido por los tipos de dispositivo sequencer y vcr .

MCI_FORMAT_SMPTE_30DROP

Establece el formato de hora en 30 SMPTE de fotograma desplegable. Reconocido por los tipos de dispositivo sequencer y vcr .

MCI_FORMAT_TMSF

Cambia el formato de tiempo a las pistas, minutos, segundos y fotogramas. (MCI usa números de seguimiento continuos). Reconocido por los tipos de dispositivo cdaudio y vcr .

MCI_SET_VIDEO

Establece la señal de vídeo activada o desactivada. Esta marca debe usarse con MCI_SET_ON o MCI_SET_OFF. Los dispositivos que no tienen MCIERR_UNSUPPORTED_FUNCTION de devolución de vídeo.

Las siguientes marcas adicionales se usan con el tipo de dispositivo digitalvideo :

MCI_DGV_SET_FILEFORMAT

Un parámetro de formato de archivo se incluye en el miembro dwFileFormat de la estructura identificada por lpSet. En el caso de los dispositivos de vídeo digital, el formato de archivo se usa para guardar o capturar comandos. Si se omite, esto podría tener como valor predeterminado un formato definido por el controlador de dispositivo. Si el formato de archivo especificado entra en conflicto con el algoritmo y la calidad seleccionados actualmente, se cambian a los valores predeterminados para el formato de archivo. Se definen las siguientes constantes de formato de archivo:

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

Establece el formato utilizado para colocar. Esta marca debe usarse con MCI_SET_ON o MCI_SET_OFF. Si se especifica MCI_SET_ON, reproducir o grabar precisamente accede al marco especificado con la marca MCI_FROM. Esto puede agregar algún retraso adicional si el marco solicitado no es un fotograma clave. Si se especifica MCI_SET_OFF, el dispositivo buscará una imagen de fotograma clave que precede al marco solicitado. En algunos archivos y dispositivos, este podría ser el primer marco del archivo. El valor predeterminado de esta marca depende del dispositivo.

MCI_DGV_SET_SPEED

Un parámetro de velocidad se incluye en el miembro dwSpeed de la estructura identificada por lpSet. La velocidad se especifica como una relación entre la velocidad de fotograma nominal y la velocidad de fotograma deseada donde la velocidad nominal de fotogramas se designa como 1000. La media velocidad es de 500 y la velocidad doble es 2000. El intervalo de velocidad permitido depende del dispositivo y posiblemente también del archivo.

MCI_DGV_SET_STILL

Cuando se usa con MCI_DGV_SET_FILEFORMAT, MCI_SET establece el formato de archivo usado para los comandos de captura.

En el caso de los dispositivos de vídeo digital, el parámetro lpSet apunta a una estructura de MCI_DGV_SET_PARMS .

Las siguientes marcas adicionales se usan con el tipo de dispositivo secuenciador :

MCI_SEQ_FORMAT_SONGPTR

Establece el formato de hora en unidades de puntero de canción.

MCI_SEQ_SET_MASTER

Establece el secuenciador como origen de datos de sincronización e indica que el tipo de sincronización se especifica en el miembro dwMaster de la estructura identificada por lpSet. MCISEQ devuelve MCIERR_UNSUPPORTED_FUNCTION. Las siguientes constantes se definen para el tipo de sincronización:

MCI_SEQ_MIDI

El secuenciador enviará datos de sincronización de formato MIDI.

MCI_SEQ_SMPTE

El secuenciador enviará datos de sincronización de formato SMPTE.

MCI_SEQ_NONE

El secuenciador no enviará datos de sincronización.

MCI_SEQ_SET_OFFSET

Cambia el desplazamiento SMPTE de una secuencia a la especificada por el miembro dwOffset de la estructura identificada por lpSet. Esto solo afecta a las secuencias con un tipo de división SMPTE.

MCI_SEQ_SET_PORT

Establece el puerto MIDI de salida de una secuencia en la especificada por el identificador de dispositivo MIDI en el miembro dwPort de la estructura identificada por lpSet. El dispositivo cierra el puerto anterior (si existe) e intenta abrir y usar el nuevo puerto. Si se produce un error, devuelve un error y vuelve a abrir el puerto usado anteriormente (si existe). Las constantes siguientes se definen para los puertos:

MCI_SEQ_NONE

Cierra el puerto usado anteriormente (si existe). El secuenciador se comporta exactamente igual que si un puerto estuviera abierto, excepto que no se envía ningún mensaje MIDI.

MIDI_MAPPER

Establece el puerto abierto en el asignador MIDI.

MCI_SEQ_SET_SLAVE

Establece el secuenciador para recibir datos de sincronización e indica que el tipo de sincronización se especifica en el miembro dwSlave de la estructura identificada por lpSet. MCISEQ devuelve MCIERR_UNSUPPORTED_FUNCTION. Las siguientes constantes se definen para el tipo de sincronización:

MCI_SEQ_FILE

Establece el secuenciador para recibir los datos de sincronización contenidos en el archivo MIDI.

MCI_SEQ_MIDI

Establece el secuenciador para recibir datos de sincronización MIDI.

MCI_SEQ_NONE

Establece el secuenciador para omitir los datos de sincronización en una secuencia MIDI.

MCI_SEQ_SMPTE

Establece el secuenciador para recibir datos de sincronización de SMPTE.

MCI_SEQ_SET_TEMPO

Cambia el tempo de la secuencia MIDI a la especificada por el miembro dwTempo de la estructura a la que apunta lpSet. Para secuencias con tipo de división PPQN, el tempo se especifica en ritmos por minuto; para secuencias con tipo de división SMPTE, tempo se especifica en fotogramas por segundo.

En el caso de los dispositivos secuenciador, el parámetro lpSet apunta a una estructura de MCI_SEQ_SET_PARMS .

Las siguientes marcas adicionales se usan con el tipo de dispositivo vcr :

MCI_VCR_SET_ASSEMBLE_RECORD

Establece el dispositivo que se va a registrar en los modos de montaje o inserción (cuando el ensamblado está desactivado, la inserción está activada y viceversa). Use con una de las siguientes marcas:

MCI_SET_ON

Establece el registro ensamblado activado y desactiva la desactivación de la inserción de registros. Registra todas las pistas de vídeo, audio y código de tiempo.

MCI_SET_OFF

Establece el registro ensamblado desactivado y activa la inserción de registros. Cuando el ensamblado está desactivado, se pueden seleccionar pistas individuales de vídeo, audio y código de tiempo para la grabación.

MCI_VCR_SET_CLOCK

El miembro dwClock de la estructura identificada por lpSet contiene la nueva hora del reloj.

MCI_VCR_SET_COUNTER_FORMA

El miembro dwCounterFormat de la estructura identificada por lpSet contiene una constante que especifica el nuevo formato de tiempo de contador que va a usar el contador de estado. Para obtener una lista de constantes válidas, vea MCI_SET_TIME_FORMAT en la lista de marcas adicionales para este comando.

MCI_VCR_SET_COUNTER_VALUE

El miembro dwCounterValue de la estructura identificada por lpSet contiene el nuevo valor de contador.

MCI_VCR_SET_INDEX

El miembro dwIndex de la estructura identificada por lpSet contiene una constante que indica el contenido de la pantalla en pantalla y debe ser una de las siguientes:

MCI_VCR_INDEX_COUNTER

Muestra el contador.

MCI_VCR_INDEX_DATE

Muestra la fecha.

MCI_VCR_INDEX_TIME

Muestra la hora.

MCI_VCR_INDEX_TIMECODE

Muestra el código de tiempo.

Para obtener más información, consulte el comando MCI_INDEX .

MCI_VCR_SET_PAUSE_TIMEOUT

El miembro dwPauseTimeout de la estructura identificada por lpSet contiene la duración máxima, en milisegundos, de un comando pause.

MCI_VCR_SET_POSTROLL_DURATION

El miembro dwPostrollDuration de la estructura identificada por lpSet contiene la longitud de videotape, en el formato de hora actual, necesario para detener o pausar el transporte de VCR cuando se emite un comando stop o pause.

MCI_VCR_SET_POWER

Establece el encendido o apagado. Debe usarse con una de las marcas siguientes:

MCI_SET_OFF

Apaga la alimentación.

MCI_SET_ON

Activa la alimentación.

MCI_VCR_SET_PREROLL_DURATION

El miembro dwPrerollDuration de la estructura identificada por lpSet contiene la longitud de videotape, en el formato de hora actual, necesario para estabilizar la salida de VCR.

MCI_VCR_SET_RECORD_FORMAT

El miembro dwRecordFormat de la estructura identificada por lpSet contiene una constante que describe la velocidad del registro, que debe ser una de las siguientes:

MCI_VCR_FORMAT_EP

Registros a velocidad lenta.

MCI_VCR_FORMAT_LP

Registros a velocidad media lenta.

MCI_VCR_FORMAT_SP

Registros a velocidad estándar.

MCI_VCR_SET_SPEED

El miembro dwSpeed de la estructura identificada por lpSet contiene la nueva configuración de velocidad, donde 1000 es la velocidad normal, 2000 es doble velocidad, y 500 es media velocidad, etc.

MCI_VCR_SET_TAPE_LENGTH

El miembro dwTapeLength de la estructura identificada por lpSet contiene la nueva longitud de la cinta, siempre que no se detecte la longitud de la cinta.

MCI_VCR_SET_TIME_MODE

El miembro dwTimeMode de la estructura identificada por lpSet contiene una constante que indica el nuevo modo de tiempo posicional. Las constantes siguientes son válidas:

MCI_VCR_TIME_COUNTER

Obliga al dispositivo a usar contador exclusivamente.

MCI_VCR_TIME_DETECT

Cada vez que se inserta una nueva cinta de vídeo en el dispositivo o el modo cambia de no listo a listo, el dispositivo debe intentar determinar si hay código de tiempo disponible en la cinta de vídeo. Si el código de tiempo está disponible, use el código de tiempo en todos los comandos posteriores que especifiquen posiciones. De lo contrario, use el contador.

MCI_VCR_TIME_TIMECODE

Obliga al dispositivo a usar el código de tiempo exclusivamente.

MCI_VCR_SET_TRACKING

Ajusta la velocidad del transporte de cinta VCR con un ajuste fino y debe utilizarse con una de las marcas siguientes:

MCI_VCR_PLUS

Aumenta la velocidad de transporte de cintas.

MCI_VCR_MINUS

Disminuye la velocidad de transporte de cinta.

MCI_VCR_RESET

Devuelve el ajuste de seguimiento a cero.

En el caso de los dispositivos VCR, el parámetro lpSet apunta a una estructura de MCI_VCR_SET_PARMS .

La siguiente marca adicional se usa con el tipo de dispositivo videodisc :

MCI_VD_FORMAT_TRACK

Cambia el formato de hora a las pistas. MCI usa números de seguimiento continuos.

Las marcas adicionales siguientes se usan con el tipo de dispositivo waveaudio :

MCI_WAVE_INPUT

Establece la entrada utilizada para grabar en el miembro wInput de la estructura identificada por lpSet.

MCI_WAVE_OUTPUT

Establece la salida utilizada para reproducir en el miembro wOutput de la estructura identificada por lpSet.

MCI_WAVE_SET_ANYINPUT

Cualquier entrada de onda compatible con el formato actual se puede usar para la grabación.

MCI_WAVE_SET_ANYOUTPUT

Cualquier salida de onda compatible con el formato actual se puede usar para reproducir.

MCI_WAVE_SET_AVGBYTESPERSEC

Establece los bytes por segundo usados para reproducir, grabar y guardar en el miembro nAvgBytesPerSec de la estructura identificada por lpSet.

MCI_WAVE_SET_BITSPERSAMPLE

Establece los bits por muestra usados para reproducir, grabar y guardar en el miembro nBitsPerSample del formato de datos PCM identificado por lpSet.

MCI_WAVE_SET_BLOCKALIGN

Establece la alineación de bloques utilizada para reproducir, grabar y guardar en el miembro nBlockAlign de la estructura identificada por lpSet.

MCI_WAVE_SET_CHANNELS

El número de canales se indica en el miembro nChannels de la estructura identificada por lpSet.

MCI_WAVE_SET_FORMATTAG

Establece el tipo de formato utilizado para reproducir, grabar y guardar en el miembro wFormatTag de la estructura identificada por lpSet. Al especificar WAVE_FORMAT_PCM cambia el formato a PCM.

MCI_WAVE_SET_SAMPLESPERSEC

Establece las muestras por segundo usadas para reproducir, grabar y guardar en el miembro nSamplesPerSec de la estructura identificada por lpSet.

En el caso de los dispositivos de audio con forma de onda, el parámetro lpSet apunta a una estructura de MCI_WAVE_SET_PARMS .

Se definen varias propiedades de datos de audio de forma de onda cuando se crea el archivo para almacenar los datos. Estas propiedades describen cómo se estructuran los datos dentro del archivo y no se pueden cambiar una vez que comienza la grabación. La siguiente lista de marcas identifica estas propiedades:

  • 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 Value
Cliente mínimo compatible
Windows 2000 Professional [solo aplicaciones de escritorio]
Servidor mínimo compatible
Windows 2000 Server [solo aplicaciones de escritorio]
Encabezado
Mmsystem.h (incluye Windows.h)

Consulte también

MCI

Comandos de MCI