使用ffmpeg将wav文件转换为g729文件

时间:2018-02-22 05:04:15

标签: ffmpeg

我在Windows笔记本电脑中使用ffmpeg.wav转换为.g729格式。我花了一些时间在文档,教程和一些线程上,直到现在都没有成功。

以下是我的ffmpeg版本详细信息:

ffmpeg version N-89674-g57d0c24132 Copyright (c) 2000-2018 the FFmpeg developers built with gcc 7.2.0 (GCC) configuration: --enable-gpl --enable-version3 --enable-sdl2 --enable-bzlib --enable-fontconfig --enable-gnutls --enable-iconv --enable-libass --enable-libbluray --enable-libfreetype --enable-libmp3lame --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libopenjpeg --enable-libopus --enable-libshine --enable-libsnappy --enable-libsoxr --enable-libtheora --enable-libtwolame --enable-libvpx --enable-libwavpack --enable-libwebp --enable-libx264 --enable-libx265 --enable-libxml2 --enable-libzimg --enable-lzma --enable-zlib --enable-gmp --enable-libvidstab --enable-libvorbis --enable-libvo-amrwbenc --enable-libmysofa --enable-libspeex --enable-amf --enable-cuda --enable-cuvid --enable-d3d11va --enable-nvenc --enable-dxva2 --enable-avisynth --enable-libmfx libavutil 56. 7.100 / 56. 7.100 libavcodec 58. 9.100 / 58. 9.100 libavformat 58. 3.100 / 58. 3.100 libavdevice 58. 0.100 / 58. 0.100 libavfilter 7. 8.100 / 7. 8.100 libswscale 5. 0.101 / 5. 0.101 libswresample 3. 0.101 / 3. 0.101 libpostproc 55. 0.100 / 55. 0.100

我已尝试ffmpeg -i testA.wav -c:a libavformat -f g.729 output.g729,但最终收到错误消息[NULL @ 0000022aa639dd80] Requested output format 'g.729' is not a suitable output format output.g729: Invalid argument

我确实尝试了一些不同的格式名称但仍未成功。

对此有一些指导意见。感谢。

1 个答案:

答案 0 :(得分:0)

像Mulvya说的那样,ffmpeg不支持G729编码,只能解码。看看这里:http://ffmpeg.org/general.html#Audio-Codecs

  

2.4音频编解码器
  Name Encoding Decoding
  ...
  G.729 X

但是你可以使用建议的bcg729 en- / decoder实现来代替ffmpeg。

通过git从http://www.linphone.org/technical-corner/bcg729/downloads下载源代码并自行编译。

因为你有windows(对于这种情况,linux会是更好的选择;))你需要一个有效的编译器。尝试使用GCC的Cygwin,有很多教程。

一个好的开始可能就是这个:https://warwick.ac.uk/fac/sci/moac/people/students/peter_cock/cygwin/