Swift

Controle o áudio por meio de eventos de sessão

Por fim, use os métodos de delegação de sessão do Vonage para controlar o toque. Após publicar o vídeo, o doPublish O método aciona o início do toque. Quando o fluxo com autoinscrição se conecta, o subscriberDidConnectToStream O método interrompe o toque.

extension VonageVideoManager: OTPublisherDelegate {
    func publisher(_ publisher: OTPublisherKit, streamCreated stream: OTStream) {
        print("Publishing")
        // play the ringtone for 10 seconds , it is fun...
        // doSubscribe method will stop it later
        DispatchQueue.main.asyncAfter(deadline: .now() + 10) {
            self.doSubscribe(stream)
        }
    }
    
    func publisher(_ publisher: OTPublisherKit, streamDestroyed stream: OTStream) {
        print("publisher \(publisher) streamDestroyed \(stream)")
        
        if let subStream = subscriber?.stream, subStream.streamId == stream.streamId {
            cleanupSubscriber()
        }
        
        cleanupPublisher()
    }
    
    func publisher(_ publisher: OTPublisherKit, didFailWithError error: OTError) {
        print("publisher didFailWithError \(error)")
        cleanupPublisher()
    }
}

extension VonageVideoManager: OTSubscriberDelegate {
    
    func subscriberDidConnect(toStream subscriberKit: OTSubscriberKit) {
        print("subscriberDidConnectToStream (\(subscriber?.stream?.connection.connectionId ?? ""))")
        
        // Stop ringtone from playing, as the subscriber will connect shortly
        myAudioDevice?.stopRingtone()
        guard let view = self.subscriber?.view else { return }
        subView = AnyView(Wrap(view))
    }
    
    func subscriber(_ subscriber: OTSubscriberKit, didFailWithError error: OTError) {
        print("Subscriber failed: \(error.localizedDescription)")
    }
}

Driver de áudio personalizado

Aprenda a usar um driver de áudio personalizado para personalizar o áudio dos fluxos do emissor e do assinante. Você utilizará o driver de áudio personalizado quando quiser iniciar e interromper a reprodução de seu próprio arquivo de áudio, bem como realizar qualquer ação que não faça parte do comportamento padrão do chat de vídeo ao vivo fornecido pelo SDK.

Disponível em:
Kotlin Swift
Etapas
1
Introdução
2
Introdução
3
Criando um novo projeto
4
Incorporando o SDK de vídeo da Vonage
5
Configurando a autenticação
6
Visão geral
7
Criar a classe do driver de áudio personalizado
8
Implementar a lógica “Reproduzir toque”
9
Implementar a lógica “Parar o toque”
10
Integrar com o Vonage Video Manager
11
Controle o áudio por meio de eventos de sessão
12
Como funciona
13
Conclusão