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

Erfahren Sie, wie Sie einen benutzerdefinierten Audiotreiber verwenden können, um die Audiodaten des Herausgebers und der Abonnenten anzupassen. Sie werden den benutzerdefinierten Audiotreiber verwenden, wenn Sie das Audio starten und stoppen und Ihre eigene Audiodatei abspielen möchten. Wenn Sie etwas anderes als das SDK-Standardverhalten für Live-Videochats mit Audio machen möchten, verwenden Sie benutzerdefinierte Audiotreiber.

Verfügbar am:
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