XDspConnect
Establece una conexión con el servidor de hardware, crea una instancia de cliente de XDSP y asigna los recursos necesarios para el procesamiento. Hay un límite global de 8 clientes de XDSP activos simultáneamente.Sintaxis
Parámetros
baseBuffer _In_Tipo: float* Búfer contiguo que asigna un autor de llamada de XDSP para usarlo para pasar los datos de entrada y recuperar los datos de salida. Para obtener más detalles, consulte la sección Comentarios a continuación. baseBufferLength _In_
Tipo: uint32_t Longitud del baseBuffer, en bytes. Esta longitud debe ser de al menos 64 KB y no más de 500 MB. aggregateImpulseResponseInSeconds _In_
Tipo: uint32_t Representa la duración total de la duración de todas las respuestas al impulso individuales que se activarán simultáneamente en este cliente. aggregateImpulseResponseInSeconds debe establecerse en un valor mayor que cero para XDspProcessType::Convolution; de lo contrario, debe ser cero. Hay un límite global de 128 segundos de respuesta al impulso agregada entre todos los clientes de XDSP. handle _Outptr_
Tipo: XDspClientHandle* Identificador de un cliente de XDSP que debe usarse para activar secuencias mediante XDspActivate y desconectar el cliente del servidor de hardware mediante XDspDisconnect. Puede haber un máximo de 256 secuencias activas en un momento dado para todos los XDSPClientHandles.
Valor devuelto
Tipo: HRESULT Si el método se ejecuta correctamente, devuelve S_OK. Si el método falla, devuelve uno de los siguientes códigos (lista parcial):Comentarios
Si la llamada se realiza correctamente, el autor de la llamada puede usar el baseBuffer para pasar los datos de entrada y recuperar los datos de salida de la secuencia mediante los parámetros de XDspCommand. Si se usan envolventes, este búfer también debe tener en cuenta los búferes para almacenar los parámetros de la envolvente. Consulte Información general de las envolventes mediante la API de XDSP para obtener más información sobre las envolventes. Se debe llamar a esta función antes de activar secuencias de XDSP para registrar un fragmento grande de memoria suficiente para contener varias secuencias de audio completas para usarlas como entrada, varios búferes de salida para todas las secuencias de XDSP que se activarán mediante XDspActivate y varios búferes multiplicadores de bloques que pueden usarse como parte de XDspCommand para el tipo de procesamiento XDspProcessType::ForwardFourierTransform. Tenga en cuenta los requisitos de tamaño mínimo y máximo para este búfer, como se ha indicado anteriormente. Si esta llamada se realiza correctamente, todas las secuencias de XDSP pueden acceder a cualquier parte de este fragmento de memoria. Esta memoria debe asignarse mediante XMemAlloc() con estos atributos: XALLOC_MEMTYPE_PHYSICAL_CACHEABLE, XALLOC_PAGESIZE_64KB, XALLOC_ALIGNMENT_64K Estos atributos deben establecerse mediante MAKE_XALLOC_ATTRIBUTES(). Un ejemplo de esto es el siguiente:Requisitos
Encabezado: XDspAudio.h Biblioteca: Chad.lib Plataformas compatibles: XBOX Series X|SDocumentación conceptual
- Información general de las envolventes de XDSP
- Información general de una convolución de secuencia única con envolvente mediante la API de XDSP
- Información general de una convolución de secuencia única mediante la API de XDSP
- Información general de XDSP
Consulte también
XDSPXDspConnectWithMaximumStreamLimit
XDspDisconnect
Errores de XDSP
Información general de una convolución de secuencia única mediante la API de XDSP
Información general de una FFT/IFFT de secuencia única mediante la API de XDSP
Información general de una convolución de secuencia única con envolvente mediante la API de XDSP
