Share via


Función waveInOpen (mmeapi.h)

La función waveInOpen abre el dispositivo de entrada de audio con forma de onda dado para la grabación.

Sintaxis

MMRESULT waveInOpen(
  LPHWAVEIN       phwi,
  UINT            uDeviceID,
  LPCWAVEFORMATEX pwfx,
  DWORD_PTR       dwCallback,
  DWORD_PTR       dwInstance,
  DWORD           fdwOpen
);

Parámetros

phwi

Puntero a un búfer que recibe un identificador que identifica el dispositivo de entrada de audio de forma de onda abierto. Use este identificador para identificar el dispositivo al llamar a otras funciones de entrada de audio de forma de onda. Este parámetro puede ser NULL si se especifica WAVE_FORMAT_QUERY para fdwOpen.

uDeviceID

Identificador del dispositivo de entrada de audio de forma de onda que se va a abrir. Puede ser un identificador de dispositivo o un identificador de un dispositivo de entrada de audio de forma de onda abierto. Puede usar la marca siguiente en lugar de un identificador de dispositivo.

Valor Significado
WAVE_MAPPER La función selecciona un dispositivo de entrada de audio de forma de onda capaz de grabar en el formato especificado.

pwfx

Puntero a una estructura WAVEFORMATEX que identifica el formato deseado para grabar datos de audio de forma de onda. Puede liberar esta estructura inmediatamente después de que waveInOpen devuelva.

dwCallback

Puntero a una función de devolución de llamada fija, un controlador de eventos, un identificador de una ventana o el identificador de un subproceso al que se llamará durante la grabación de audio de forma de onda para procesar mensajes relacionados con el progreso de la grabación. Si no se requiere ninguna función de devolución de llamada, este valor puede ser cero. Para obtener más información sobre la función de devolución de llamada, vea waveInProc.

dwInstance

Datos de instancia de usuario pasados al mecanismo de devolución de llamada. Este parámetro no se usa con el mecanismo de devolución de llamada de ventana.

fdwOpen

Marcas para abrir el dispositivo. Se definen los valores siguientes.

Valor Significado
CALLBACK_EVENT El parámetro dwCallback es un identificador de eventos.
CALLBACK_FUNCTION El parámetro dwCallback es una dirección de procedimiento de devolución de llamada.
CALLBACK_NULL Sin mecanismo de devolución de llamada. Esta es la configuración predeterminada.
CALLBACK_THREAD El parámetro dwCallback es un identificador de subproceso.
CALLBACK_WINDOW El parámetro dwCallback es un identificador de ventana.
WAVE_MAPPED_DEFAULT_COMMUNICATION_DEVICE Si se especifica esta marca y se WAVE_MAPPER el parámetro uDeviceID, la función abre el dispositivo de comunicación predeterminado.

Esta marca solo se aplica cuando uDeviceID es igual a WAVE_MAPPER.

Nota Requiere Windows 7
 
WAVE_FORMAT_DIRECT Si se especifica esta marca, el controlador ACM no realiza conversiones en los datos de audio.
WAVE_FORMAT_QUERY La función consulta al dispositivo para determinar si admite el formato especificado, pero no abre el dispositivo.
WAVE_MAPPED El parámetro uDeviceID especifica un dispositivo de audio con forma de onda al que se asignará el asignador de ondas.

Valor devuelto

Devuelve MMSYSERR_NOERROR si se ejecuta correctamente o si se produce un error. Entre los posibles valores de error se incluyen los siguientes.

Código devuelto Descripción
MMSYSERR_ALLOCATED
El recurso especificado ya está asignado.
MMSYSERR_BADDEVICEID
El identificador de dispositivo especificado está fuera del intervalo.
MMSYSERR_NODRIVER
No hay ningún controlador de dispositivo presente.
MMSYSERR_NOMEM
No se puede asignar o bloquear la memoria.
WAVERR_BADFORMAT
Se intentó abrir con un formato de audio de forma de onda no admitido.

Comentarios

Use la función waveInGetNumDevs para determinar el número de dispositivos de entrada de audio de forma de onda presentes en el sistema. El identificador de dispositivo especificado por uDeviceID varía de cero a uno menor que el número de dispositivos presentes. La constante WAVE_MAPPER también se puede usar como identificador de dispositivo.

Si decide tener una ventana o información de devolución de llamada de recepción de subprocesos, los siguientes mensajes se envían al procedimiento o subproceso de la ventana para indicar el progreso de la entrada de audio de forma de onda: MM_WIM_OPEN, MM_WIM_CLOSE y MM_WIM_DATA.

Si decide que una función reciba información de devolución de llamada, los siguientes mensajes se envían a la función para indicar el progreso de la entrada de audio de forma de onda: WIM_OPEN, WIM_CLOSE y WIM_DATA.

Requisitos

   
Cliente mínimo compatible Windows 2000 Professional [solo aplicaciones de escritorio]
Servidor mínimo compatible Windows 2000 Server [solo aplicaciones de escritorio]
Plataforma de destino Windows
Encabezado mmeapi.h (incluye Windows.h)
Library Winmm.lib
Archivo DLL Winmm.dll

Consulte también

Audio de forma de onda

Funciones de forma de onda