0 audio core-audio audio-streaming audiotoolbox ios
我无法理解这句话"要使用解析器,您将数据从流式音频文件传递到解析器.当解析器具有完整的音频数据包或完整属性时,它会调用回调函数.然后你的回调处理解析后的数据 - 比如播放或写入磁盘." 我不知道什么是"完整包"和"完整属性".我需要你的帮助,谢谢.
音频文件的数据逐渐增加.您将数据提供给解析器.一旦"足够"数据存在,您将通过用户提供的回调返回数据.
类比:您希望逐行读取文本文件,并在阅读时提供解析器数据字节.一行中有多少字节?它取决于许多因素(例如,文本文件的内容是什么?它的编码是什么?有什么方法可以预测行长度?).在这种情况下,当有足够的数据返回下一行时,会通知您.
因此,音频文件流API是一种抽象,能够处理许多音频文件格式.某些格式以不同大小的字节计数存储其样本数据(或其他数据/属性).PCM格式(例如)通常是连续的,由文件头部指定的宽度交错值 - 但压缩格式往往具有较大的数据包大小.此外,一些属性/数据包是可变长度的,因此您无法合理地知道何时根据您输入的数据量向转换器询问数据 - 解析,解码和转换是API的工作,我向您保证实施如果您需要基于二进制输入进行解码和拉取,则所有这些文件格式的解析器/解码器/转换器将花费很长时间.
因此,当您接收/读取数据时,您会推送数据,当您有"可用"金额时,它会推送给您.
| 归档时间: |
|
| 查看次数: |
796 次 |
| 最近记录: |