如何将 G.723.1 类型的音频文件转换为 wav 格式?

She*_*har 4 audio codec sox audio-conversion

我有几个带有.wav扩展名的音频文件。我尝试使用soxi <foo.wav>命令获取有关此文件的信息,但出现以下错误:

soxi FAIL 格式:无法打开输入文件 foo.wav':未知的 WAV 文件编码(类型 a100)

所以我使用MediaInfo工具来获取有关此文件的更多信息,我获得了有关此文件的以下信息:

一般的

格式 : 波浪

文件大小:51.4 KiB

时长 : 100 万 18 秒

比特率:5 339 bps

声音的

格式:G.723.1

编解码器 ID : A100

持续时间 : 100 万 18 秒

比特率:5 328 bps

频道:1个频道

采样率 : 8 000 Hz

流大小:51.3 KiB (100%)

根据此信息,此文件似乎具有G.723.1格式,而 SOX 无法理解此格式。

所以我想知道:

  • 我关于 SOX 不支持此类文件的结论是否正确?
  • 如果 SOX 不支持这种类型的文件,那么安装一些编解码器会有帮助吗?我lame在几个网页上看到过命令,但不确定它是否对我有帮助。

请求超级用户帮助!

提前致谢 !

chi*_*rlu 6

是的,SoX 不支持 G.723.1。安装可选包也无济于事。

正如 Jet 所说,FFmpeg 应该能够读取文件(根据支持的音频编解码器列表)。如果您只想将音频转换为不同的格式,应该这样做:

ffmpeg -i foo.wav -c some_codec -f some_format output_file_name
Run Code Online (Sandbox Code Playgroud)

您可以分别使用ffmpeg -codecs和来查看支持的编解码器和格式的列表ffmpeg -formats

如果你想用 SoX 做一些进一步的处理,你可以使用 FFmpeg 对其进行解码并将结果通过管道传输到 SoX 中,如下所示:

ffmpeg -i foo.wav -f sox - | sox -p output_file_name effects ...
Run Code Online (Sandbox Code Playgroud)