如何利用linux终端获取.raw音频文件的采样率、比特率等文件信息?Soxi为.wav文件工作,但它不适用于.raw。
发布于 2017-03-10 21:48:28
如果你的生活依赖于发现一个答案,你可以做出一些假设来拆解未知的事物.但是没有自动的方法,因为丢失的标题会给你简单的答案.
这个名为audacity的音频分析工具允许您打开一个原始文件,进行一些猜测,并播放轨道http://www.audacityteam.org。
在audacity文件->导入->原始数据..。

以上设置是典型的音频从CD .玩具与尝试立体声与单声道为起点。
这些选择列表小部件给你发现PCM音频格式的空间,因为源音频在正确呈现时是可识别的.如果实际的声音是噪音的话
然而,如果您需要一个编程方法,然后滚动您自己的解决方案来问这些同样的问题出现在上面的窗口是可能的.这是你所需要的,还是大胆对你有用?我们可以沿着写代码的道路去玩@Frank Lauterwald的评论中提到的未知数
要以编程的方式开始发现这个信息,如果二进制原始音频是16位,那么每个音频示例(音频曲线上的点)将消耗PCM文件的两个字节。对于mono音频,接下来的两个字节将是您的下一个示例,但是如果它的立体声,那么下面这两个字节将是来自另一个通道的示例。如果超过两个频道,那就重复一遍。典型的音频是小endian。在呈现音频时,采样率很重要,而不是在以编程方式解析原始字节时。一种方法是创建一个带有WAV头的输出文件,然后是源PCM数据。将猜测中的答案填充到标题中。通过这种方式,您可以监听这个输出文件,以帮助确认您的猜测。
下面是一个示例500 k单声道音频文件,该文件签名为16位,可以导入audacity,或用作输入您自己的识别代码。
https://stackoverflow.com/questions/42715569
复制相似问题