If I "check" "Keep intermediate files" in Config -> General Settings and set Audio:passthrough all, "Hybrid" leaves temporary files with correct duration and create muxed output with wrong duration (See Debug).
However if I also "check" "No multiplexing and splitting" muxing not happens.
For now this is a workaround for me.
I tried to mux these elementary streams "outside" of "Hybrid"
ffmpeg -i video.avi -i audioac3 -c:v copy -c:a copy output.avi
Everything works just fine, muxed stream has correct duration
Then (after resetting "Hibrid") I tried to mux these elementary streams in "Hybrid" using audio:custom and encode to PCM.
"Hybbrid" creates 3 subjobs: 01_video, 02_muxing, 03_cleanUp. 02_muxing subjob takes ~10 times more than ffmpeg muxing (doing something)
and at the end nothing gets muxed, output stream consists only elementary video (See debug)
So, the problem looks like in the muxer(Mencoder) that "Hybrid" use for muxing (beside of unnecessary muxing call in "passthrough all" mode) and possibly in Audio encode procedure.
Looking at the Debug_passhtrough debug output log:
What Hybrid does:
Code:
"C:\Program Files\Hybrid\64bit\mplayer.exe" -v -mc 0 -vc dummy -nocorrect-pts -noconsolecontrols -nocorrect-pts -vc null -vo null -nocache -hardframedrop -aid 128 dvd://1 -dvd-device "D:\HYBRID~1\VIDEO_TS" -dumpaudio -dumpfile "D:\Hybrid_DVD_test\iId_1_aid_128_lang_en_2020-12-15@07_40_48_6310_01.ac3"
-> finished after 00:00:12.923
- trying to recalculate the bitrate (2020-12-15@07_40_48_6310_02_recalc) <- no clue why this does still happen, thought I fixed it.
- encoding the video to ffvhuff using:
Code:
mencoder -ovc raw -noskip -vf scale,format=i420 -forcedsubsonly -nosub -nosound -lavdopts threads=8 -really-quiet -ofps 30000/1001 -of rawvideo -o - -dvd-device "D:\HYBRID~1\VIDEO_TS" dvd://1 | ffmpeg -noautorotate -nostdin -threads 8 -an -sn -r 30000/1001 -video_size 720x480 -f rawvideo -i - -r 30000/1001 -vcodec ffvhuff -coder 0 -context 0 "D:\Hybrid_DVD_test\passthroug_2020-12-15@07_40_48_6310_03.avi"
finished after 00:01:11.532
- muxing audio&video using:
Code:
"C:\Program Files\Hybrid\64bit\mencoder.exe" -ovc copy "D:\Hybrid_DVD_test\passthroug_2020-12-15@07_40_48_6310_03.avi" -force-avi-aspect 1.33333 -oac copy -audiofile "D:\Hybrid_DVD_test\iId_1_aid_128_lang_en_2020-12-15@07_40_48_6310_01.ac3" -ofps 30000/1001 -of avi -o "D:\Hybrid_DVD_test\passthroug.avi"
Strange thin is that the muxing get's a lot slower after the initial start? (are you running any anti virus or personal firewall that might interfere?)
finished after 00:02:49.475
Looking at the Debug_Custom_mux debug output log:
What Hybrid does:
- convert the video to ffvhuff:
Code:
ffmpeg -y -noautorotate -nostdin -threads 8 -i "D:\Hybrid_DVD_test\elementary.avi" -map 0:0 -an -sn -vf zscale=rangein=tv:range=tv -pix_fmt yuv420p -vsync 0 -vcodec ffvhuff -coder 0 -context 0 "D:\Hybrid_DVD_test\elementary_muxed_2020-12-15@09_28_37_5910_01.avi"
finished after 00:02:25.536 (to surprise this is faster since the source isn't a DVD)
- additional muxing call
Code:
mencoder -ovc copy "D:\Hybrid_DVD_test\elementary_muxed_2020-12-15@09_28_37_5910_01.avi" -force-avi-aspect 1.5 -nosound -ofps 30000/1001 -of avi -o "D:\Hybrid_DVD_test\elementary_muxed.avi"
finished after 00:02:38.856
I agree this call is unnecessary, this happens since Hybrid does not check that there are no audio/subtitle streams to add and that the output already is in the target format and needs to be remuxed. (I never encountered this since I usually have no video only content and don't use .avi as output container.)
-> I'll look into it.
Quote:So, the problem looks like in the muxer(Mencoder) that "Hybrid" use for muxing (beside of unnecessary muxing call in "passthrough all" mode) and possibly in Audio encode procedure.
Side note: Hybrid can also use ffmpeg for .avi muxing, you just need to enable 'Config->Containers->Avi Settings->Always use ffmpeg for muxing'.
Cu Selur
Quote:no clue why this does still happen, thought I fixed it.
Assuming you used the last version I send you a link to please create another debug output with that version where the recalc is created while FFvHuff is used as encoder. Thanks!
Cu Selur