FFMPEG amr to mp3 conversion problem

2019-09-02 01:34发布

问题:

Hey all, I'm having the following issue converting amr files to mp3 files. When I try to do the converstion I get the following:

FFmpeg version SVN-r26402, Copyright (c) 2000-2011 the FFmpeg developers
  built on Jan 24 2011 12:00:26 with gcc 4.4.5
  configuration: --enable-gpl --enable-version3 --enable-nonfree --enable-postproc --enable-libfaac --enable-libmp3lame --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libtheora --enable-libvorbis --enable-libvpx --enable-libx264 --enable-libxvid --enable-x11grab
  libavutil     50.36. 0 / 50.36. 0
  libavcore      0.16. 1 /  0.16. 1
  libavcodec    52.108. 0 / 52.108. 0
  libavformat   52.93. 0 / 52.93. 0
  libavdevice   52. 2. 3 / 52. 2. 3
  libavfilter    1.74. 0 /  1.74. 0
  libswscale     0.12. 0 /  0.12. 0
  libpostproc   51. 2. 0 / 51. 2. 0

Test.amr: Invalid data found when processing input

It's actually weird considering i have another file recorded earlier and the conversion works as you can see here:

octavius@octavius-VirtualBox:~/share$ ffmpeg -i 1-aloalodwd.amr 1-aloalodwd.mp3
FFmpeg version SVN-r26402, Copyright (c) 2000-2011 the FFmpeg developers
  built on Jan 24 2011 12:00:26 with gcc 4.4.5
  configuration: --enable-gpl --enable-version3 --enable-nonfree --enable-postproc --enable-libfaac --enable-libmp3lame --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libtheora --enable-libvorbis --enable-libvpx --enable-libx264 --enable-libxvid --enable-x11grab
  libavutil     50.36. 0 / 50.36. 0
  libavcore      0.16. 1 /  0.16. 1
  libavcodec    52.108. 0 / 52.108. 0
  libavformat   52.93. 0 / 52.93. 0
  libavdevice   52. 2. 3 / 52. 2. 3
  libavfilter    1.74. 0 /  1.74. 0
  libswscale     0.12. 0 /  0.12. 0
  libpostproc   51. 2. 0 / 51. 2. 0
[amr @ 0x9c0c4e0] Estimating duration from bitrate, this may be inaccurate
Input #0, amr, from '1-aloalodwd.amr':
  Duration: N/A, bitrate: N/A
    Stream #0.0: Audio: amrnb, 8000 Hz, 1 channels, flt
Output #0, mp3, to '1-aloalodwd.mp3':
  Metadata:
    TSSE            : Lavf52.93.0
    Stream #0.0: Audio: libmp3lame, 8000 Hz, 1 channels, s16, 64 kb/s
Stream mapping:
  Stream #0.0 -> #0.0
Press [q] to stop encoding
size=      26kB time=3.38 bitrate=  64.1kbits/s    
video:0kB audio:26kB global headers:0kB muxing overhead 0.121897%

Any idea as to what might be happening?

回答1:

Your test file might be corrupted, or just contained something ffmpeg's decoder couldn't handle. Try playing test.amr on a player to see if the file is not just corrupted. If the problem is in ffmpeg, you might try updating to the latest version to see if they have fixed it, you can download the source from http://www.ffmpeg.org/download.html (you'll have to compile it).