首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >iOS 10: SFSpeechRecognizer和Twilio TVILocalAudioTrack

iOS 10: SFSpeechRecognizer和Twilio TVILocalAudioTrack
EN

Stack Overflow用户
提问于 2017-04-24 18:41:07
回答 1查看 239关注 0票数 1

我正在开发一个在Swift中的iOS应用程序,它试图通过转录会话。我成功地使用AVAudioEngine()和SFSpeechRecognizer()转录了会话。

代码语言:javascript
复制
    // MARK: Speech Helper Methods
func recordAndRecognizeSpeech() {
    guard let node = audioEngine.inputNode else { return }
    let recordingFormat = node.outputFormat(forBus: 0)
    node.installTap(onBus: 0, bufferSize: 1024, format: recordingFormat) { buffer, _ in
        self.request.append(buffer)
    }

    audioEngine.prepare()
    do {
        try audioEngine.start()
    } catch {
        return print(error)
    }

    guard let myRecognizer = SFSpeechRecognizer() else {
        return
    }
    if !myRecognizer.isAvailable {
        return
    }

    recognitionTask = speechRecognizer?.recognitionTask(with: request, resultHandler: { result, error in
        if let result = result {
            let bestString = result.bestTranscription.formattedString
        } else if let error = error {
            print(error)
        }
    })
}

现在我想尝试把这个带到视频聊天中去。因此,我遵循Twilio,找到了在github上,并在适当的情况下设置了一切(我使用了CallKit版本,这并不重要)。但是,我在Twilio视频通话中可以使用的音频轨道不是AVAudioEngine音轨,而是TVILocalAudioTrack。这是Twilio的一个特定类型。

TVILocalAudioTrack来了,的文档,但我不知道如何将其插入SFSpeechRecognizer。

可能的替代

当有人在Twilio房间时启动AVAudioEngine() (我不认为我可以像Twilio那样)--如果有人在这方面有建议的话,那就太好了。

也许斯威夫特不适合这个项目?懒散!

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2017-04-27 00:20:39

这一点目前还不能用TwilioV1.0beta 14实现,它需要访问音频缓冲区,而音频缓冲区不能通过Twilio的API访问。

有关更多详细信息,请参阅这个吉特布问题

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/43595482

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档