Referencia de DDI de dispositivos de audio
Información general sobre la tecnología de referencia de DDI de dispositivos de audio.
Para desarrollar la referencia de DDI de dispositivos de audio, necesita estos encabezados:
- audiomediatype.h
- audioenginebaseapo.h
- audioengineextensionapo.h
- baseaudioprocessingobject.h
- dmusics.h
- msapofxproxy.h
Para obtener instrucciones de programación para esta tecnología, consulte:
Enumeraciones
APO_FLAG La enumeración APO_FLAG define constantes que un objeto de procesamiento de audio (APO) usa como marcas. |
APO_LOG_LEVEL Especifica el nivel de un evento de APO registrado con IAudioProcessingObjectLoggingService::ApoLog. |
APO_NOTIFICATION_TYPE Especifica el tipo de un APO_NOTIFICATION. |
AUDIO_SYSTEMEFFECT_STATE Especifica el estado de un efecto de audio objeto de procesamiento de audio (sAPO) de efectos del sistema. |
KSPROPERTY_AUDIOEFFECTSDISCOVERY La enumeración KSPROPERTY_AUDIOEFFECTSDISCOVERY define una constante que usa la lista de objetos de procesamiento de audio (API). |
Functions
AcceptInput Proporciona entrada al APO en una de sus entradas auxiliares. |
Activar El método Activate habilita o deshabilita el dispositivo de audio bajo control de programa. |
Activar El método Activate activa o desactiva el receptor del sintetizador. |
AddAuxiliaryInput Agrega una entrada auxiliar al APO y proporciona parámetros de inicialización. |
AERT_Allocate La función de utilidad AERT_Allocate asigna y bloquea un segmento de memoria para su uso por parte de objetos de procesamiento de audio. |
AERT_Free La función de utilidad AERT_Free libera (libera) memoria bloqueada por la función AERT_Allocate, para usarla por los objetos de procesamiento de audio para procesar datos de audio. |
ApoLog Registra un evento de APO. |
APOProcess El método APOProcess hace que el APO realice un paso de procesamiento. |
AssignChannelToBuses AssignChannelToBuses no es compatible y puede modificarse o no estar disponible en el futuro. |
CalcInputFrames El método CalcInputFrames devuelve el número de fotogramas de entrada que requiere un APO para generar un número determinado de fotogramas de salida. |
CalcOutputFrames El método CalcOutputFrames devuelve el número de fotogramas de salida que requiere un APO para un número determinado de fotogramas de entrada. |
Cerrar El método Close cierra un "puerto" de DirectMusic, que es un término de DirectMusic para un dispositivo que envía o recibe datos de música. |
Confirmar Una vez realizado un cambio, este método guarda los cambios. |
CreateAudioMediaType La función CreateAudioMediaType usa el formato especificado por el autor de la llamada para crear un objeto de tipo multimedia que describa el formato de audio. |
CreateAudioMediaTypeFromUncompressedAudioFormat La función CreateAudioMediaTypeFromUncompressedAudioFormat usa la información proporcionada en la estructura UNCOMPRESSEDAUDIOFORMAT para crear un objeto de tipo multimedia que describa el formato de audio. |
Descargar El método Download descarga una definición de onda o instrumento en el sintetizador. |
GetApoNotificationRegistrationInfo Llamado por el sistema para permitir que los clientes se registren para recibir devoluciones de llamada de notificación para el punto de conexión de APO y las notificaciones de efecto del sistema. |
GetAppend El método GetAppend genera el número de muestras de onda adicionales que el "puerto" directMusic debe haber anexado al final de un búfer de descarga. |
GetAt Obtiene una clave de propiedad de la matriz de propiedades de un elemento. |
GetAudioFormat El método GetAudioFormat devuelve la estructura WAVEFORMATEX para el formato de datos de audio. |
GetChannelPriority El método GetChannelPriority genera la prioridad de un canal MIDI. |
GetControllableSystemEffectsList Implementado por efectos del sistema Objeto de procesamiento de audio (sAPO) efectos de audio para permitir al autor de la llamada obtener la lista actual de efectos. |
GetCount Este método devuelve un recuento del número de propiedades adjuntas al archivo. |
GetDesiredBufferSize El método GetDesiredBufferSize recupera el tamaño de búfer preferido del sintetizador, expresado en muestras. |
GetEffectsList El método GetEffectsList se usa para recuperar la lista de efectos de procesamiento de audio que están activos actualmente y almacena un evento que se indicará si cambia la lista. |
GetFormat El método GetFormat recupera una representación IAudioMediaType de un formato personalizado. |
GetFormat El método GetFormat recupera información sobre el formato de onda. |
GetFormatCount El método GetFormatCount recupera el número de formatos personalizados admitidos por el objeto de procesamiento de audio (sAPO) de efectos del sistema. |
GetFormatRepresentation El método GetFormatRepresentation recupera una representación de cadena del formato personalizado para que se pueda mostrar en una interfaz de usuario. |
GetInputChannelCount GetInputChannelCount devuelve el recuento de canales de entrada (ejemplos por fotograma) para este APO. |
GetLatency El método GetLatency devuelve la latencia de este APO. La latencia es la cantidad de tiempo que tarda un fotograma en recorrer el paso de procesamiento de un APO. |
GetLatencyClock El método GetLatencyClock recupera una referencia a la interfaz IReferenceClock (descrita en la documentación Microsoft Windows SDK) del objeto de reloj de referencia que realiza un seguimiento del tiempo de combinación actual. |
GetLatencyClock El método GetLatencyClock recupera el reloj de latencia, que mide el progreso de la secuencia de audio de salida. |
GetPortCaps El método GetPortCaps recupera las funciones de un "puerto" de DirectMusic, que es un término de DirectMusic para un dispositivo que envía o recibe datos de música. |
GetRealTimeWorkQueue Obtiene el identificador de una cola de trabajo que el APO puede usar para programar tareas que deben ejecutarse en una prioridad en tiempo real. |
GetRegistrationProperties GetRegistrationProperties devuelve las propiedades de registro del objeto de procesamiento de audio (APO). |
GetRunningStats El método GetRunningStats recupera información actual sobre el estado del sintetizador para que una aplicación pueda saber cómo funciona el sintetizador. |
GetUncompressedAudioFormat IAudioMediaType::GetUncompressedAudioFormat devuelve información sobre el formato de datos de audio. |
GetValue Este método recupera los datos de una propiedad específica. |
GetVoiceState GetVoiceState no es compatible y puede modificarse o no estar disponible en el futuro. |
HandleNotification Llamado por el sistema para notificar a los clientes los cambios en los puntos de conexión de APO o los efectos del sistema. |
Init El método Init inicializa el objeto synth-sink. |
Inicialización El método Initialize inicializa el APO y admite datos de longitud variable. |
IsCompressedFormat El método IsCompressedFormat determina si el formato de datos de audio es un formato comprimido. |
IsEqual El método IsEqual compara dos tipos de medios y determina si son idénticos. |
IsInputFormatSupported Comprueba que el APO admite un formato de entrada auxiliar específico. |
IsInputFormatSupported Este método negocia con el motor de audio de Windows Vista para establecer un formato de datos para la secuencia de datos de audio. |
IsOutputFormatSupported El método IsOutputFormatSupported se usa para comprobar que se admite un formato de salida específico. |
LockForProcess El método LockForProcess se usa para comprobar que el APO está bloqueado y listo para procesar los datos. |
Abrir El método Open abre un sintetizador de DirectMusic "port". |
PlayBuffer El método PlayBuffer descarga una secuencia de mensajes MIDI en el sintetizador. |
PlayVoice PlayVoice no es compatible y puede modificarse o no estar disponible en el futuro. |
Actualizar La actualización no es compatible y puede modificarse o no estar disponible en el futuro. |
RefTimeToSample El método RefTimeToSample convierte una hora de referencia en una hora de ejemplo. |
RemoveAuxiliaryInput Quita una entrada auxiliar del APO. |
Representar El receptor de synth llama al método Render para representarlo en un búfer de la secuencia de audio. |
Reset El método Reset restablece el APO a su estado original. Este método no provoca ningún cambio en los objetos de conexión que están conectados a la entrada o a la salida del APO. |
SampleToRefTime El método SampleToRefTime convierte una hora de ejemplo en una hora de referencia. |
SetAudioDeviceModulesManager Lo llama el sistema para pasar una instancia de IAudioDeviceModulesManager a objetos de procesamiento de audio (API) que implementan la interfaz IAudioDeviceModulesClient . |
SetAudioSystemEffectState Implementado por efectos del sistema Objeto de procesamiento de audio (sAPO) efectos de audio para permitir que el autor de la llamada establezca el estado de los efectos. |
SetChannelPriority El método SetChannelPriority establece la prioridad de un canal MIDI. |
SetDirectSound El método SetDirectSound conecta el receptor del sintetizador con un objeto DirectSound existente y un búfer de DirectSound. |
SetMasterClock El método SetMasterClock proporciona al sintetizador un origen de hora maestro, que el sintetizador requiere para sincronizarse con el resto de DirectMusic. |
SetMasterClock El método SetMasterClock proporciona el receptor de synth con un origen de hora maestro, que es necesario para la sincronización con el resto de DirectMusic. |
SetNumChannelGroups El método SetNumChannelGroups indica al sintetizador que establezca su número de grupos de canales en un nuevo valor. |
SetSynthSink El método SetSynthSink establece la conexión del sintetizador al receptor de onda. |
SetValue Este método establece un valor de propiedad o reemplaza o quita un valor existente. |
StopVoice StopVoice no es compatible y puede modificarse o no estar disponible en el futuro. |
Descargar El método Unload descarga un recurso DLS (datos de forma de onda o de articulación para un instrumento MIDI) descargado previamente por una llamada a IDirectMusicSynth::D ownload. |
UnlockForProcess El método UnlockForProcess libera el bloqueo impuesto en el APO por el método LockForProcess. |
Interfaces
IApoAcousticEchoCancellation Esta interfaz la implementan las API para habilitar escenarios de cancelación de eco acústico (AEC). |
IApoAuxiliaryInputConfiguration Proporciona métodos que las API pueden implementar para que el motor de audio pueda agregar y quitar flujos de entrada auxiliares. |
IApoAuxiliaryInputRT Interfaz segura en tiempo real que se usa para controlar las entradas auxiliares de un APO. |
IAudioDeviceModulesClient Los objetos de procesamiento de audio (APO) implementan esta interfaz para obtener una referencia a una instancia de IAudioDeviceModulesManager . |
IAudioMediaType La interfaz IAudioMediaType expone métodos que permiten a un sAPO obtener información que se usa para negociar con el motor de audio para el formato de datos de audio adecuado. |
IAudioProcessingObject Los objetos de procesamiento de audio (sAPOs) de efectos del sistema se usan normalmente en subprocesos de proceso en tiempo real o a los que se llama desde subprocesos de proceso en tiempo real. |
IAudioProcessingObjectConfiguration La interfaz IAudioProcessingObjectConfiguration se usa para configurar el APO. Esta interfaz usa sus métodos para bloquear y desbloquear el APO para su procesamiento. |
IAudioProcessingObjectLoggingService Representa un servicio de registro para las API. |
IAudioProcessingObjectNotifications Implementado por los clientes para registrarse y recibir notificaciones comunes relacionadas con audio para el punto de conexión de APO y las notificaciones de efectos del sistema. |
IAudioProcessingObjectRT Esta interfaz puede funcionar en modo en tiempo real y sus métodos se pueden llamar subprocesos de procesamiento en tiempo real. |
IAudioProcessingObjectRTQueueService Representa un servicio de cola de trabajo en tiempo real para las API. |
IAudioSystemEffects La interfaz IAudioSystemEffects usa los métodos básicos que se heredan de IUnknown y debe implementar un método Initialize. |
IAudioSystemEffects2 La interfaz IAudioSystemEffects2 se introdujo con Windows 8.1 para recuperar información sobre los objetos de procesamiento en un modo determinado. |
IAudioSystemEffects3 Implementado por clientes que requieren que se pase una estructura APOInitSystemEffects3 al método IAudioProcessingObject::Initialize. |
IAudioSystemEffectsCustomFormats La interfaz IAudioSystemEffectsCustomFormats es compatible con Windows Vista y versiones posteriores de Windows. |
IDirectMusicSynth DirectMusicSynth usa la interfaz IDirectMusicSynth para comunicarse con sintetizadores en modo usuario. |
IDirectMusicSynth8 IDirectMusicSynth8 no compatible y puede modificarse o no estar disponible en el futuro. |
IDirectMusicSynthSink La interfaz IDirectMusicSynthSink ahora está en gran medida obsoleta y solo es compatible con versiones de DirectMusic antes de DirectX 8. |
IPropertyStore Esta interfaz expone métodos usados para enumerar y manipular valores de propiedad. |
Estructuras
APO_NOTIFICATION Representa una notificación para un cambio en un punto de conexión de APO o efectos del sistema. |
APO_NOTIFICATION_DESCRIPTOR Especifica una notificación de APO solicitada. |
APO_REG_PROPERTIES IAudioProcessingObject::GetRegistrationProperties usa la estructura APO_REG_PROPERTIES para devolver las propiedades de registro de un objeto de procesamiento de audio (APO). |
APOInitBaseStruct La estructura APOInitBaseStruct es el encabezado de inicialización base que debe preceder a otros datos de inicialización en IAudioProcessingObject::Initialize. |
APOInitSystemEffects La estructura APOInitSystemEffects se pasa al APO de efectos del sistema para la inicialización. |
APOInitSystemEffects2 La estructura APOInitSystemEffects2 se introdujo con Windows 8.1, para que sea posible proporcionar contexto de inicialización adicional al objeto de procesamiento de audio (APO) para la inicialización. |
APOInitSystemEffects3 Proporciona parámetros de inicialización de APO, ampliando APOInitSystemEffects2 para agregar la capacidad de especificar un proveedor de servicios para el registro. |
AUDIO_ENDPOINT_PROPERTY_CHANGE_APO_NOTIFICATION_DESCRIPTOR Especifica una notificación de APO de cambio de propiedad de punto de conexión. |
AUDIO_ENDPOINT_PROPERTY_CHANGE_NOTIFICATION Representa una notificación de APO de cambio de propiedad. |
AUDIO_ENDPOINT_VOLUME_APO_NOTIFICATION_DESCRIPTOR Especifica una notificación de APO de volumen de punto de conexión. |
AUDIO_ENDPOINT_VOLUME_CHANGE_NOTIFICATION Representa una notificación de APO de cambio de volumen de punto de conexión de audio. |
AUDIO_SYSTEMEFFECT Representa un efecto de audio del objeto de procesamiento de audio (sAPO) de efectos del sistema. |
AUDIO_SYSTEMEFFECTS_PROPERTY_CHANGE_NOTIFICATION Representa una notificación de APO de efecto de audio del sistema. |
DMUS_VOICE_STATE DMUS_VOICE_STATE no se admite y puede modificarse o no estar disponible en el futuro. |
KSP_PINMODE La estructura KSP_PINMODE especifica la propiedad pin y los modos de procesamiento de audio admitidos para un generador de patillas. |
MDEVICECAPSEX La estructura MDEVICECAPSEX contiene información de funcionalidad del dispositivo para controladores de dispositivo de Plug and Play (PnP). |
MIDIOPENDESC La estructura MIDIOPENDESC es una estructura rellenada por el cliente que proporciona información sobre cómo abrir un dispositivo MIDI. |
UNCOMPRESSEDAUDIOFORMAT La estructura UNCOMPRESSEDAUDIOFORMAT especifica la velocidad de fotogramas, la máscara de canal y otros atributos del formato de datos de audio sin comprimir. |
WAVEFORMATEX La estructura WAVEFORMATEX especifica el formato de datos de una secuencia de audio de onda. |