View Single Post
Old 2nd September 2018, 21:00   #14  |  Link
hello_hello
Registered User
 
Join Date: Mar 2011
Posts: 4,823
VFR is really up to the encoder. MeGUI is Avisynth based and Avisynth has no concept of VFR, so it feeds the encoder at the average frame rate, or some other constant frame rate, depending on the decoder, and the VFR part needs to be handled by the encoder via a timecodes file.

Aside from the timecode vs timestamp issue, it always works flawlessly for me.

Is there a setting in Options to force the use of the 32 bit encoder? I kind of remember there being one, although I can't find it. Maybe it doesn't appear when MeGUI is running on 32 bit Windows, or maybe I just imagined it, but if it's there, try using the 32 bit encoder instead. I assume that'll bypass the need for avs4x26x.exe.

Edit 1: I scanned through the changelog and it appears there's no longer an option to use the 32 bit x264. I'm not sure why.

2681 [x264] removed option to select 32bit x264 on a 64bit OS and merged the 8- and 10-bit packages

Edit 2: Maybe try tctool-v1.3.44.7z from here. https://astrataro.wordpress.com/2012...r-avs4x264mod/

I gave it a spin and it'll convert between version 1 and version 2 timecodes, so maybe try converting your version 2 timecodes to version 1 to see if they'll be accepted, or even outputting a new version 2 timecodes file to see if doing that somehow magically fixes the problem. It's command line, but usage is pretty simple, with -v specifying the output timecodes version.
It rejects timecodes with a "timestamp" heading.

tctool.exe -v 1 "input_timecodes.txt" > "output_timecodes.txt"

Other than that, when Zathor appears again maybe he'll be willing to look at the timecodes problem, because it should work. In the mean time, you might have to encode them at a CFR and mux the timecodes file into the output MKV, then remux as MP4. I think the only real advantage of encoding with a timecodes file is it allows x264 to distribute the quality a little more evenly, because it knows how long the frames will display.

Or have you tried converting to CFR and encoding that way? Something like:
LWLibavVideoSource("D:\Video.mkv", FPSNum=24000, FPSDen=1001)

Or if it's jittery, which it sometimes is when the input and output frame rates are very similar, try converting to a higher frame rate and then decimating.
LWLibavVideoSource("D:\Video.mkv", FPSNum=30000, FPSDen=1001)
TDecimate()

Last edited by hello_hello; 2nd September 2018 at 21:55.
hello_hello is offline   Reply With Quote