Se utiliza para reproducir una transmisión de audio y vídeo en la sesión de la Video API de Vonage. Más...
Heredan de IDisposable.
| Clases | |
| clase | AudioDataEventArgs |
| Define los parámetros para OpenTok.AudioData eventos. Más... | |
| clase | AudioLevelArgs |
| Define los argumentos para Nivel de audio eventos. Más... | |
| clase | AudioNetworkStatsEventArgs |
| Define los argumentos para Estadísticas de audio actualizadas eventos. Más... | |
| clase | Constructor |
| Se utiliza para crear un Suscriptor por ejemplo. Más... | |
| clase | Argumentos del texto de la leyenda |
| Define los argumentos para Texto de la leyenda eventos. Más... | |
| clase | ErrorEventArgs |
| Define los argumentos para el Error evento. Más... | |
| clase | NetworkConditionChangedEventArgs |
| Define los argumentos para Cambio en el estado de la red eventos generados por el suscriptor. Más... | |
| clase | RtcStatsReportArgs |
| Define los argumentos para RtcStatsReport eventos. Más... | |
| clase | Estadísticas del remitente |
| Estadísticas de red del lado del remitente. Más... | |
| clase | Suscriptores, Medios, Enlaces, Estadísticas |
| Proporciona estadísticas sobre los enlaces de los abonados, incluidas métricas de transporte locales y remotas, así como información sobre la degradación de la red. Más... | |
| clase | SuscriptorMediaEnlaceEstadísticasArgumentos del evento |
| Define los argumentos para MediaLinkEstadísticasActualizado eventos. Más... | |
| clase | VideoEventArgs |
| Define los argumentos para el Compatible con vídeo y Vídeo desactivado eventos. Más... | |
| clase | VideoNetworkStatsEventArgs |
| Define los argumentos para Estadísticas de vídeo: Actualizado eventos. Más... | |
| clase | VideoQualityChangedEventArgs |
| Define los argumentos para Se ha modificado la calidad del vídeo eventos generados por el suscriptor. Más... |
| Tipos públicos | |
| enum | VideoReason : int { Publicar vídeo = 1 , Suscriptor de vídeo = 2, Calidad = 3 , Códec no compatible = 4, CodecChange = 8, Cambio de resolución = 9 , Interrupción del vídeo = 10 } |
| Define los valores para el VideoEventArgs.Reason y VideoEventArgs.Reason propiedades. Más... |
| Funciones públicas para miembros | |
| nulo | Deshacerse de () |
| Se ocupa de la Suscriptor los recursos del objeto. | |
| nulo | Obtener informe de estadísticas de RTC () |
| Obtiene el informe de estadísticas de RTC del suscriptor. Se trata de una operación asíncrona. Cuando las estadísticas estén disponibles, el RtcStatsReport Se envía el mensaje. Más... |
| Funciones de miembro protegidas | |
| Suscriptor (Constructor constructor) | |
| virtual void | Deshacerse de (bool disposing) |
| Propiedades | |
| Transmisión | Transmisión [get] |
| El flujo de este suscriptor. Las propiedades del Transmisión Los objetos son una instantánea del estado del flujo en el momento en que se accede a esta propiedad y no se actualizarán a medida que cambie el estado del flujo. | |
| bool | Suscribirse a los subtítulos [get, set] |
Si el Suscriptor es suscribirse a los subtítulos (true) o no (false). El valor por defecto es el valor de «captions» del editor de la transmisión.Publisher.PublishCaptions |
|
| cadena | SubtítulosTraducciónIdioma [get, set] |
| El idioma de traducción de los subtítulos preferido por este suscriptor. Más... | |
| bool | Suscríbete al audio [get, set] |
Si el Suscriptor se está suscribiendo al audio (true) o no (false). |
|
| bool | Suscríbete al canal de vídeo [get, set] |
Si el Suscriptor es suscribirse a los vídeos (true) o no (false). |
|
| IVideoRenderer | VideoRenderer [get] |
| El reproductor de vídeo que utiliza este suscriptor. Más... | |
| cadena | Id [get] |
| El identificador único del Suscriptor. | |
| Talla | Resolución preferida [get, set] |
| La resolución preferida para la transmisión del suscriptor. Más... | |
| doble | Volumen de audio [get, set] |
| El volumen del audio del abonado. Más... | |
| flotante | Frecuencia de fotogramas preferida [get, set] |
| La frecuencia de fotogramas preferida para la transmisión del suscriptor. Más... |
| Eventos | |
| EventHandler | Conectado |
| Se invoca cuando la instancia se ha conectado correctamente al flujo y comienza a reproducir el contenido multimedia. | |
| EventHandler | Conexión de streaming interrumpida |
| Se invoca cuando se ha interrumpido la transmisión del suscriptor. Más... | |
| EventHandler | StreamReconnected |
| Se envía cuando se reanuda la transmisión del suscriptor (tras una desconexión temporal). Más... | |
| EventHandler< Argumentos del texto de la leyenda > | Texto de la leyenda |
| Se envía cuando el flujo del suscriptor recibe el texto de los subtítulos. | |
| EventHandler< VideoEventArgs > | Vídeo desactivado |
| Se activa cuando el abonado deja de recibir vídeo. Más... | |
| EventHandler< VideoEventArgs > | Compatible con vídeo |
| Se invoca cuando se inicia la transmisión de vídeo del suscriptor (cuando antes no había vídeo) o cuando se reanuda (tras haber desactivado el vídeo). Más... | |
| EventHandler< ErrorEventArgs > | Error |
| Se activa cuando un suscriptor no ha podido conectarse al servidor de la Video API de Vonage. | |
| EventHandler | Desactivar advertencia de vídeo |
| Se invoca cuando el enrutador multimedia de la Video API de Vonage detecta que la calidad de la transmisión se ha deteriorado y que el vídeo se desactivará si la calidad sigue empeorando. Más... | |
| EventHandler | Se ha desactivado la advertencia sobre el vídeo |
| Se invoca cuando el enrutador multimedia de la Video API de Vonage determina que la calidad de la transmisión ha mejorado hasta el punto de que la desactivación del vídeo ya no supone un riesgo inmediato. Más... | |
| EventHandler< VideoQualityChangedEventArgs > | Se ha modificado la calidad del vídeo |
| Se produce cuando se detecta un incidente relacionado con la calidad en el lado del abonado. Más... | |
| EventHandler< NetworkConditionChangedEventArgs > | Cambio en el estado de la red |
| Se produce cuando se detectan cambios en las condiciones de la red por parte del abonado. Más... | |
| EventHandler< SuscriptorMediaEnlaceEstadísticasArgumentos del evento > | MediaLinkEstadísticasActualizado |
| Se ejecuta periódicamente para generar informes sobre las estadísticas de enlaces multimedia del suscriptor. | |
| EventHandler< AudioLevelArgs > | Nivel de audio |
| Se envía periódicamente para informar del nivel de audio del abonado. | |
| EventHandler< AudioDataEventArgs > | AudioData |
| Se invoca periódicamente para comunicar los datos de audio del PCM del abonado. | |
| EventHandler< AudioNetworkStatsEventArgs > | Estadísticas de audio actualizadas |
| Se invoca cuando el suscriptor tiene estadísticas de audio que compartir. | |
| EventHandler< VideoNetworkStatsEventArgs > | Estadísticas de vídeo: Actualizado |
| Se activa cuando el suscriptor tiene estadísticas de vídeo que compartir. | |
| EventHandler< RtcStatsReportArgs > | RtcStatsReport |
| Enviado en respuesta a una convocatoria para GetRtcStatsReport(). |
Descripción detallada
Se utiliza para reproducir una transmisión de audio y vídeo en la sesión de la Video API de Vonage.
Utiliza el Subscriber.Builder clase para crear un Suscriptor Por ejemplo. Los suscriptores pueden conectarse para recibir contenidos multimedia cuando llamas al Session.Subscribe(Subscriber) método.
El Suscriptor La clase implementa la interfaz System.IDisposable. Asegúrate de llamar a la Dispose() método del Suscriptor objeto para que libere sus recursos cuando ya no lo necesites (por ejemplo, cuando el Suscriptor deja de reproducir el vídeo o cuando se cierra la aplicación o la ventana).
Documentación sobre la enumeración de miembros
VideoReason
| enum OpenTok.Subscriber.VideoReason : int |
Define los valores para el VideoEventArgs.Reason y VideoEventArgs.Reason propiedades.
| Encuestador | |
|---|---|
| Publicar vídeo | El incidente se produjo porque el emisor de la retransmisión comenzó o dejó de publicar el vídeo. |
| Suscriptor de vídeo | El evento se produjo porque el cliente local comenzó o dejó de suscribirse al servicio de vídeo. |
| Calidad | El incidente se debió a un cambio en la calidad de la transmisión de vídeo. Transmisión La calidad puede variar debido a las condiciones de la red o al uso de la CPU, tanto por parte del suscriptor como del editor. Cuando está activada, la función de recambio de audio genera un evento cuando el suscriptor interrumpe la transmisión de vídeo debido a una degradación de la calidad del vídeo, lo que hace que el suscriptor envíe el Vídeo desactivado evento. Cuando las condiciones mejoran, la transmisión de vídeo se reanuda, y el Suscriptor envía el Compatible con vídeo evento. Cuando se interrumpe la transmisión de vídeo, el suscriptor sigue recibiendo la transmisión de audio, si la hay. En las sesiones enrutadas, el origen de este comportamiento puede ser el enrutador multimedia de la Video API de Vonage (Suscriptor «Audio de reserva») o el cliente de publicación (Editorial «Audio Fallback»). Cuando el cliente de publicación es la fuente, la aplicación suscriptora recibe el correspondiente Session.StreamHasVideoChanged, lo que indica que el canal de vídeo al que se está suscrito ya no está activo. En general, este comportamiento sugiere una degradación de la red por parte del editor; sin embargo, las métricas comunicadas por los suscriptores pueden influir en las decisiones de recambio del editor, lo que puede complicar la determinación del origen exacto de la degradación. En las sesiones retransmitidas, el evento «calidad» se activa exclusivamente debido a la lógica interna de recambio de audio del editor (Recambio de audio del editor). A este no le sigue ningún evento adicional que indique que el vídeo está inactivo, ya que es posible que otros suscriptores con mejores condiciones de red sigan recibiendo la transmisión. Tenga en cuenta que, aunque el cambio a una alternativa proviene del editor en las sesiones retransmitidas, la degradación subyacente de la red puede producirse tanto en el lado del editor como en el del suscriptor. |
| Códec no compatible | El problema con el vídeo se produjo porque el vídeo de la transmisión del suscriptor se desactivó, ya que la transmisión utiliza un códec de vídeo (como H.264) que no es compatible con el dispositivo. |
| CodecChange | Ha cambiado el códec de vídeo de la transmisión. |
| Cambio de resolución | Cambio en la resolución del vídeo o en el número de capas. Esto puede deberse a limitaciones en la tasa de bits, a la adaptación del codificador, a cambios en la fuente de la cámara (como cambiar de cámara o modificar la resolución de entrada) o a cambios en la configuración. No implica necesariamente una pérdida de calidad. |
| Interrupción del vídeo | La transmisión de vídeo se ha interrumpido. Esto indica que la transmisión de vídeo al suscriptor se ha interrumpido durante un periodo prolongado (normalmente, más de cinco segundos). Cuando se produce una interrupción en la transmisión de vídeo, las aplicaciones pueden comprobar el Estadísticas de vídeo: Actualizado para identificar factores que puedan influir, como una baja velocidad de transmisión o una latencia elevada. |
Documentación sobre funciones de miembro
GetRtcStatsReport()
| void OpenTok.Subscriber.GetRtcStatsReport | ( | ) |
Obtiene el informe de estadísticas de RTC del suscriptor. Se trata de una operación asíncrona. Cuando las estadísticas estén disponibles, el RtcStatsReport se envía el mensaje.
Véase también Estadísticas de audio actualizadas, Estadísticas de vídeo: Actualizadoy Publisher.GetRtcStatsReport().
Documentación inmobiliaria
Volumen de audio
| --- | double OpenTok.Subscriber.AudioVolume |
El volumen del audio del abonado.
El volumen de audio del abonado, entre 0 y 100. Al establecer el valor, si no se encuentra dentro de este intervalo, se ajustará a él.
El valor por defecto es 100.
SubtítulosTraducciónIdioma
| --- | cadena OpenTok.Subscriber.CaptionsTranslationLanguage |
El idioma de traducción de los subtítulos preferido por este suscriptor.
Esta es una función en fase beta.
Esta configuración solo surte efecto cuando los subtítulos están activados. Establece este valor en un código de idioma BCP-47 compatible para recibir subtítulos traducidos, o null para desactivar la traducción. El valor por defecto es null (no hay traducción configurada).
Los códigos de idioma compatibles se definen en la especificación de la API del servidor.
Frecuencia de fotogramas preferida
| --- | float OpenTok.Subscriber.PreferredFramerate |
La frecuencia de fotogramas preferida para la transmisión del suscriptor.
Limitar la frecuencia de fotogramas y la resolución del vídeo (Resolución preferida) reduce el uso de la red y de la CPU en el cliente suscrito. Es posible que te interese utilizar una resolución más baja en función de las dimensiones del vídeo del suscriptor en la aplicación. También es posible que te interese utilizar una frecuencia de fotogramas o una resolución más baja para los suscriptores de una transmisión que sea menos importante (y más pequeña) que otras transmisiones.
Esta propiedad solo se aplica al suscribirse a un flujo que utilice el función de vídeo escalable. Hay vídeo escalable disponible:
- Solo en las sesiones que utilizan el enrutador multimedia de la Video API de Vonage (sesiones con el modo multimedia enrutado).
- Solo para transmisiones publicadas por clientes que admitan vídeo escalable (consulta la documentación de función de vídeo escalable).
En las transmisiones que no utilizan vídeo escalable, la configuración de esta propiedad no tiene ningún efecto.
Nota: La frecuencia de fotogramas de las transmisiones de vídeo escalables se ajusta automáticamente para cada suscriptor, en función de las condiciones de la red y del uso de la CPU, incluso si no se configura esta propiedad. Configura esta propiedad si deseas establecer una frecuencia de fotogramas máxima para este suscriptor.
Las velocidades de fotogramas disponibles se basan en el valor de la velocidad de fotogramas máxima disponible para la transmisión. Cuando se configura la velocidad de fotogramas preferida para el suscriptor, el SDK de Windows de la Video API selecciona la mejor velocidad de fotogramas disponible que más se acerque a la velocidad preferida, en función del ancho de banda del cliente y de las limitaciones de la CPU.
Las velocidades de fotogramas reales disponibles dependen, de forma dinámica, de los recursos de red y de la CPU de que disponga el editor.
Resolución preferida
| --- | Tamaño OpenTok.Subscriber.PreferredResolution |
La resolución preferida para la transmisión del suscriptor.
La resolución preferida para la transmisión del suscriptor.
Limitar la resolución y la frecuencia de fotogramas del vídeo (Frecuencia de fotogramas preferida) reduce el uso de la red y de la CPU en el cliente suscrito. Es posible que te interese utilizar una resolución más baja en función de las dimensiones del vídeo del suscriptor en la aplicación. También es posible que te interese utilizar una frecuencia de fotogramas o una resolución más baja para los suscriptores de una transmisión que sea menos importante (y más pequeña) que otras transmisiones.
Esta propiedad solo se aplica al suscribirse a un flujo que utilice el función de vídeo escalable. Hay vídeo escalable disponible:
- Solo en las sesiones que utilizan el enrutador multimedia de la Video API de Vonage (sesiones con el modo multimedia enrutado).
- Solo para transmisiones publicadas por clientes que admitan vídeo escalable (consulta la documentación de función de vídeo escalable).
En las transmisiones que no utilizan vídeo escalable, la configuración de esta propiedad no tiene ningún efecto.
Nota: La resolución de las transmisiones de vídeo escalables se ajusta automáticamente para cada suscriptor, en función de las condiciones de la red y del uso de la CPU, incluso si no se configura esta propiedad. Configura esta propiedad si deseas establecer una resolución máxima para este suscriptor.
No todas las resoluciones están disponibles para los suscriptores. Cuando estableces la resolución preferida, el SDK de Windows de la Video API selecciona la mejor resolución disponible que se ajuste a tus limitaciones. Las resoluciones disponibles dependen del ancho y la altura máximos que el Editorial conjuntos para el flujo, que son devueltos por la función Stream.Width y Altura del arroyo propiedades del Transmisión objeto. Cada una de las resoluciones disponibles para una transmisión utilizará la misma relación de aspecto.
VideoRenderer
| --- | IVideoRenderer OpenTok.Subscriber.VideoRenderer |
El reproductor de vídeo que utiliza este suscriptor.
Configura el renderizador de vídeo pasando el parámetro VideoRenderer al llamar al constructor de `Subscriber(Context, Stream, IVideoRenderer)`.
Documentación del evento
Cambio en el estado de la red
| EventHandler<NetworkConditionChangedEventArgs> OpenTok.Subscriber.NetworkConditionChanged |
Se produce cuando se detectan cambios en las condiciones de la red por parte del abonado.
Este evento se activa cuando se producen cambios significativos en el estado de la red, y proporciona estadísticas sobre los enlaces de red junto con el motivo del cambio.
Conexión de streaming interrumpida
| EventHandler OpenTok.Subscriber.StreamDisconnected |
Se invoca cuando se ha interrumpido la transmisión del suscriptor.
Al ejecutarse este método, es posible que quieras mostrar una notificación en la interfaz de usuario para informar al usuario de que la transmisión de audio y vídeo se ha desconectado temporalmente y de que la aplicación está intentando volver a conectarse a la transmisión.
Si el cliente se vuelve a conectar a la transmisión, los suscriptores envían el StreamReconnected evento. De lo contrario, el Sesión El objeto envía el Session.StreamDropped evento.
StreamReconnected
| EventHandler OpenTok.Subscriber.StreamReconnected |
Se envía cuando se reanuda la transmisión del suscriptor (tras una desconexión temporal).
El Suscriptor envía este evento después de enviar el Conexión de streaming interrumpida evento.
Vídeo desactivado
| EventHandler<VideoEventArgs> OpenTok.Subscriber.VideoDisabled |
Se activa cuando el abonado deja de recibir vídeo.
Compruebe el reason propiedad de los argumentos del evento que indica el motivo por el que se detuvo el vídeo.
Desactivar advertencia de vídeo
| EventHandler OpenTok.Subscriber.VideoDisableWarning |
Se invoca cuando el enrutador multimedia de la Video API de Vonage detecta que la calidad de la transmisión se ha deteriorado y que el vídeo se desactivará si la calidad sigue empeorando.
Si la calidad sigue empeorando, el suscriptor desactiva el vídeo y el Suscriptor envía el mensaje «VideoDisabled». Si la calidad de la transmisión mejora, el Suscriptor envía el evento «VideoDisableWarningLifted».
Esta función solo está disponible en las sesiones que utilizan el enrutador multimedia de la Video API de Vonage (sesiones con el modo multimedia configurado en «enrutado»), y no en las sesiones con el modo multimedia configurado en «retransmitido». (Véase El OpenTok Media Router y los modos multimedia).
Este método se invoca principalmente cuando la calidad de la conexión se deteriora.
Se ha desactivado la advertencia sobre el vídeo
| EventHandler OpenTok.Subscriber.VideoDisableWarningLifted |
Se invoca cuando el enrutador multimedia de la Video API de Vonage determina que la calidad de la transmisión ha mejorado hasta el punto de que la desactivación del vídeo ya no supone un riesgo inmediato.
Esta función solo está disponible en las sesiones que utilizan el enrutador multimedia de la Video API de Vonage (sesiones con el modo multimedia configurado en «enrutado»), y no en las sesiones con el modo multimedia configurado en «retransmitido». (Véase El OpenTok Media Router y los modos multimedia).
Este método se activa principalmente cuando mejora la calidad de la conexión.
Compatible con vídeo
| EventHandler<VideoEventArgs> OpenTok.Subscriber.VideoEnabled |
Se invoca cuando se inicia la transmisión de vídeo del suscriptor (cuando antes no había vídeo) o cuando se reanuda (tras haber desactivado el vídeo).
Compruebe el reason propiedad de los argumentos del evento que indica el motivo por el que se activó el vídeo.
Se ha modificado la calidad del vídeo
| EventHandler<VideoQualityChangedEventArgs> OpenTok.Subscriber.VideoQualityChanged |
Se produce cuando se detecta un incidente relacionado con la calidad en el lado del abonado.
Este evento se activa cuando se producen cambios significativos en la calidad de la transmisión de vídeo del suscriptor, como la detección de una interrupción del vídeo (pausa) o un cambio de códec.
La implementación actual solo activa este evento en caso de interrupciones de vídeo o cambios de códec. Los bloqueos se registran internamente y se reflejan en las estadísticas, pero no activan este evento de forma individual debido a su corta duración y alta frecuencia. Solo se activa una llamada de retorno cuando se detecta una pausa (sin fotogramas reproducidos durante más de 5 segundos), ya que esto representa una interrupción más significativa de la reproducción.
El VideoReason Este valor especifica la causa del evento y sigue este orden de prioridad: VideoInterruption, CodecChange.
Este evento se diferencia de Vídeo desactivado y Compatible con vídeo en el sentido de que informa de cambios relacionados con la calidad, en lugar de simples transiciones de entrada y salida de pista. El Vídeo desactivado y Compatible con vídeo Los eventos indican cuándo se ha desactivado o activado la pista de vídeo del suscriptor (por ejemplo, debido a un cambio automático a audio o a actualizaciones de las propiedades de la transmisión). Por el contrario, este evento proporciona información de diagnóstico sobre las causas de la pérdida de calidad, como los bloqueos, el número de pausas y las estadísticas de vídeo actualizadas.
Este evento tiene en cuenta cualquier interrupción de vídeo que dure cinco segundos o más. En situaciones como el cambio a audio de reserva o la desactivación del vídeo, la interrupción también se registra como una pausa en las estadísticas, y puede generarse el correspondiente evento de cambio de calidad.
Las aplicaciones pueden utilizar este evento para responder a problemas de calidad, como actualizar los indicadores de la interfaz de usuario, registrar datos de telemetría o notificar a los usuarios.