Publicación de un flujo en la sesión
Cuando la aplicación se conecta a la sesión de Vonage Video, queremos que publique una transmisión de audio y video en la sesión, usando la cámara y el micrófono:
- Añadir un
publishera la clase MainActivity (después de la declaración de la propiedadsessionpropiedad):
La clase Publisher está definida en el SDK de Android.
- Modificar la aplicación del
SessionListener.onConnected()para incluir código para publicar un flujo en la sesión:
El código anterior utiliza Publisher.Builder() para instanciar un objeto Publisher. El constructor toma un parámetro: el contexto asociado con este proceso (aunque puede ser diferente en una aplicación de producción).
En Publisher.setPublisherListener() establece el objeto que implementará la interfaz PublisherListener. Esta interfaz incluye métodos de devolución de llamada en respuesta a eventos relacionados con el editor.
Importante: El contexto utilizado depende del caso de uso específico. Sin embargo usualmente se desea que la sesión viva fuera de la Actividad (por ejemplo, entre actividades). Para aplicaciones de producción, es conveniente usar contexto de aplicación en lugar de contexto de actividad.
A continuación, el código pasa el objeto Publisher como parámetro de la función Session.publish() método. Este método publica un flujo de audio-vídeo en la sesión, utilizando la cámara y el micrófono del dispositivo Android. (Tenga en cuenta que en un dispositivo virtual Android, el SDK de Android utiliza un vídeo de prueba al publicar un flujo).
El objeto Publisher tiene un getView() que devuelve un objeto Android View. Esta vista muestra el vídeo capturado desde la cámara del dispositivo. El código añade esta vista como una subvista del objeto publisherViewContainer objeto.
- Para registrar eventos, añada un
publisherListenera la propiedadsessionListenerde laMainActivity:
Tenga en cuenta que la clase Publisher extiende la clase PublisherKit (también definida por el SDK de Android). La clase PublisherKit es una clase base que puedes utilizar para crear editores avanzados, (como editores que utilizan capturadores o renderizadores de vídeo personalizados).
Esto implementa el PublisherListener métodos:
onStreamCreated(publisherKit, stream)- Se ejecuta cuando el editor comienza a transmitir a la sesión.onStreamDestroyed(publisherKit, stream)- Se llama cuando el editor deja de transmitir a la sesión.onError(error)- Llamada cuando el cliente falla al publicar en la sesión. EnOpentokErrorse pasa al método.
Videochat básico
Conoce los conceptos básicos de la plataforma de la Video API de Vonage, incluyendo cómo los usuarios pueden comunicarse a través de video, voz y mensajería. Explora un flujo básico de la Video API de Vonage.