Como usar o ffmpeg para converter um arquivo u-law ou a-law G711 para wav

Como usar o ffmpeg para converter um arquivo u-law ou a-law G711 para wav

Um de nossos aplicativos permite ao usuário fazer upload de vários formatos de áudio como mp3, G711 u-law ou a-law etc. e usa ffmpeg para converter esses formatos para wav.

Converter mp3 em wav parece fácil usando o seguinte comando. Quais parâmetros posso usar para converter u-law ou a-law em wav?

ffmpeg -i input.mp3 output.wav

Tentei os seguintes comandos para g711 u-law e todos obtiveram os mesmos erros:

ffmpeg.exe -i output.g711u -acodec u-law -ar 44100 -ac 1 output.wav

ffmpeg.exe -i output.g711u output.wav

ffmpeg version N-80234-g49b0246 Copyright (c) 2000-2016 the FFmpeg developers
  built with gcc 5.3.0 (GCC)
  configuration: --enable-gpl --enable-version3 --disable-w32threads --enable-nvenc --enable-avisynth --enable-bzlib --enable-fontconfig --enable-frei0r --enable-gnutls --enable-iconv --enable-libass --enable-libbluray --enable-libbs2b --enable-libcaca --enable-libfreetype --enable-libgme --enable-libgsm --enable-libilbc --enable-libmodplug --enable-libmfx --enable-libmp3lame --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libopenjpeg --enable-libopus --enable-librtmp --enable-libschroedinger --enable-libsnappy --enable-libsoxr --enable-libspeex --enable-libtheora --enable-libtwolame --enable-libvidstab --enable-libvo-amrwbenc --enable-libvorbis --enable-libvpx --enable-libwavpack --enable-libwebp --enable-libx264 --enable-libx265 --enable-libxavs --enable-libxvid --enable-libzimg --enable-lzma --enable-decklink --enable-zlib
  libavutil      55. 24.100 / 55. 24.100
  libavcodec     57. 45.100 / 57. 45.100
  libavformat    57. 37.101 / 57. 37.101
  libavdevice    57.  0.101 / 57.  0.101
  libavfilter     6. 46.101 /  6. 46.101
  libswscale      4.  1.100 /  4.  1.100
  libswresample   2.  0.101 /  2.  0.101
  libpostproc    54.  0.100 / 54.  0.100

**output.g711u: Invalid data found when processing input**

Mas funciona usando sox com o seguinte comando.

sox --type raw --rate 44100 -e u-law output.g711u output_file3.wav

Responder1

Usei o seguinte comando para resolver o problema.

ffmpeg.exe -f mulaw -ar 44100 -i output.g711u output_file3.wav

informação relacionada