[FFmpeg-trac] #10464(undetermined:new): MP4 muxer: muxing with empty moov fails to signal audio encoder delay
FFmpeg
trac at avcodec.org
Tue Jul 11 15:53:11 EEST 2023
#10464: MP4 muxer: muxing with empty moov fails to signal audio encoder delay
-------------------------------------+-------------------------------------
Reporter: John Regan | Type: defect
Status: new | Priority: normal
Component: | Version:
undetermined | unspecified
Keywords: | Blocked By:
Blocking: | Reproduced by developer: 0
Analyzed by developer: 0 |
-------------------------------------+-------------------------------------
When generating an mp4 file using -movflags empty_moov - the edit box is
missing, which is required to signal the audio encoder delay. As far as I
can tell there's no movflag or other muxer option that will add the edit
box.
How to reproduce:
{{{
% ffmpeg -f lavfi -i anullsrc=r=48000:d=10 -c:a aac -movflags empty_moov
fragmented.mp4
}}}
If you inspect fragmented.mp4, the Edit Box is missing entirely.
I believe the file should have an Edit Box, containing an Edit List Box
with an entry showing the number of samples to discard from the beginning
of the audio (in this case for AAC, 1024). Otherwise, decoders have no way
of knowing how many priming samples should be discarded.
Version info:
{{{
ffmpeg -version
ffmpeg version n6.0 Copyright (c) 2000-2023 the FFmpeg developers
built with gcc 13.1.1 (GCC) 20230429
configuration: --prefix=/usr --disable-debug --disable-static --disable-
stripping --enable-amf --enable-avisynth --enable-cuda-llvm --enable-lto
--enable-fontconfig --enable-gmp --enable-gnutls --enable-gpl --enable-
ladspa --enable-libaom --enable-libass --enable-libbluray --enable-libbs2b
--enable-libdav1d --enable-libdrm --enable-libfreetype --enable-libfribidi
--enable-libgsm --enable-libiec61883 --enable-libjack --enable-libjxl
--enable-libmfx --enable-libmodplug --enable-libmp3lame --enable-
libopencore_amrnb --enable-libopencore_amrwb --enable-libopenjpeg
--enable-libopenmpt --enable-libopus --enable-libpulse --enable-librav1e
--enable-librsvg --enable-libsoxr --enable-libspeex --enable-libsrt
--enable-libssh --enable-libsvtav1 --enable-libtheora --enable-libv4l2
--enable-libvidstab --enable-libvmaf --enable-libvorbis --enable-libvpx
--enable-libwebp --enable-libx264 --enable-libx265 --enable-libxcb
--enable-libxml2 --enable-libxvid --enable-libzimg --enable-nvdec
--enable-nvenc --enable-opencl --enable-opengl --enable-shared --enable-
version3 --enable-vulkan
libavutil 58. 2.100 / 58. 2.100
libavcodec 60. 3.100 / 60. 3.100
libavformat 60. 3.100 / 60. 3.100
libavdevice 60. 1.100 / 60. 1.100
libavfilter 9. 3.100 / 9. 3.100
libswscale 7. 1.100 / 7. 1.100
libswresample 4. 10.100 / 4. 10.100
libpostproc 57. 1.100 / 57. 1.100
}}}
--
Ticket URL: <https://trac.ffmpeg.org/ticket/10464>
FFmpeg <https://ffmpeg.org>
FFmpeg issue tracker
More information about the FFmpeg-trac
mailing list