3

My video input is mpeg2 video file as follows:

Video: MPEG2 Video 720x576 (4:3) 25fps [V: mpeg2 main, yuv420p, 720x576]
Audio: MPEG Audio 48000Hz stereo 224kbps [A: mp2, 48000 Hz, stereo, 224 kb/s]

Then I use:

ffmpeg.exe -i in.mpg -b:v 3000k -preset superfast out.mp4

To get MP4:

Video: MPEG4 Video (H264) 720x576 (4:3) 25fps 2967kbps [V: h264 high L3.0, yuv420p, 720x576, 2967 kb/s]
Audio: AAC 48000Hz stereo 128kbps [A: SoundHandler (aac lc, 48000 Hz, stereo, 128 kb/s)]

Everything is good, except I get something like this in motion scenes:

enter image description here

In the actual source, there is no such thing. In the source, there is no intermediate frames or ghosting - just "discrete" steps.

I tried other presets, as well as other codec like libxvid, but all produced the same result.

So, how should I fix it? Which parameters should I add or which settings to adjust?

  • Can you provide a short sample input file containing an action scene? You can create it using something like: ffmpeg -ss 600 -i input -c copy -t 5 output.mpg – llogan Dec 21 '15 at 19:06
  • 1
    Try increasing bitrate. Though it is more common to encode with the crf option to get constant quality. – jiggunjer Dec 21 '15 at 23:44
8

Your input source in interlaced. Your best bet is to deinterlace with an ffmpeg filter such as -vf yadif=1. See yadif documentation for more info.

  • 1
    Note that yadif=1 should only be used when there is effectively 1 field per frame, otherwise you'll end up with dup frames. If that's the case, using -vf yadif will be more efficient. – Ely Dec 22 '15 at 19:45

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.