大多数浏览器和
Developer App 均支持流媒体播放。
-
语音识别改进
语音识别程序现在可以在 iOS 或 macOS 设备本地使用,无需接入网络。了解如何在您的 app 中整合文字语音转换支持,同时保护隐私并消除基于服务器的处理的各种限制。语音识别 API 也得到了增强,可提供语速、停顿时长和语音质量等更加丰富的分析功能。
资源
相关视频
WWDC23
WWDC19
WWDC16
-
下载
大家好 我是 Neha Agrawal 是一名语音识别软件工程师
2016 年 我们推出了 语音识别框架供开发者使用 以满足他们的语音识别需求 如果你对这一框架 还不了解 我强烈建议你 观看这场关于语音识别 API 的会议 主讲人是我的同事 Henry Mason
本视频中 我们会探讨 这些 API 取得的新进展 我们现在开始
语音识别现已支持 macOS 既支持 AppKit 也支持 Mac 上的 iPad App
而且和 iOS 一样支持五十多种语言
你需要用户授权 访问麦克风 从而录制语音 用户还需要启用 Siri
除了在 macOS 上支持 语音识别外 我们现在还 允许开发者 为重视隐私的 App 在设备本地运行语音识别 支持设备本地运行 用户的数据就不会传到 Apple 的服务器
你的 App 不再需要 依赖网络连接 也不会消耗流量
但同时 要权衡许多因素 在设备本地运行时 识别很准确 在服务器上运行 效果更好 因为可以连续学习 但服务器上的语音识别 会受请求数量和 语音时长的限制 而在设备本地识别 则不会受到这些限制
服务器支持的 语言种类远大于 设备本地识别
而且 如果服务器不可用 且支持设备本地识别 服务模式会自动 变为设备本地识别 所有配备 A9 或更新处理器的 iPhone 和 iPad 以及所有的 Mac 均支持此功能
设备本地识别 现支持超过 10 种语言 接下来 我们来看看如何 用代码实现设备本地语音识别 要识别预先录制的音频 我们首先创建 SFSpeechRecognizer 对象 并检查语音识别 能否用于这一对象
如果语音识别可用 我们就可以 使用音频文件 URL 创建 识别请求 并开始识别
要使用设备本地识别 首先要检查 设备是否支持 本地识别 然后设置请求对象的 requiresOnDeviceRecognition 属性
我们看过了这部分代码 接下来看看得到的结果 从 iOS 10 开始 识别结果中 提供了语音转写 不同版本的识别文本 置信水平和时间信息
现在我们要 进一步扩充语音识别结果
语音速率按每分钟词数衡量 一个人说话的快慢程度
平均停顿时长衡量 词与词之间停顿的平均长度 语音分析特征 包含语音特征的 不同参数
语音分析可以 帮助理解四种特征 基频微扰衡量语音中音高的变化 你可以借助语音分析 用百分比的形式 理解语音中基频微扰的程度
振幅微扰衡量语音中 音量大小的变化 你可以 借助语音分析 以分贝为单位 理解语音中振幅微扰的程度 我们来听一些音频样本 来理解高基频微扰 和高振幅微扰 音频是什么样的 首先 我们来听一段 正常语音 Apple
现在来听一段修改过的语音 00:04:25.956 --> 00:04:26.846 A:middle Apple
下一项特征是音高 音高衡量的是 音调的高低 一般来说 女性和儿童的音高更高
发音则用来衡量 语音中发音的位置 语音分析特征 因人而异 也随时间和场合变化 例如 如果讲话人较为疲惫 那么语音分析特征 便与不疲惫时有所不同 而且 随着讲话人的 说话对象发生变化 这些特征也会随之改变
这些新的结果是 SFTranscription 对象的一部分 而且会定期提供 我们会在最后 也就是 在 isFinal 标志发送后提供 但也可以在此之前看到 你可以如幻灯片所示 访问 speakingRate 和 averagePauseDuration
要访问语音分析 你要先访问 SFTranscription 的 segment 对象 之后如幻灯片所示 进行访问
总而言之 我们有三项重大进展 你现在可以在 macOS 中编写 使用语音识别 API 的 App
语音识别可以在设备本地运行 更好地保护隐私 最后 你可以访问 语音分析特征 从而更好地理解语音特征
若要了解更多信息 请访问本会议的网站 感谢观看
-
-
正在查找特定内容?在上方输入一个主题,就能直接跳转到相应的精彩内容。
提交你查询的内容时出现错误。请检查互联网连接,然后再试一次。