Trying to convert a VFR ".h264" (yes that's the file extension) to an AVI format. Demuxed the files out of an MKV and got an ".h264" file and OGG Vorbis sound. The .h264 is variable framerate, because it won't sync with the sound no matter how hard I try. I can post the mediainfo if it helps, but I really need to conver this.
I'm confused here. I'm assuming you mean that the h264 is VFR because it won't sync with the SOUND, right? I'm not too smart about h264, but from what little I've done with it, I know you can use MeGUI + Avisynth to convert it to an .avi format. Not sure how it'll handle the variable frame rates, though. In fact, both programs are kinda complicated, so they'll take some getting used to. You'll have to mux the audio in separately. Avisynth is pretty tricky to use, too, so I'd suggest doing the following: 1.) Download the two programs. 2.) In Notepad, write the following: DirectShowSource("C:/...file path.../your mkv file.mkv") 3.) Save the file as an .avs file, then open it up in MeGUI (after updating). You should get a preview window of your video. 4.) Choose an encoder profile - make sure it's an Xvid profile, because then you'll actually encode using Xvid, and not x264. Change the settings however you want, and click Enqueue. 5.) In the Jobs tab, you should see your conversion job. Start it, and in a while, your video will be converted to an .avi file... hopefully. 6.) Then you just remux it however you want. Hope that helps. If it doesn't, let me know.
I'm on Vista and when I try to open the .avs Script in MeGUI it gives me an error that Avisynth may not be installed correctly. I reinstalled it and the same error. For some reason it's not liking the Avisynth script and is saying that it's not valid.
Hm... well, actually, after having gone through some VFR h264 files of my own, I realized that you absolutely must set a constant framerate for your video. You should set it to the most common framerate in the video. (Mine, for example, had openings and endings at 29.97 fps, and main content in 23.976, so I set the framerate to 23.976.) In your Avisynth script, try adding the stuff in bold: DirectShowSource("C:/...path.../file.mkv",fps=23.976,convertfps=true) What that'll do is force the VFR to CFR, all while keeping as close to the original timelength as possible. It'll add or delete frames as necessary, so there might be some herky-jerkiness here and there, but it's your best bet. Anyway, try that. I've also googled "avisynth vista," and it seems that there hasn't been a version developed specifically for Vista just yet. Try searching around and seeing which version of Avisynth works best. (Apparently, version 2.5.6a works on 32-bit models. It might work for you. I'm guessing you have a 64-bit Vista?) Hope that helps some.
Spot on. But 64 Bit has the advantage of being able to run both 32 and 64 bit programs. I'll give 2.5.6a a try though. EDIT: Just gave it a try and still the same result. Is there any way other than using Avisynth?