Swift

Erstellen Sie die benutzerdefinierte Audiotreiberklasse

Kopieren Sie zunächst die Datei OTDefaultAudioDevice.switf zu Ihrem Projekt hinzufügen. Diese Klasse übernimmt die schwere Arbeit des Audio-Routings.

Erstellen Sie dann eine neue Swift-Datei mit dem Namen AudioDeviceRingtone.swift. Wir werden Logik hinzufügen, um eine AVAudioPlayer.

import OpenTok
import AVFoundation
import AudioToolbox // Required if you want vibration

class AudioDeviceRingtone: OTDefaultAudioDevice, AVAudioPlayerDelegate {
    
    // MARK: - Properties
    private var audioPlayer: AVAudioPlayer?
    private var vibratesWithRingtone: Bool = false
    private var vibrateTimer: Timer?
    private let vibrateFrequencySeconds: TimeInterval = 1.0
    private var ringtoneURL: URL?
    /**
     * This property is only needed later, because we can't always do as requested immediately. 
     * We are defering incoming callbacks from OTAudioBus until we aren't playing anything back
     * (check the sample app for details)
     */
    private var deferredCallbacks: [String] = [] 

    // MARK: - Initialization
    init(ringtone url: URL) {
        self.ringtoneURL = url
        super.init()
    }
    
    // MARK: - Helper: Vibrate Logic
    @objc private func buzz(_ timer: Timer) {
        if vibratesWithRingtone {
            AudioServicesPlaySystemSound(kSystemSoundID_Vibrate)
        }
    }
}

Benutzerdefinierter Audiotreiber

Hier erfahren Sie, wie Sie einen benutzerdefinierten Audiotreiber verwenden, um den Audio-Stream des Herausgebers und der Teilnehmer anzupassen. Sie werden den benutzerdefinierten Audiotreiber verwenden, wenn Sie die Audio-Wiedergabe Ihrer eigenen Audiodatei starten und stoppen und alles tun möchten, was über das Standardverhalten des vom SDK bereitgestellten Live-Video-Chats hinausgeht.

Verfügbar am:
Kotlin Swift
Schritte
1
Einführung
2
Erste Schritte
3
Ein neues Projekt erstellen
4
Hinzufügen des Vonage Video SDK
5
Authentifizierung einrichten
6
Übersicht
7
Erstellen Sie die benutzerdefinierte Audiotreiberklasse
8
Implementierung der "Klingelton abspielen"-Logik
9
Implementierung der Logik "Klingelton anhalten
10
Integration mit Vonage Video Manager
11
Audio über Sitzungsereignisse steuern
12
Wie es funktioniert
13
Schlussfolgerung