gpt4 book ai didi

c - 如何使用 fread 和 fwrite 从文件中读取 pcm 样本?

转载 作者:太空宇宙 更新时间:2023-11-03 23:56:28 40 4
gpt4 key购买 nike

我想使用 fread 从文件中读取 pcm 样本,并想确定样本的信号强度。我该怎么做?

对于读取,有多少字节构成 1 pcm 样本?我可以一次读取超过 1 pcm 的样本吗? 这适用于 WAV 和 AAC 文件。

最佳答案

您必须了解 WAV 文件(甚至 AAC 文件)并不完全相同。我只会解释 WAV 文件,希望您能了解 AAC 文件的情况。正如您所指出的,WAV 文件具有 PCM 编码数据。然而,它可以是:8 位、16 位、32 位、...单声道、立体声、5.1、...、8kHz、16kHz、44.1kHz 等。根据这些值,您必须解释数据(例如,当使用 fread()-函数) 不同地读取它时。因此 WAV 文件有一个标题。您必须先以标准方式阅读该标题(我不知道详细信息)。然后你就知道如何读取实际数据了。因为它不是那么容易,我建议你使用那里的库,为你读取 WAV 文件,例如http://www.mega-nerd.com/libsndfile/ .当然你也可以google或者用SO找其他的。或者你用困难的方法来找出 WAV 文件头的样子并首先解码该数据,然后继续处理实际的 PCM 编码数据。

关于c - 如何使用 fread 和 fwrite 从文件中读取 pcm 样本?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5269278/

40 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com