15.10.2021, 07:11
I looked at the DebugOut file and then did some more testing.
Now it seems to me that the "Compensate aac encoder delay" option does nothing when creating a mp4 file with MP4Box. Whether or not it's checked, Hybrid produces exactly the same mp4 file.
I took the CLI options and tried to recreate the process outside of Hybrid like that:
Then I muxed with MP4Box, with and without delay.
Again, the resulting mp4 files are exactly the same.
Also, mkvmerge produces mkv with synced video and audio only when "Compensate aac encoder delay" is not checked. So I start to think that keeping "Compensate aac encoder delay" unchecked for both mp4 and mkv is actually preferable.
Now it seems to me that the "Compensate aac encoder delay" option does nothing when creating a mp4 file with MP4Box. Whether or not it's checked, Hybrid produces exactly the same mp4 file.
I took the CLI options and tried to recreate the process outside of Hybrid like that:
ffmpeg -i foo.avi -map 0:1 -vn -sn -ac 2 -ar 48000 -acodec pcm_s16le -f wav -map_metadata -1 - | fdkaac --bitrate-mode 4 --profile 2 --transport-format 0 --gapless-mode 2 --ignorelength -o foo.aac -
ffmpeg -noautorotate -nostdin -i foo.avi -map 0:0 -an -sn -vf zscale=rangein=tv:range=tv -pix_fmt yuv420p10le -strict -1 -vsync 0 -f yuv4mpegpipe - | x265 --output-depth 10 --y4m --profile main10 --limit-modes --no-early-skip --no-open-gop --opt-ref-list-length-pps --lookahead-slices 0 --crf 28.00 --opt-qp-pps --cbqpoffs -2 --crqpoffs -2 --limit-refs 0 --ssim-rd --psy-rd 2.50 --rdoq-level 2 --psy-rdoq 10.00 --aq-mode 0 --deblock=-1:-1 --limit-sao --no-repeat-headers --range limited --colormatrix bt709 --output foo.265 -
Then I muxed with MP4Box, with and without delay.
MP4Box -add foo.265:name="" -brand hvc1 -add foo.aac -mpeg4 -new foo.mp4
MP4Box -add foo.265#video:fps=24:delay=41:name="" -brand hvc1 -add foo.aac -mpeg4 -new foo_.mp4
Again, the resulting mp4 files are exactly the same.
Also, mkvmerge produces mkv with synced video and audio only when "Compensate aac encoder delay" is not checked. So I start to think that keeping "Compensate aac encoder delay" unchecked for both mp4 and mkv is actually preferable.