FFMpeg has the wrong framerate

Offshoot of another thread of mine. So I am now trying to take WTV files that by default are H.264 from Microsoft’s original encoding, and re-encode them, taking out the commercials, and re-encoding in MPEG2. I noticed besides some occasional heavy stuttering, that the video wasn’t tracking well. In other words, movement wasn’t fluid and was slightly jerky. Looking into it, today all H.264/MPEG2 files created from Microsoft MCE are 59.94FPS. Unfortunately it seems with FFMpeg that it’s unable to determine that so ends up encoding in 29.97FPS so causes less than fluid movement. Is there a way to force videos from a particular location to decode/encode in 59.94fps? Would share a log but your file upload won’t support the size of the log file.



Conversion Task Expert Settings -> Set frame rate

You can zip and attach large log files.

Yeah big problem with MCEBuddy. Even with that setting I think that’s setting the output framerate but not the input framerate or for that matter that ffmpeg uses the output framerate for WTV files.

Well, not exactly MCEBuddy problem, but it’s engine. I’ve been having lots of problems and indirectly posting them here, but the issue is WTV encodes in two formats, MPEG2 and H.264 within the WTV container. H.264 has issues with Xbox extenders in general with lockup however in reencoding ffmpeg has a lot of issues with WTV especially H.264 per their issue logs others complaining about this to. When you re-encode it has issues with framerate and the resulting file is either black screen or jerky. Since MCEBuddy uses ffmpeg it exhibits the same issues. Still have a use for MCEBuddy but not for my WTV files which is unfortunately as being able to convert H.264 WTV files to MPEG2 files without issue would probably solve a lot of GreenButton users lockup issues.



Looks like you’re aware of the complexities of the WTV format and XBox extenders issues with it.

The good news if you’re willing to experiment MCEBuddy can find a way out for you.

For examples, you can write a custom profile to process the file with handbrake instead of ffmpeg. So it would something like this:


This would make handbrake process the file and then finally remux from mp4 to wtv using ffmpeg

There are more options available including adding custom framerates to the ffmpeg profile, adding framerates to the remux section in your mcebuddy.conf file etc, check out the advanced settings topic for more details

I’m game to test things out if it helps. Think the biggest issue as long as the content of the WTV file is MP4 based the extenders will have issues with them. Guessing the H.264 codec implementation was not fully baked before MS decided to stop supporting the “newer” encoding format. Now if Handbrake could properly encode the file to MPEG2 and then put it into WTV that would probably be ideal.

Right now I’m at the point where I’m not changing the encoding format. Just stripping out the commercials and multiplexing the pieces back together.