Swift

Integración con Vonage Video Manager

Ahora que el controlador está creado, debes indicarle al SDK de Vonage que utilice tu controlador en lugar del predeterminado. Esto se hará en tu VonageVideoManager.swift.

import OpenTok
import SwiftUI

final class VonageVideoManager: NSObject, ObservableObject {
    let kAppId = "YOUR_APP_ID"
    let kSessionId = "YOUR_SESSION_ID"
    let kToken = "YOUR_TOKEN"

    private var myAudioDevice: AudioDeviceRingtone?

    /**
     * The setup needs to be called in order to activate the VonageVideoMAnager
     * it can be used e.g. in the .task { } method, when the view gets loaded
     **/
    public func setup() {
        // 1. Initialize your custom audio device with a ringtone file
        if let path = Bundle.main.path(forResource: "bananaphone", ofType: "mp3") {
            myAudioDevice = AudioDeviceRingtone(ringtone: URL(fileURLWithPath: path))
            // 2. Set the global audio device for Vonage SDK
            // IMPORTANT: This must be done before creating a session
            OTAudioDeviceManager.setAudioDevice(myAudioDevice)
        }
        doConnect()
    }

    // ... Session connection logic (doConnect, etc) ...
    
}

Controlador de audio personalizado

Aprenda a utilizar un controlador de audio personalizado para personalizar el audio de la transmisión del editor y del suscriptor. Utilizará el controlador de audio personalizado cuando desee iniciar y detener el audio reproducir su propio archivo de audio y hacer cualquier cosa fuera del comportamiento predeterminado del chat de vídeo en directo proporcionado por el SDK.

Disponible en:
Kotlin Swift
Pasos
1
Introducción
2
Primeros pasos
3
Crear un nuevo proyecto
4
Añadir el SDK de vídeo de Vonage
5
Configuración de la autenticación
6
Visión general
7
Crear la clase de controlador de audio personalizado
8
Implementar la lógica "Reproducir tono de llamada
9
Implementar la lógica "Detener tono de llamada
10
Integración con Vonage Video Manager
11
Control de audio mediante eventos de sesión
12
Cómo funciona
13
Conclusión