OpentTok (iOS) 如何订阅 hasAudio 流变化

OpentTok (iOS) How to subscribe to hasAudio stream changes

我需要在 TokBox iOS SDK 中找到一种可能性,以查明订阅的流是否动态/通过事件具有音频。 (OTStream.hasAudio)

OTSubscriberDelegate 提供订阅视频状态的回调 subscriberVideoEnabled/Disabled 但我找不到任何音频。

此处为 TokBox 开发者布道师。

对于 iOS SDK,我们不提供流 属性 更改的委托,但您可以实现 key value observing(KVO) 来检查观察到的流 属性已经改变。

在下面的示例中,我为 hasAudio 流 属性 添加了一个观察者,观察者将在它发生变化时打印旧值和新值。

 func session(_ session: OTSession, streamCreated stream: OTStream) {
   let hasAudioObservation: NSKeyValueObservation = stream.observe(\.hasAudio, options: [.old, .new]) { object, change in
     guard let oldValue = change.oldValue else { return }
     guard let newValue = change.newValue else { return }
     print("Old stream value: \(oldValue)")
     print("New stream value: \(newValue)")
}