Este tema describe las API de C++, los callbacks y los tipos de datos de AOQ Client SDK para Windows.
AoqClientEngine e informa eventos asíncronos a través de la clase abstracta AoqEngineEventListener. Todas las definiciones de tipos residen en el espacio de nombres AoqClientSdk, y el archivo de cabecera es AoqClientEngine.h.
const char*. Deben permanecer válidas al menos hasta que finalice la llamada correspondiente. El motor las copia internamente según sea necesario.Índice de API
Ciclo de vida del motor
| API | Descripción |
|---|---|
createEngine | Crear una instancia del motor (singleton) |
destroy | Destruir la instancia del motor |
getVersion | Obtener la versión del SDK |
connect | Conectar al servidor Relay |
disconnect | Desconectar del servidor |
Gestión de dispositivos de audio
| API | Descripción |
|---|---|
startAudioCapture | Abrir el dispositivo de captura de audio (micrófono) |
stopAudioCapture | Cerrar el dispositivo de captura de audio |
muteAudioCapture | Silenciar o reactivar la captura de audio |
startAudioPlayer | Iniciar renderizado de audio (reproducción de audio remoto) |
stopAudioPlayer | Detener la renderización de audio |
pauseAudioPlayer | Pausar el renderizado de audio (con desvanecimiento opcional) |
resumeAudioPlayer | Reanudar el renderizado de audio (con aparición gradual opcional) |
interruptAudioPlayer | Interrumpir la sesión de audio actual |
enableLocalAudioVolumeIndication | Habilitar o deshabilitar la indicación de volumen de captura local |
Configuración de codificación de audio
| API | Descripción |
|---|---|
setAudioEncoderConfig | Establecer parámetros de codificación de audio |
setAudioDecoderConfig | Establecer parámetros de decodificación de audio |
Gestión de dispositivos de video
| API | Descripción |
|---|---|
startVideoCapture | Abrir el dispositivo de captura de video (cámara) |
stopVideoCapture | Cerrar el dispositivo de captura de video |
setLocalView | Establecer o eliminar la ventana de renderizado de video local |
setRemoteView | Establecer o eliminar la ventana de renderizado de video remoto |
Codificación de video y entrada externa
| API | Descripción |
|---|---|
setVideoEncoderConfig | Establecer parámetros de codificación de video |
setVideoDecoderConfig | Establecer parámetros de decodificación de video |
pushExternalVideoCapturedFrame | Enviar tramas de video capturadas externamente |
pushExternalVideoEncodedFrame | Enviar tramas de video codificadas externamente |
Captura de pantalla
| API | Descripción |
|---|---|
getScreenSourceList | Obtener la lista de fuentes de captura de pantalla (solo escritorio) |
startScreenCapture | Iniciar la captura de pantalla |
stopScreenCapture | Detener la captura de pantalla |
Control de transmisión de flujo de medios
| API | Descripción |
|---|---|
enableSendMediaStream | Habilitar o deshabilitar la transmisión de secuencia de medios local |
Reproducción de archivos de audio
| API | Descripción |
|---|---|
startAudioFile | Iniciar la reproducción y publicación de un archivo de audio local |
stopAudioFile | Detener la reproducción del archivo de audio |
pauseAudioFile | Pausar la reproducción del archivo de audio |
resumeAudioFile | Reanudar la reproducción del archivo de audio |
getAudioFileDuration | Obtener la duración total del archivo de audio |
getAudioFileCurrentPosition | Obtener la posición de reproducción actual del archivo de audio |
setAudioFilePositionMillis | Buscar una posición en el archivo de audio |
setAudioFileVolume | Establecer el volumen del archivo de audio |
getAudioFileVolume | Obtener el volumen actual del archivo de audio |
Secuencias de audio externas
| API | Descripción |
|---|---|
addAudioExternalStream | Agregar un flujo de audio externo |
pushAudioExternalStreamData | Enviar datos de audio PCM externos |
setAudioExternalStreamVolume | Establecer el volumen de la secuencia de audio externa |
getAudioExternalStreamVolume | Obtener el volumen de la secuencia de audio externa |
clearAudioExternalStreamBuffer | Borrar el búfer de la secuencia de audio externa |
removeAudioExternalStream | Eliminar un flujo de audio externo |
Mensajes en tiempo real
| API | Descripción |
|---|---|
sendDataMsg | Enviar un mensaje de datos en tiempo real |
Devoluciones de llamada de cuadros de audio
| API | Descripción |
|---|---|
setAudioFrameObserver | Establecer el listener del callback de tramas de audio |
enableAudioFrameObserver | Habilitar o deshabilitar callbacks de tramas de audio en una etapa específica |
Devoluciones de llamada de cuadros de video
| API | Descripción |
|---|---|
setVideoFrameObserver | Establecer el listener del callback de tramas de video |
enableVideoFrameObserver | Habilitar o deshabilitar callbacks de tramas de video en una etapa específica |
AoqEngineEventListener
| API | Descripción |
|---|---|
onError | Callback de error del motor |
onWarning | Callback de advertencia del motor |
onConnectionStatusChange | Callback de cambio de estado de conexión |
onStats | Callback de estadísticas del motor |
onAudioDeviceStateChanged | Callback de cambio de estado de operación del dispositivo de audio |
onAudioDeviceRouteChanged | Callback de cambio de ruta de salida de audio |
onAudioFileState | Callback de estado de reproducción de archivo de audio |
onLocalAudioVolumeIndication | Callback de indicación de volumen de captura local |
onVideoDeviceStateChanged | Callback de cambio de estado de operación del dispositivo de video |
onDataMsg | Callback de mensaje de datos en tiempo real recibido |
IAudioFrameObserver
| API | Descripción |
|---|---|
| onCapturedAudioFrame | Callback para audio capturado sin procesar. Habilítelo con enableAudioFrameObserver y audioSource = AoqAudioSourceCaptured. Admite frecuencia de muestreo y número de canales configurables, y acceso de lectura/escritura. |
| onProcessCapturedAudioFrame | Callback para audio después del procesamiento 3A. Habilítelo con enableAudioFrameObserver y audioSource = AoqAudioSourceProcessCaptured. Admite frecuencia de muestreo y número de canales configurables, y acceso de lectura/escritura. |
| onPublishAudioFrame | Callback para audio antes de la publicación. Habilítelo con enableAudioFrameObserver y audioSource = AoqAudioSourcePublish. Admite frecuencia de muestreo y número de canales configurables. Solo acceso de lectura. |
| onPlaybackAudioFrame | Callback para audio de reproducción. Habilítelo con enableAudioFrameObserver y audioSource = AoqAudioSourcePlayback. Admite frecuencia de muestreo y número de canales configurables, y acceso de lectura/escritura. |
IVideoFrameObserver
| API | Descripción |
|---|---|
| onCapturedVideoFrame | Callback para video sin procesar capturado localmente antes del preprocesamiento. Habilítelo con enableVideoFrameObserver y videoSource = AoqVideoSourceCaptured. |
| onPreEncodeVideoFrame | Callback para video sin procesar local después del preprocesamiento y antes de la codificación. Habilítelo con enableVideoFrameObserver y videoSource = AoqVideoSourcePreEncode. |
| onRemoteVideoFrame | Callback para video sin procesar remoto después de la decodificación y antes del renderizado. Habilítelo con enableVideoFrameObserver y videoSource = AoqVideoSourceRemote. |
Detalles de la API
Ciclo de vida del motor
createEngine
Crea la instancia del motor. El SDK mantiene el motor como un singleton global, por lo que llamar a este método nuevamente devuelve la instancia existente.
Parámetros | Tipo | Descripción |
|---|---|---|
|
| Configuración de creación del motor. Para más información, consulte |
|
| Listener de callbacks de eventos. Para más información, consulte |
nullptr en caso de error.
destroy
Destruye la instancia del motor. Después de destruir el motor, debe llamar a createEngine nuevamente antes de poder continuar usándolo.
getVersion
Obtiene la versión del SDK.
connect
Se conecta al servidor de retransmisión. El servidor de aplicaciones obtiene parámetros de conexión AOQ temporales basados en el protocolo en uso y los envía al cliente. Para más información, consulte Autenticación por token.
Parámetros | Tipo | Descripción |
|---|---|---|
|
| Configuración de autenticación de conexión. Para obtener más información, consulte |
disconnect
Desconecta del servidor.
Gestión de dispositivos de audio
startAudioCapture
Abre el dispositivo de captura de audio (micrófono).
Parámetros | Tipo | Descripción |
|---|---|---|
|
| Configuración de captura de audio. Para obtener más información, consulte |
stopAudioCapture
Cierra el dispositivo de captura de audio.
muteAudioCapture
Silencia o reactiva la captura de audio.
Parámetros | Tipo | Descripción |
|---|---|---|
|
|
|
startAudioPlayer
Inicia el renderizado de audio para reproducir audio remoto.
Parámetros | Tipo | Descripción |
|---|---|---|
|
| Configuración de reproducción de audio. Para obtener más información, consulte |
stopAudioPlayer
Detiene el renderizado de audio.
pauseAudioPlayer
Pausa el renderizado de audio, con soporte para desvanecimiento de salida.
Parámetros | Tipo | Descripción |
|---|---|---|
|
| Duración del desvanecimiento de salida, en milisegundos. 0 indica pausa inmediata. |
resumeAudioPlayer
Reanuda el renderizado de audio, con soporte para desvanecimiento de entrada.
Parámetros | Tipo | Descripción |
|---|---|---|
|
| Duración del desvanecimiento de entrada, en milisegundos. 0 indica reanudación inmediata. |
interruptAudioPlayer
Interrumpe la sesión de audio actual y detiene el audio que se está reproduciendo.
Parámetros | Tipo | Descripción |
|---|---|---|
|
| Tipo de pista. Para más información, consulte |
|
| Duración del desvanecimiento de salida, en milisegundos. 0 indica interrupción inmediata. |
enableLocalAudioVolumeIndication
Habilita o deshabilita la indicación de volumen de captura local. Una vez habilitada, la devolución de llamada onLocalAudioVolumeIndication se activa en el intervalo especificado por config.interval. Si config.interval <= 0, la devolución de llamada se deshabilita. Debe llamar a este método después de startAudioCapture para obtener datos de volumen.
Parámetros | Tipo | Descripción |
|---|---|---|
|
| Configuración de indicación de volumen. Para obtener más información, consulte |
Configuración de codificación de audio
setAudioEncoderConfig
Establece los parámetros de codificación de audio.
Parámetros | Tipo | Descripción |
|---|---|---|
|
| Configuración de códec de audio. Para más información, consulte |
setAudioDecoderConfig
Establece los parámetros de decodificación de audio.
Parámetros | Tipo | Descripción |
|---|---|---|
|
| Configuración de códec de audio. Para más información, consulte |
Gestión de dispositivos de video
startVideoCapture
Abre el dispositivo de captura de video (cámara). Cuando se configura isExternal=true, la cámara no se abre y los fotogramas son proporcionados por pushExternalVideoCapturedFrame.
Parámetros | Tipo | Descripción |
|---|---|---|
|
| Configuración de captura de video. Para obtener más información, consulte |
stopVideoCapture
Cierra el dispositivo de captura de video.
setLocalView
Establece o elimina la ventana de renderizado de video local. Si canvas.view == nullptr, se elimina el vínculo.
Parámetros | Tipo | Descripción |
|---|---|---|
|
| Pista de video. Pase |
|
| Lienzo de renderizado. Para más información, consulte |
setRemoteView
Establece o elimina la ventana de renderizado de video remoto. Si canvas.view == nullptr, se elimina el vínculo.
Parámetros | Tipo | Descripción |
|---|---|---|
|
| Pista de video. Pase |
|
| Lienzo de renderizado. Para más información, consulte |
Codificación de video y entrada externa
setVideoEncoderConfig
Establece los parámetros de codificación de video y los enruta basándose en config.trackType.
Parámetros | Tipo | Descripción |
|---|---|---|
|
| Configuración de códec de video. Para más información, consulte |
setVideoDecoderConfig
Establece los parámetros de decodificación de video (una propuesta de códec en el lado de suscripción, que debe llamarse antes de connect). La llamada se enruta según config.trackType.
Parámetros | Tipo | Descripción |
|---|---|---|
|
| Configuración de códec de video. Para más información, consulte |
pushExternalVideoCapturedFrame
Envía un fotograma de video externo. Primero debe llamar a startVideoCapture y configurar isExternal=true. Si no se ha iniciado la captura de video externa, se devuelve AoqECVideoExternalCaptureNotEnabled (211). Si el formato del fotograma no es compatible, se devuelve AoqECParamInvalid.
Parámetros | Tipo | Descripción |
|---|---|---|
|
| Destino de enrutamiento. Pase |
|
| Datos de fotograma de video externo. Para más información, consulte |
AoqECVideoExternalBufferFull (210) indica que el búfer está lleno; AoqECVideoExternalCaptureNotEnabled (211) indica que la captura de video externa no está habilitada; AoqECParamInvalid indica un formato de fotograma no compatible; otros valores distintos de cero indican otros errores.
pushExternalVideoEncodedFrame
Envía un fotograma de video codificado externamente directamente, omitiendo el codificador. Primero debe llamar a setVideoEncoderConfig y configurar isExternal=true. Actualmente solo se admite JPEG.
Parámetros | Tipo | Descripción |
|---|---|---|
|
| Destino de enrutamiento. Pase |
|
| Datos de fotograma codificados externamente. Para obtener más información, consulte |
Captura de pantalla
config especifica la configuración de captura de pantalla. El contenido de la pantalla se envía en la pista AoqTrackTypeScreen.
Devuelve 0 en caso de éxito o un valor distinto de cero en caso de fallo. Estos métodos devuelven sincrónicamente y no proporcionan un callback onScreenCaptureStateChanged.
Llame a getScreenSourceList para enumerar pantallas y ventanas, luego pase los valores seleccionados de sourceId y sourceType en la configuración de captura.
Para cuadros sin procesar externos, establezca isExternal=true y proporcione cuadros de Pantalla sin procesar a través de pushExternalVideoCapturedFrame para la codificación del SDK. Para cuadros codificados externamente, configure la pista de Pantalla para codificación externa con setVideoEncoderConfig, luego llame a pushExternalVideoEncodedFrame.
getScreenSourceList
AoqScreenSourceList::screenSourceListFree(list) después de su uso para liberar su memoria.
Control de transmisión de flujo de medios
enableSendMediaStream
Habilita o deshabilita el envío de un flujo de medios local. Le recomendamos deshabilitar el envío después de la inicialización y habilitarlo solo después de que la devolución de llamada onConnectionStatusChange informe AoqConnectionStatusConnected.
Parámetros | Tipo | Descripción |
|---|---|---|
|
| Destino de enrutamiento. Se admiten |
|
|
|
Reproducción de archivos de audio
startAudioFile
Inicia la reproducción de un archivo de audio local en el flujo de publicación.
Parámetros | Tipo | Descripción |
|---|---|---|
|
| ID del archivo de audio. La capa de negocio debe garantizar que sea único. |
|
| Configuración de mezcla de archivos de audio. Para obtener más información, consulte |
stopAudioFile
Detiene la reproducción del archivo de audio.
Parámetros | Tipo | Descripción |
|---|---|---|
|
| ID del archivo de audio |
pauseAudioFile
Pausa la reproducción del archivo de audio.
Parámetros | Tipo | Descripción |
|---|---|---|
|
| ID del archivo de audio |
resumeAudioFile
Reanuda la reproducción del archivo de audio.
Parámetros | Tipo | Descripción |
|---|---|---|
|
| ID del archivo de audio |
getAudioFileDuration
Obtiene la duración total del archivo de audio.
Parámetros | Tipo | Descripción |
|---|---|---|
|
| ID del archivo de audio |
-AoqErrorCode).
getAudioFileCurrentPosition
Obtiene la posición de reproducción actual del archivo de audio.
Parámetros | Tipo | Descripción |
|---|---|---|
|
| ID del archivo de audio |
-AoqErrorCode).
setAudioFilePositionMillis
Establece la posición de reproducción del archivo de audio (búsqueda).
Parámetros | Tipo | Descripción |
|---|---|---|
|
| ID del archivo de audio |
|
| Posición de reproducción, en milisegundos |
setAudioFileVolume
Establece el volumen del archivo de audio.
Parámetros | Tipo | Descripción |
|---|---|---|
|
| ID del archivo de audio |
|
| Dirección del flujo de audio. Para obtener más información, consulte |
|
| Valor de volumen. Valores válidos: 0 a 100. |
getAudioFileVolume
Obtiene el volumen actual del archivo de audio.
Parámetros | Tipo | Descripción |
|---|---|---|
|
| ID del archivo de audio |
|
| Dirección del flujo de audio. Para obtener más información, consulte |
-AoqErrorCode).
Secuencias de audio externas
addAudioExternalStream
Añade un flujo de audio externo.
Parámetros | Tipo | Descripción |
|---|---|---|
|
| ID de flujo de audio externo. La capa de negocio debe garantizar que sea único. |
|
| Configuración de flujo de audio externo. Para obtener más información, consulte |
pushAudioExternalStreamData
Proporciona datos PCM de audio externos. Si se devuelve AoqECAudioExternalBufferFull (110), el búfer del SDK está lleno y le recomendamos esperar aproximadamente 20 ms y luego enviar el marco de datos actual nuevamente.
Parámetros | Tipo | Descripción |
|---|---|---|
|
| ID de flujo de audio externo |
|
| Datos de audio externos sin procesar. Para más información, consulte |
AoqECAudioExternalBufferFull.setAudioExternalStreamVolume
Establece el volumen de un flujo de audio externo.
Parámetros | Tipo | Descripción |
|---|---|---|
|
| ID de flujo de audio externo |
|
| Tipo de flujo de audio externo. Para obtener más información, consulte |
|
| Valor de volumen. Valores válidos: 0 a 100. |
getAudioExternalStreamVolume
Obtiene el volumen de un flujo de audio externo.
Parámetros | Tipo | Descripción |
|---|---|---|
|
| ID de flujo de audio externo |
|
| Tipo de flujo de audio externo. Para obtener más información, consulte |
-AoqErrorCode).
clearAudioExternalStreamBuffer
Borra el búfer de un flujo de audio externo.
Parámetros | Tipo | Descripción |
|---|---|---|
|
| ID de flujo de audio externo |
|
| Duración del desvanecimiento. -1 utiliza el desvanecimiento predeterminado del SDK, 0 borra todo sin desvanecimiento, y un valor mayor que 0 mantiene un desvanecimiento del número especificado de milisegundos. |
removeAudioExternalStream
Elimina un flujo de audio externo.
Parámetros | Tipo | Descripción |
|---|---|---|
|
| ID de flujo de audio externo |
Mensajes en tiempo real
sendDataMsg
Envía un mensaje de datos en tiempo real.
Parámetros | Tipo | Descripción |
|---|---|---|
|
| Contenido del mensaje. Para más información, consulte |
Devoluciones de llamada de cuadros de audio
setAudioFrameObserver
Establece el listener de callbacks de datos de fotogramas de audio. Pase nullptr para detener los callbacks. Después de configurar el listener, llame a enableAudioFrameObserver para habilitar el callback para la fuente de datos correspondiente.
Parámetros | Tipo | Descripción |
|---|---|---|
|
| Listener de callbacks de fotogramas de audio. Para más información, consulte |
enableAudioFrameObserver
Habilita o deshabilita el callback de fotogramas de audio en una posición especificada.
Parámetros | Tipo | Descripción |
|---|---|---|
|
| Especifica si se permiten los callbacks de datos |
|
| Tipo de fuente de datos de audio sin procesar. Para obtener más información, consulte |
|
| Configuración de parámetros de devolución de llamada. Para obtener más información, consulte |
Devoluciones de llamada de cuadros de video
setVideoFrameObserver
Establece el listener de callbacks de datos de fotogramas de video. Pase nullptr para detener los callbacks. Después de configurar el listener, llame a enableVideoFrameObserver para habilitar el callback para la fuente de datos correspondiente.
Parámetros | Tipo | Descripción |
|---|---|---|
|
| Listener de callbacks de fotogramas de video. Para más información, consulte |
enableVideoFrameObserver
Habilita o deshabilita el callback de fotogramas de video en una posición especificada.
Parámetros | Tipo | Descripción |
|---|---|---|
|
| Especifica si se habilitan los callbacks de datos en una posición |
|
| Fuente de datos de la devolución de llamada de fotogramas de video (posición en la canalización). Para obtener más información, consulte |
|
| Configuración de parámetros de devolución de llamada. Para obtener más información, consulte |
AoqEngineEventListener
AoqEngineEventListener es el punto de entrada unificado para todas las notificaciones de eventos asíncronos del SDK. Es una clase abstracta que usted hereda e implementa, y luego pasa al llamar a createEngine. Todos los callbacks pueden activarse en hilos internos, por lo que debe manejar la seguridad de los hilos usted mismo. Transiciones de estado: Disconnected → Connecting → Connected/Failed → Disconnected.
onError
Devolución de llamada de error del motor.
Parámetros | Tipo | Descripción |
|---|---|---|
|
| Código de error. Para más información, consulte |
|
| Descripción del error |
onWarning
Devolución de llamada de advertencia del motor.
Parámetros | Tipo | Descripción |
|---|---|---|
|
| Código de advertencia. Para más información, consulte |
|
| Descripción de la advertencia |
onConnectionStatusChange
Callback de cambio de estado de conexión del motor.
Parámetros | Tipo | Descripción |
|---|---|---|
|
| Estado de conexión. Para más información, consulte |
onStats
Devolución de llamada de estadísticas del motor.
Parámetros | Tipo | Descripción |
|---|---|---|
|
| Datos estadísticos. Para más información, consulte |
onAudioDeviceStateChanged
Devolución de llamada para cambios en el estado de la operación de captura y reproducción del dispositivo de audio.
Parámetros | Tipo | Descripción |
|---|---|---|
|
| Estado del dispositivo de audio. Para más información, consulte |
onAudioDeviceRouteChanged
Devolución de llamada de cambio de ruta de salida de audio.
Parámetros | Tipo | Descripción |
|---|---|---|
|
| Tipo de ruta. Para los valores válidos, consulte |
onAudioFileState
Callback para el estado de reproducción de archivos de audio.
Parámetros | Tipo | Descripción |
|---|---|---|
|
| Estado de reproducción del archivo. Para más información, consulte |
onLocalAudioVolumeIndication
Devolución de llamada de indicación de volumen de captura local. Para habilitarla, llame a enableLocalAudioVolumeIndication.
Parámetros | Tipo | Descripción |
|---|---|---|
|
| Información de volumen local. Para más información, consulte |
onVideoDeviceStateChanged
Devolución de llamada para cambios en el estado de la operación de captura del dispositivo de video.
Parámetros | Tipo | Descripción |
|---|---|---|
|
| Estado del dispositivo de video. Para más información, consulte |
onDataMsg
Devolución de llamada para un mensaje de datos en tiempo real recibido.
Parámetros | Tipo | Descripción |
|---|---|---|
|
| Mensaje de datos. Para más información, consulte |
IAudioFrameObserver
Interfaz para callbacks de datos de fotogramas de audio, que el invocador implementa mediante herencia. No realice operaciones que consuman mucho tiempo en los callbacks. De lo contrario, pueden producirse anomalías en el audio.
onCapturedAudioFrame
Devolución de llamada para datos capturados sin procesar. Para habilitarla, llame a enableAudioFrameObserver y establezca audioSource = AoqAudioSourceCaptured. Puede configurar la tasa de muestreo y el número de canales, y se admite el modo de lectura y escritura.
Parámetros | Tipo | Descripción |
|---|---|---|
|
| Datos de audio capturados sin procesar. Para más información, consulte |
onProcessCapturedAudioFrame
Devolución de llamada para datos después del procesamiento 3A. Para habilitarla, llame a enableAudioFrameObserver y establezca audioSource = AoqAudioSourceProcessCaptured. Puede configurar la tasa de muestreo y el número de canales, y se admite el modo de lectura y escritura.
Parámetros | Tipo | Descripción |
|---|---|---|
|
| Datos de audio sin procesar después del procesamiento 3A. Para obtener más información, consulte |
onPublishAudioFrame
Devolución de llamada para datos de publicación. Para habilitarla, llame a enableAudioFrameObserver y establezca audioSource = AoqAudioSourcePublish. Puede configurar la tasa de muestreo y el número de canales, y solo se admite el modo de solo lectura.
Parámetros | Tipo | Descripción |
|---|---|---|
|
| Tipo de pista. Para más información, consulte |
|
| Datos de audio sin procesar que se publicarán. Para obtener más información, consulte |
onPlaybackAudioFrame
Devolución de llamada para datos de reproducción. Para habilitarla, llame a enableAudioFrameObserver y establezca audioSource = AoqAudioSourcePlayback. Puede configurar la tasa de muestreo y el número de canales, y se admite el modo de lectura y escritura.
Parámetros | Tipo | Descripción |
|---|---|---|
|
| Datos de audio sin procesar para reproducción. Para obtener más información, consulte |
IVideoFrameObserver
Interfaz para callbacks de datos de fotogramas de video, que el invocador implementa mediante herencia. No realice operaciones que consuman mucho tiempo en los callbacks. De lo contrario, puede producirse tartamudeo en el video. Un valor de retorno de true indica que los datos se han modificado y deben escribirse de nuevo en el SDK. La escritura de nuevo solo surte efecto para I420. Un valor de retorno de false indica solo lectura. Los datos en frame son válidos solo durante el callback. Para utilizarlos de forma asíncrona, cópielos usted mismo.
onCapturedVideoFrame
Devolución de llamada para datos locales sin procesar después de la captura, antes del preprocesamiento. Para habilitarla, llame a enableVideoFrameObserver y establezca videoSource = AoqVideoSourceCaptured.
Parámetros | Tipo | Descripción |
|---|---|---|
|
| Datos de fotograma de video capturado. Para más información, consulte |
| trackType | AoqTrackType | Tipo de pista de video: Video o Pantalla. |
true indica que los datos se han modificado y deben escribirse de nuevo en el SDK; false indica que es de solo lectura.
onPreEncodeVideoFrame
Devolución de llamada para datos locales sin procesar antes de la codificación, después del preprocesamiento. Para habilitarla, llame a enableVideoFrameObserver y establezca videoSource = AoqVideoSourcePreEncode.
Parámetros | Tipo | Descripción |
|---|---|---|
|
| Tipo de pista de video. Para más información, consulte |
|
| Datos de fotograma de video antes de la codificación. Para obtener más información, consulte |
true indica que los datos se han modificado y deben escribirse de nuevo en el SDK; false indica que es de solo lectura.
onRemoteVideoFrame
Devolución de llamada para datos remotos sin procesar después de la decodificación y antes del renderizado. Para habilitarla, llame a enableVideoFrameObserver y establezca videoSource = AoqVideoSourceRemote.
Parámetros | Tipo | Descripción |
|---|---|---|
|
| Tipo de pista de video. Para más información, consulte |
|
| Datos de fotograma de video remoto. Para más información, consulte |
true indica que los datos se han modificado y deben escribirse de nuevo en el SDK; false indica que es de solo lectura.
Tipos de datos y enumeraciones
Tipos comunes
AoqCreateConfig
Configuración de creación del motor.
Campo | Tipo | Valor predeterminado | Descripción |
|---|---|---|---|
|
|
| Directorio de trabajo del SDK |
|
|
| Especifica si se deben guardar los datos de audio (para depuración) |
|
|
| Parámetros extendidos (una cadena JSON) |
| maxEncodedVideoFrameBytes | int | 190 × 1024 | Tamaño máximo de trama codificada en bytes. Se aplica únicamente al codificador JPEG interno del SDK. Un valor de 0 desactiva el límite. |
| enableDropOversizedVideoFrame | bool | false | Para el codificador JPEG interno del SDK, si se debe descartar un cuadro que sigue siendo demasiado grande incluso con la calidad más baja. |
AoqConnectConfig
Configuración para conectarse al servidor de retransmisión. relayEndpoints / publishTracks / subscribeTracks son matrices de estilo C con una longitud. La memoria de la matriz es responsabilidad del invocador y solo necesita permanecer válida durante la llamada a connect.
Campo | Tipo | Descripción |
|---|---|---|
|
| Token de autenticación de conexión |
|
| ID de sesión |
|
| Huella digital del certificado del servidor |
|
| ID hash del espacio de trabajo |
|
| Matriz de puntos de acceso de retransmisión |
|
| Número de puntos de acceso de retransmisión |
|
| Matriz de atributos de pista de publicación local |
|
| Número de pistas publicadas |
|
| Matriz de atributos de pista de suscripción local |
|
| Número de pistas suscritas |
AoqRelayEndpoint
Un punto de acceso de retransmisión.
Campo | Tipo | Valor predeterminado | Descripción |
|---|---|---|---|
|
|
| Índice de ruta |
|
|
| Dirección del servidor (nombre de dominio o dirección IP) |
|
|
| Puerto del servidor |
| tcp_port | int | 0 | Puerto de reserva TCP. Un valor de 0 utiliza el puerto predeterminado del SDK, 443. |
AoqTrackParam
El atributo de la pista.
Campo | Tipo | Valor predeterminado | Descripción |
|---|---|---|---|
|
|
| Tipo de pista |
|
|
| Modo de transmisión o sin transmisión. Efectivo solo para el enlace descendente de audio. |
AoqDataMsg
La estructura de datos del mensaje. Cuando se utiliza en un callback, se garantiza que sea válida solo durante el callback. Si necesita utilizarla de forma asíncrona, cópiela usted mismo.
Campo | Tipo | Descripción |
|---|---|---|
|
| Contenido del mensaje. Apunta a memoria mantenida por el invocador. |
|
| Número de bytes |
Tipos de estadísticas
AoqStats
Estadísticas del motor. Cada matriz de estadísticas se proporciona como un puntero y un recuento.
Campo | Tipo | Descripción |
|---|---|---|
|
| Matriz de estadísticas de publicación de audio y número de entradas |
|
| Matriz de estadísticas de publicación de video y número de entradas |
|
| Matriz de estadísticas de publicación de mensajes de datos y número de entradas |
|
| Matriz de estadísticas de suscripción de audio y número de entradas |
|
| Matriz de estadísticas de suscripción de video y número de entradas |
|
| Matriz de estadísticas de suscripción de mensajes de datos y número de entradas |
|
| Estadísticas de red |
AoqNetworkStats
Estadísticas de red.
Campo | Tipo | Descripción |
|---|---|---|
|
| Tasa de bits de envío, en bit/s |
|
| Bytes enviados acumulados |
|
| Tasa de bits de recepción, en bit/s |
|
| Bytes acumulados recibidos |
|
| Tasa de pérdida de paquetes, de 0 a 100 |
|
| Latencia de ida y vuelta, en ms |
AoqAudioPublishStats
Estadísticas de publicación de audio.
Campo | Tipo | Descripción |
|---|---|---|
|
| Tipo de pista |
|
| Tasa de bits, en bit/s |
|
| Bytes acumulados |
|
| Volumen de codificación del flujo de publicación |
AoqVideoPublishStats
Estadísticas de publicación de video.
Campo | Tipo | Descripción |
|---|---|---|
|
| Tipo de pista |
|
| Tasa de bits, en bit/s |
|
| Bytes acumulados |
|
| Tasa de cuadros de codificación |
AoqDataMsgPublishStats
Estadísticas de publicación para mensajes de datos.
Campo | Tipo | Descripción |
|---|---|---|
|
| Tipo de pista |
|
| Tasa de bits, en bit/s |
|
| Bytes acumulados |
AoqAudioSubscribeStats
Estadísticas de suscripción de audio.
Campo | Tipo | Descripción |
|---|---|---|
|
| Tipo de pista |
|
| Tasa de bits, en bit/s |
|
| Bytes acumulados |
|
| Volumen de reproducción |
AoqVideoSubscribeStats
Estadísticas de suscripción de video.
Campo | Tipo | Descripción |
|---|---|---|
|
| Tipo de pista |
|
| Tasa de bits, en bit/s |
|
| Bytes acumulados |
|
| Tasa de fotogramas de decodificación |
|
| Tasa de fotogramas de renderizado |
AoqDataMsgSubscribeStats
Estadísticas de suscripción para mensajes de datos.
Campo | Tipo | Descripción |
|---|---|---|
|
| Tipo de pista |
|
| Tasa de bits, en bit/s |
|
| Bytes acumulados |
Enumeraciones
AoqErrorCode
Enumeración de códigos de error.
Valor de enumeración | Valor | Descripción |
|---|---|---|
| 0 | Éxito |
| 1 | Parámetro no válido |
| 2 | Estado no válido |
| 3 | Se llama a la API pero no está implementada en la plataforma actual o en el modo actual |
| 100 | Error genérico de audio |
| 110 | El búfer de audio externo está lleno |
| 120 | Error genérico de dispositivo de audio |
| 121 | Permiso de grabación no concedido |
| 122 | El dispositivo de grabación está en uso |
| 123 | Iniciar grabación en segundo plano |
| 124 | Error al iniciar la grabación |
| 125 | El dispositivo de reproducción está en uso |
| 126 | Iniciar reproducción en segundo plano |
| 127 | Error al iniciar la reproducción |
| 128 | El modo de receptor requiere que VoIP esté habilitado |
| 200 | Error genérico de video |
| 210 | El búfer de video externo está lleno |
| 211 | La captura de video externa no está habilitada |
| 212 | La codificación de video externa no está habilitada |
| 220 | Error genérico de dispositivo de video |
| 221 | Error al abrir la cámara |
| 222 | Permiso de cámara no concedido |
| 223 | La cámara está en uso |
| 224 | Error de ejecución de la cámara |
| 230 | Error genérico de códec de video |
| 231 | Error al inicializar el codificador |
| 240 | Error genérico de renderizado de video |
| 241 | Error al crear la vista de renderizado |
| 242 | Error de dibujo de renderizado |
| AoqECScreen | 300 | Error general de uso compartido de pantalla |
| AoqECScreenAuthFailed | 310 | Permiso de uso compartido de pantalla denegado |
| AoqECScreenStartFailed | 311 | Error al iniciar el uso compartido de pantalla |
AoqWarningCode
Enumeración de códigos de advertencia.
Valor de enumeración | Valor | Descripción |
|---|---|---|
| 0 | Sin advertencia |
| 100 | Advertencia genérica de audio |
| 101 | Acople de audio detectado |
| 120 | Advertencia genérica de dispositivo de audio |
| 121 | Error de enumeración de micrófono |
| 122 | Se agotó el tiempo de inicio del micrófono |
| 123 | Error de grabación |
| 124 | Error de enumeración de altavoces |
| 125 | Se agotó el tiempo de inicio del altavoz |
| 126 | Error de reproducción |
| 200 | Advertencia genérica de video |
| 201 | Error de enumeración de cámaras |
| 202 | Codificador de video cambiado |
| 203 | Renderizado de video degradado |
AoqTrackType
Tipo de pista.
Valor de enumeración | Valor | Descripción |
|---|---|---|
| 0 | Pista de audio |
| 1 | Pista de video |
| 2 | Pista de mensajes de datos |
| AoqTrackTypeScreen | 3 | Pista de pantalla compartida. Solo enlace ascendente. |
AoqEncoderType
Tipo de codificador.
Valor de enumeración | Valor | Descripción |
|---|---|---|
| 0 | Formato desconocido |
| 1 | Audio PCM |
| 2 | Audio Opus (basado en complementos; contacte al equipo del SDK para integrarlo o descargarlo dinámicamente en la aplicación) |
| 3 | Video H.264 |
| 4 | Video JPEG |
| 5 | Texto del mensaje |
AoqTrackMode
Modo de transmisión o sin transmisión. Efectivo solo para el enlace descendente de audio.
Valor de enumeración | Valor | Descripción |
|---|---|---|
| 0 | Segmentado: los datos se empaquetan y entregan en segmentos semánticos, como una oración. |
| 1 | Transmisión: los datos se entregan de forma continua. |
AoqConnectionStatus
Estado de conexión del motor.
Valor de enumeración | Valor | Descripción |
|---|---|---|
| 0 | Desconectado |
| 1 | Conectando |
| 2 | Conectado |
| 3 | Error de conexión |
Tipos de audio
AoqAudioCaptureConfig
Configuración de captura de audio.
Campo | Tipo | Valor predeterminado | Descripción |
|---|---|---|---|
|
|
| Especifica si se debe utilizar captura externa |
|
|
| Número de canales de captura de audio. Se admiten 1 y 2. |
AoqAudioPlaybackConfig
Configuración de reproducción de audio.
Campo | Tipo | Valor predeterminado | Descripción |
|---|---|---|---|
|
|
| Especifica si se debe utilizar reproducción externa |
|
|
| Número de canales de reproducción de audio. Se admiten 1 y 2. |
AoqAudioCodecConfig
Configuración del códec de audio.
Campo | Tipo | Valor predeterminado | Descripción |
|---|---|---|---|
|
|
| Tipo de pista |
|
|
| Formato de códec |
|
|
| Frecuencia de muestreo, en Hz. Para codificación, se admiten Opus 8/16/48K y PCM 8/16/32/48K. Para decodificación, se admite adicionalmente 24K, pero 24K está limitado al modo Segmento. El modo Stream no admite 24K, y una combinación no válida activa el callback onError con AoqECParamInvalid durante la conexión. |
|
|
| Número de canales. Se admiten 1 y 2. |
|
|
| Tasa de bits, en bit/s |
AoqAudioDeviceState
Estado del dispositivo de audio.
Campo | Tipo | Descripción |
|---|---|---|
|
| Código de estado |
|
| Código de error ( |
AoqAudioDeviceStateCode
Código de estado del dispositivo de audio.
Valor de enumeración | Valor | Descripción |
|---|---|---|
| 0 | Sin estado |
| 1 | Iniciando captura |
| 2 | Captura iniciada |
| 3 | Deteniendo captura |
| 4 | Captura detenida |
| 5 | Error en la captura |
| 6 | Iniciando reproducción |
| 7 | Reproducción iniciada |
| 8 | Deteniendo reproducción |
| 9 | Reproducción detenida |
| 10 | Error en la reproducción |
AoqAudioDeviceRouteType
Tipo de ruta del dispositivo de audio.
Valor de enumeración | Valor | Descripción |
|---|---|---|
| 0 | Valor predeterminado |
| 1 | Auriculares |
| 2 | Receiver |
| 3 | Auriculares sin micrófono |
| 4 | Altavoz integrado |
| 5 | USB |
| 6 | Bluetooth |
| 7 | Bluetooth A2DP |
AoqAudioFileMixConfig
Configuración para reproducir un archivo de audio en el flujo de publicación.
Campo | Tipo | Valor predeterminado | Descripción |
|---|---|---|---|
|
|
| Nombre del archivo (incluida la ruta). Obligatorio. |
|
|
| Número de bucles. -1 indica un bucle ilimitado. |
|
|
| Posición de inicio de reproducción, en ms |
|
|
| Volumen de publicación. Valores válidos: de 0 a 100. |
|
|
| Volumen de reproducción. Valores válidos: de 0 a 100. |
AoqAudioFileState
Estado del archivo de audio.
Campo | Tipo | Descripción |
|---|---|---|
|
| ID de archivo |
|
| Código de estado |
|
| Código de error |
AoqAudioFileStateCode
Código de estado del archivo de audio.
Valor de enumeración | Valor | Descripción |
|---|---|---|
| 0 | Sin estado |
| 1 | Iniciado |
| 2 | Detenido |
| 3 | En pausa |
| 4 | Reanudado |
| 5 | Reproducción completada |
| 6 | Buffering |
| 7 | Almacenamiento en búfer finalizado |
| 8 | Error en la reproducción |
AoqAudioFileErrorCode
Código de error de reproducción de archivo de audio.
Valor de enumeración | Valor | Descripción |
|---|---|---|
| 0 | Sin error |
| 1 | Error al abrir el archivo |
| 2 | Error al decodificar el archivo |
AoqAudioExternalStreamConfig
Configuración de flujo de audio externo.
Campo | Tipo | Valor predeterminado | Descripción |
|---|---|---|---|
|
|
| Tipo de pista de audio |
|
|
| Formato de flujo de audio. Se admite PCM. |
|
|
| Número de canales. Está limitado por el códec de audio del flujo de publicación, que admite 1 y 2. Los canales adicionales se ignoran. |
|
|
| Frecuencia de muestreo, en Hz. Se admiten 8, 12, 16, 24, 32, 44.1, 48, 64, 88.2, 96, 176.4 y 192K. |
|
|
| Volumen de reproducción. Valores válidos: de 0 a 100. |
|
|
| Volumen de publicación. Valores válidos: de 0 a 100. |
|
|
| Duración máxima del búfer, en ms. Valores válidos: 100 y superiores. Si la duración almacenada en el búfer en el SDK excede este valor, Push falla. |
|
|
| Especifica si se debe aplicar el procesamiento 3A al PCM de entrada |
AoqAudioFrameData
Datos de audio.
Campo | Tipo | Descripción |
|---|---|---|
|
| Puntero a los datos de audio |
|
| Número de muestras (por canal) |
|
| Bytes por muestra |
|
| Número de canales |
|
| Número de muestras por segundo |
|
| Ronda de entrada PCM (utilizada para la notificación de finalización de consumo de |
|
| Marca de tiempo |
|
| Longitud de los datos |
|
| Válido en callbacks de datos. |
AoqAudioStreamDirection
Dirección del flujo de audio.
Valor de enumeración | Valor | Descripción |
|---|---|---|
| 0 | Publicación de audio |
| 1 | Audio de reproducción |
AoqAudioExternalStreamToggle
Control de flujo de audio externo.
Valor de enumeración | Valor | Descripción |
|---|---|---|
| 0 | Recuperado |
| 1 | En pausa |
AoqAudioSource
Tipo de la fuente de datos de audio.
Valor de enumeración | Valor | Descripción |
|---|---|---|
| 0 | Datos de audio capturados |
| 1 | Datos de audio después del procesamiento 3A |
| 2 | Datos de audio a publicar (requiere una conexión exitosa) |
| 3 | Datos de audio a reproducir |
AoqAudioObserverMode
Modo de devolución de llamada de fotograma de audio.
Valor de enumeración | Valor | Descripción |
|---|---|---|
| 0 | Solo lectura |
| 1 | Lectura-escritura |
AoqAudioObserverConfig
Configuración de parámetros para callbacks de datos de audio.
Campo | Tipo | Valor predeterminado | Descripción |
|---|---|---|---|
|
|
| Frecuencia de muestreo del audio del callback. Está limitada por la fuente. Se realiza un remuestreo si las frecuencias no coinciden. Se admiten 8, 12, 16, 24, 32, 44.1, 48, 64, 88.2, 96, 176.4 y 192K. |
|
|
| Número de canales de audio en el callback. Se admiten 1 y 2. Este parámetro está limitado por los parámetros del códec del flujo de suscripción. |
|
|
| Modo de devolución de llamada |
AoqAudioVolumeIndicationConfig
Configuración de indicación de volumen local.
| Campo | Tipo | Valor predeterminado | Descripción |
|---|---|---|---|
| reportSpeech | bool | false | Si se debe detectar voz. |
| interval | int | 0 | Intervalo de devolución de llamada en milisegundos. Los valores de 0 o menos deshabilitan las devoluciones de llamada; los valores entre 0 y 10 usan 10. |
| smooth | int | 3 | Factor de suavizado, de 0 a 10. Los valores más altos producen resultados más suaves. |
AoqAudioVolume
Información de volumen local.
| Campo | Tipo | Valor predeterminado | Descripción |
|---|---|---|---|
| isSpeech | bool | false | Si se detecta voz. |
| volume | int | 0 | Volumen instantáneo suavizado, de 0 a 255. |
Tipos de video
AoqVideoCaptureConfig
Configuración de captura de video.
Campo | Tipo | Valor predeterminado | Descripción |
|---|---|---|---|
|
|
| Ancho de captura, en píxeles. Este parámetro no tiene efecto cuando |
|
|
| Alto de captura, en píxeles. Este parámetro no tiene efecto cuando |
|
|
| Tasa de fotogramas de captura. Este parámetro no tiene efecto cuando |
|
|
| Especifica si se utiliza captura externa. Si es |
AoqVideoCanvas
Estructura de datos para el renderizado de video. view es un puntero opaco al identificador de vista nativo de la plataforma. En Windows, pase el identificador de ventana HWND. El invocador debe asegurarse de que el ciclo de vida de view dure más que el período durante el cual se establece mediante setLocalView / setRemoteView.
Campo | Tipo | Valor predeterminado | Descripción |
|---|---|---|---|
|
|
| Identificador de la vista de visualización ( |
|
|
| Modo de renderización |
AoqRenderMode
Modo de visualización de renderizado.
Valor de enumeración | Valor | Descripción |
|---|---|---|
| 0 | Modo automático |
| 1 | Modo de estiramiento para llenar. Cuando las relaciones de aspecto no coinciden, la imagen se estira a la relación objetivo y se distorsiona. |
| 2 | Modo letterbox. Cuando las relaciones de aspecto no coinciden, se añaden barras negras en la parte superior e inferior o en los lados izquierdo y derecho. |
| 3 | Modo de recorte. Cuando las relaciones de aspecto no coinciden, se recorta el ancho o el alto y se pierde parte de la imagen. |
AoqVideoPixelFormat
Formato de píxel de video.
Valor de enumeración | Valor | Descripción |
|---|---|---|
| 0 | Formato desconocido |
| 1 | I420 |
| 2 | NV12 |
| 3 | NV21 |
| 4 | BGRA |
| 5 | RGBA |
AoqVideoFrame
Datos de video externos.
Campo | Tipo | Descripción |
|---|---|---|
|
| Formato de píxel |
|
| Ancho, en píxeles |
|
| Alto, en píxeles |
|
| Puntero a datos en formato empaquetado (NV12/NV21/BGRA/RGBA) |
|
| Número de bytes de datos empaquetados |
|
| Punteros a los datos de los tres planos I420 |
|
| Stride de los tres planos I420 |
|
| Marca de tiempo, en ms. Si es 0, el SDK la completa con el reloj local. |
nativePixelBuffer | void* | Campo multiplataforma. No se utiliza en Windows. |
textureId | int | Campo multiplataforma. No se utiliza en Windows. |
transformMatrix | float[16] | Campo multiplataforma. No se utiliza en Windows. |
AoqVideoEncodedFrame
Una trama de video codificada externamente. El llamante realiza la codificación, y el SDK empaqueta y envía la trama directamente sin volver a codificarla.
Campo | Tipo | Descripción |
|---|---|---|
|
| Formato de códec |
|
| Puntero a los datos codificados |
|
| Número de bytes de los datos codificados |
|
| Ancho, en píxeles |
|
| Alto, en píxeles |
|
| Marca de tiempo, en ms. Si es 0, el SDK la completa con el reloj local. |
AoqVideoCodecType
El tipo de códec del fotograma codificado externamente.
Valor de enumeración | Valor | Descripción |
|---|---|---|
| 0 | JPEG |
AoqVideoDeviceState
Estado del dispositivo de video.
Campo | Tipo | Descripción |
|---|---|---|
|
| Código de estado |
|
| Código de error ( |
AoqVideoDeviceStateCode
Código de estado del dispositivo de video.
Valor de enumeración | Valor | Descripción |
|---|---|---|
| 0 | Sin estado |
| 1 | Iniciando cámara |
| 2 | Cámara iniciada |
| 3 | Deteniendo cámara |
| 4 | Cámara detenida |
| 5 | Error al iniciar la cámara (por ejemplo, permiso denegado o dispositivo no disponible) |
AoqMirrorMode
Modo espejo.
Valor de enumeración | Valor | Descripción |
|---|---|---|
| 0 | Deshabilitar espejo |
| 1 | Habilitar espejo |
AoqOrientationMode
Modo de orientación.
Valor de enumeración | Valor | Descripción |
|---|---|---|
| 0 | Automático |
| 1 | Vertical |
| 2 | Horizontal |
AoqVideoCodecConfig
Parámetros del códec de video, compartidos por codificación y decodificación. Para decodificación, solo trackType / codecType / width / height / fps / bitrate surten efecto y participan en la negociación como propuesta de suscripción, mientras que minBitrate / keyframeInterval / mirrorMode / orientationMode / isExternal se utilizan solo para codificación.
Campo | Tipo | Valor predeterminado | Descripción |
|---|---|---|---|
|
|
| Modo de codificación externa. Cuando es |
|
|
| Tipo de pista |
|
|
| Formato de códec |
|
|
| Ancho de resolución |
|
|
| Alto de resolución |
|
|
| Tasa de fotogramas |
|
|
| Tasa de bits inicial, en bit/s |
|
|
| Tasa de bits mínima, en bit/s |
|
|
| Intervalo de fotogramas clave, en segundos |
|
|
| Modo espejo |
|
|
| Modo de orientación |
AoqVideoSource
Fuente de datos del callback de fotogramas de video (posición en la canalización).
Valor de enumeración | Valor | Descripción |
|---|---|---|
| 0 | Datos de video capturados antes del preprocesamiento |
| 1 | Datos de video antes de la codificación, después del preprocesamiento |
| 2 | Datos de video remoto después de la decodificación y antes de la renderización |
AoqVideoObserverMode
Modo de devolución de llamada de fotograma de video.
Valor de enumeración | Valor | Descripción |
|---|---|---|
| 0 | Solo lectura |
| 1 | Lectura-escritura |
AoqVideoObserverAlignment
Método de alineación de ancho para la salida de video.
Valor de enumeración | Valor | Descripción |
|---|---|---|
| 0 | Valor predeterminado |
| 1 | Alineación de números pares |
| 2 | Alineación de 4 bytes |
| 3 | Alineación de 8 bytes |
| 4 | Alineación de 16 bytes |
AoqVideoObserverConfig
Configuración de parámetros para callbacks de datos de video.
Campo | Tipo | Valor predeterminado | Descripción |
|---|---|---|---|
|
|
| Formato de píxel esperado de los datos del callback |
|
|
| Política de alineación de ancho |
|
|
| Modo de callback. ReadWrite solo es compatible con I420. |
|
|
| Especifica si se deben reflejar los datos del callback |
| trackType | AoqTrackType | AoqTrackTypeVideo | Pista de video a observar. Admite solo Video y Screen. |
Tipos de captura de pantalla
AoqScreenCaptureStateCode
Enumeración de estado de captura de pantalla. El tipo está definido, pero el SDK actual no proporciona un callback de estado correspondiente.
| Valor de enumeración | Valor | Descripción |
|---|---|---|
| AoqScreenCaptureNone | 0 | None |
| AoqScreenCaptureStarting | 1 | Iniciando |
| AoqScreenCaptureStarted | 2 | Iniciado |
| AoqScreenCaptureStopping | 3 | Deteniendo |
| AoqScreenCaptureStopped | 4 | Detenido |
| AoqScreenCaptureFail | 5 | Fallido |
AoqScreenCaptureState
| Campo | Tipo | Descripción |
|---|---|---|
| state | AoqScreenCaptureStateCode | Código de estado de captura de pantalla. |
| reason | int | Código de error de AoqErrorCode. 0 indica un estado normal. |
AoqScreenSourceList
| Campo/Método | Tipo | Descripción |
|---|---|---|
| sourceCount | int | Número de fuentes |
| sourceList | const AoqScreenSourceInfo* | Matriz de fuentes. Libere con screenSourceListFree(list) después de su uso. |
| screenSourceListFree(list) | static void | Libera la memoria de la lista. El invocador debe llamar a este método para evitar una fuga de memoria. |
AoqScreenSourceInfo
| Campo | Tipo | Valor predeterminado | Descripción |
|---|---|---|---|
| sourceType | AoqScreenShareSourceType | Escritorio | Tipo de fuente |
| sourceId | int64_t | 0 | ID de fuente |
| sourceName | const char* | nullptr | Nombre de la fuente |
| sourceIsSelf | bool | false | Si la ventana pertenece al proceso actual |
AoqScreenShareSourceType
| Valor | Número | Descripción |
|---|---|---|
| AoqScreenShareSourceTypeDesktop | 0 | Escritorio completo |
| AoqScreenShareSourceTypeWindow | 1 | Una ventana específica |
AoqScreenCaptureConfig
| Campo | Tipo | Valor predeterminado | Descripción |
|---|---|---|---|
| isExternal | bool | false | Si la aplicación suministra tramas de pantalla sin procesar. |
| sourceId | int64_t | 0 | ID de fuente de pantalla. |
| sourceType | AoqScreenShareSourceType | AoqScreenShareSourceTypeDesktop | Tipo de fuente de pantalla. |
| appGroup | const char* | nullptr | Solo para iOS. No se utiliza en esta plataforma. |