【发布时间】:2020-01-21 22:17:46
【问题描述】:
我只想拥有 .wav 文件的数据块并排除所有其他块,即 riff 标头。
let voiceData = try? Data(contentsOf: soundUrl).advanced(by: 44)
我确实尝试过,但由于某种原因,在实际音频之前仍有一些包袱。谁能帮我解决这个问题。如果有一种有效的方法来读取 .wav 文件并且只包含数据部分?
【问题讨论】:
-
如果去掉header,就不再是wav文件了。你能解释一下你真正想要做什么吗? iOS 会给你一个 PCM 版本,那你为什么要弄乱数据呢?
-
我向其发送音频文件的服务器不接受任何标题,如果有则抛出错误。我知道这是一个棘手的情况,但我没有选择剥离标题。
-
好吧,正如我所说,您可以很容易地转换为原始 PCM 数据。但是,如果您删除标头,服务器将不知道这是多少个频道,它们是否交错,比特率是多少等等等等。您要求做的事情没有意义。没有描述符的原始声音数据没有任何用处,它只是一堆无法解释的字节。