[FFmpeg-trac] #11429(undetermined:new): mp3float Header missing vs. Conversion failed!

FFmpeg trac at avcodec.org
Thu Jan 23 09:43:29 EET 2025


#11429: mp3float Header missing vs. Conversion failed!
-------------------------------------+-------------------------------------
             Reporter:  Jozef        |                     Type:  defect
  Chutka                             |
               Status:  new          |                 Priority:  normal
            Component:               |                  Version:
  undetermined                       |  unspecified
             Keywords:  mp3          |               Blocked By:
             Blocking:               |  Reproduced by developer:  0
Analyzed by developer:  0            |
-------------------------------------+-------------------------------------
 Using ffmpeg 7.1 re-encoding an mp3 prints errors like

 {{{
 ffmpeg -i input.mp3 out.mp3 -y

 ffmpeg version 7.1 Copyright (c) 2000-2024 the FFmpeg developers
   built with Apple clang version 16.0.0 (clang-1600.0.26.4)
   configuration: --prefix=/opt/homebrew/Cellar/ffmpeg/7.1_4 --enable-
 shared --enable-pthreads --enable-version3 --cc=clang --host-cflags=
 --host-ldflags='-Wl,-ld_classic' --enable-ffplay --enable-gnutls --enable-
 gpl --enable-libaom --enable-libaribb24 --enable-libbluray --enable-
 libdav1d --enable-libharfbuzz --enable-libjxl --enable-libmp3lame
 --enable-libopus --enable-librav1e --enable-librist --enable-librubberband
 --enable-libsnappy --enable-libsrt --enable-libssh --enable-libsvtav1
 --enable-libtesseract --enable-libtheora --enable-libvidstab --enable-
 libvmaf --enable-libvorbis --enable-libvpx --enable-libwebp --enable-
 libx264 --enable-libx265 --enable-libxml2 --enable-libxvid --enable-lzma
 --enable-libfontconfig --enable-libfreetype --enable-frei0r --enable-
 libass --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-
 libopenjpeg --enable-libspeex --enable-libsoxr --enable-libzmq --enable-
 libzimg --disable-libjack --disable-indev=jack --enable-videotoolbox
 --enable-audiotoolbox --enable-neon
   libavutil      59. 39.100 / 59. 39.100
   libavcodec     61. 19.100 / 61. 19.100
   libavformat    61.  7.100 / 61.  7.100
   libavdevice    61.  3.100 / 61.  3.100
   libavfilter    10.  4.100 / 10.  4.100
   libswscale      8.  3.100 /  8.  3.100
   libswresample   5.  3.100 /  5.  3.100
   libpostproc    58.  3.100 / 58.  3.100
 [mp3 @ 0x14ef2f8f0] Estimating duration from bitrate, this may be
 inaccurate
 Input #0, mp3, from 'input.mp3':
   Metadata:
     major_brand     : dash
     minor_version   : 0
     compatible_brands: iso6mp41
     encoder         : Lavf58.45.100
   Duration: 00:00:55.43, start: 0.000000, bitrate: 128 kb/s
   Stream #0:0: Audio: mp3 (mp3float), 44100 Hz, stereo, fltp, 128 kb/s
 Stream mapping:
   Stream #0:0 -> #0:0 (mp3 (mp3float) -> mp3 (libmp3lame))
 Press [q] to stop, [?] for help
 Output #0, mp3, to 'out.mp3':
   Metadata:
     major_brand     : dash
     minor_version   : 0
     compatible_brands: iso6mp41
     TSSE            : Lavf61.7.100
   Stream #0:0: Audio: mp3, 44100 Hz, stereo, fltp
       Metadata:
         encoder         : Lavc61.19.100 libmp3lame
 [mp3float @ 0x14ef3bed0] Header missing
 [aist#0:0/mp3 @ 0x14ef31380] [dec:mp3float @ 0x14ef3b850] Error submitting
 packet to decoder: Invalid data found when processing input
 [out#0/mp3 @ 0x14ef307b0] video:0KiB audio:856KiB subtitle:0KiB other
 streams:0KiB global headers:0KiB muxing overhead: 0.039363%
 size=     856KiB time=00:00:54.75 bitrate= 128.1kbits/s speed= 126x
 }}}

 And it produces out.mp3 (876805 bytes) with exit code 0

 Now a slightly modified command using filter_complex prints different
 error which look almost like the process failed

 {{{
 ffmpeg -filter_complex "amovie=input.mp3" out.mp3 -y

 ffmpeg version 7.1 Copyright (c) 2000-2024 the FFmpeg developers
   built with Apple clang version 16.0.0 (clang-1600.0.26.4)
   configuration: --prefix=/opt/homebrew/Cellar/ffmpeg/7.1_4 --enable-
 shared --enable-pthreads --enable-version3 --cc=clang --host-cflags=
 --host-ldflags='-Wl,-ld_classic' --enable-ffplay --enable-gnutls --enable-
 gpl --enable-libaom --enable-libaribb24 --enable-libbluray --enable-
 libdav1d --enable-libharfbuzz --enable-libjxl --enable-libmp3lame
 --enable-libopus --enable-librav1e --enable-librist --enable-librubberband
 --enable-libsnappy --enable-libsrt --enable-libssh --enable-libsvtav1
 --enable-libtesseract --enable-libtheora --enable-libvidstab --enable-
 libvmaf --enable-libvorbis --enable-libvpx --enable-libwebp --enable-
 libx264 --enable-libx265 --enable-libxml2 --enable-libxvid --enable-lzma
 --enable-libfontconfig --enable-libfreetype --enable-frei0r --enable-
 libass --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-
 libopenjpeg --enable-libspeex --enable-libsoxr --enable-libzmq --enable-
 libzimg --disable-libjack --disable-indev=jack --enable-videotoolbox
 --enable-audiotoolbox --enable-neon
   libavutil      59. 39.100 / 59. 39.100
   libavcodec     61. 19.100 / 61. 19.100
   libavformat    61.  7.100 / 61.  7.100
   libavdevice    61.  3.100 / 61.  3.100
   libavfilter    10.  4.100 / 10.  4.100
   libswscale      8.  3.100 /  8.  3.100
   libswresample   5.  3.100 /  5.  3.100
   libpostproc    58.  3.100 / 58.  3.100
 [mp3 @ 0x155f2fbd0] Estimating duration from bitrate, this may be
 inaccurate
 Stream mapping:
   amovie:out0 -> Stream #0:0 (libmp3lame)
 Press [q] to stop, [?] for help
 [mp3 @ 0x155f32c20] Estimating duration from bitrate, this may be
 inaccurate
 Output #0, mp3, to 'out.mp3':
   Metadata:
     TSSE            : Lavf61.7.100
   Stream #0:0: Audio: mp3, 44100 Hz, stereo, fltp
       Metadata:
         encoder         : Lavc61.19.100 libmp3lame
 [mp3float @ 0x155f33b40] Header missing
 [fc#0 @ 0x155f2e9e0] Error requesting a frame from the filtergraph:
 Invalid data found when processing input
 [fc#0 @ 0x155f2e9e0] Error sending frames to consumers: Invalid data found
 when processing input
 [fc#0 @ 0x155f2e9e0] Task finished with error code: -1094995529 (Invalid
 data found when processing input)
 [fc#0 @ 0x155f2e9e0] Terminating thread with return code -1094995529
 (Invalid data found when processing input)
 [out#0/mp3 @ 0x155f392e0] video:0KiB audio:856KiB subtitle:0KiB other
 streams:0KiB global headers:0KiB muxing overhead: 0.028752%
 size=     856KiB time=00:00:54.75 bitrate= 128.1kbits/s speed= 129x
 Conversion failed!
 }}}

 And produced out.mp3 is only 876712 bytes and exit code 183.

 I wonder what is happening here? Why these two similar commands produce
 different output, one that appears as success and the other one as a
 failure?

 I actually need to run `filter_complex` b/c there are many filters I need
 to apply etc. So is there any magic flag/filter/custom decoder I can apply
 to fix the problem?

 Attaching the input.mp3
-- 
Ticket URL: <https://trac.ffmpeg.org/ticket/11429>
FFmpeg <https://ffmpeg.org>
FFmpeg issue tracker


More information about the FFmpeg-trac mailing list