Take the 2-minute tour ×
Super User is a question and answer site for computer enthusiasts and power users. It's 100% free, no registration required.

I'm trying to figure out how to use yadif / yadif-2x with ffmpeg to convert 50i source material into 50p output that preserves the motion of all fifty fields per second. Right now, I am using the following command, which creates a frame-doubled version, essentially the same as 25p output.

ffmpeg -i input.m2t -filter:v yadif=1 output.mov

Using yadif=0 makes a deinterlaced 25p file. Using yadif=1 makes a deinterlaced 50p file with doubled 25p frames. I need to make a deinterlaced file with 50 unique frames per second, and I'm pretty well certain this is possible. Is that what yadif(2x) is supposed to do?

share|improve this question
1  
Please show your complete ffmpeg console output. –  LordNeckbeard Jun 21 '13 at 21:55
    
Available here: pastebin.com/CqsD5D8L –  moot Jun 21 '13 at 23:52
    
After a great deal of searching, I may have found another way to accomplish this conversion. I will attempt this method tomorrow and report results. hddv.net/… –  moot Jun 22 '13 at 8:21
    
yadif=1 works for me: twice as many frames and each is different –  mark4o Jun 22 '13 at 16:55
1  
Are you sure that your input is interlaced? You can use ffmpeg -i input.m2t -filter:v idet -f null - to analyze it for frames that appear to be top-frame-first interlaced, bottom-frame-first interlaced, or progressive. –  mark4o Jun 24 '13 at 3:54

1 Answer 1

Please understand-- 50i means 50 fields = 25 frames of 50 interleaved fields. You CANNOT get unique 50 frames. If at all possible, then these frames would have missing alternate lines in the video frame. So 25p is 50i top + 50i bottom combined. That's how it should be, and hopefully always will be. Else the result could be duplicated frames (terrible) as you have got.

share|improve this answer
    
This is wrong. Yadif can interpolate missing lines and create real 50fps video from 50i, if this is indeed real 50i video (no duplicated fields — i.e. 2 fields from one frame). –  Sarge Borsch Aug 29 at 10:41
    
@SargeBorsch Please provide the answer- I'll gladly delete mine. Thanks for the information. Unfortunately I cannot test because I have no access to interlaced video any more. –  Rajib Aug 29 at 12:02
    
I don't have time to search how to (properly) make it happen with ffmpeg — but it clearly has the effect in VLC player (while playing 60i video & having Yadif x2 enabled). looks like ffmpeg has a bug — it always duplicates frames, so I get either 120fps or 60fps and in either case I must drop every 2nd frame, which is kind of "hacky" and ffmpeg has no clear way of dropping every 2nd frame –  Sarge Borsch Aug 29 at 12:42
    
If you care to share a short interlaced clip I'll give it a shot. –  Rajib Aug 30 at 7:21
    
Currently I have only one such video which is not supposed for sharing, but I may shoot another one sooner or later (my DSLR camera has option of recording in 60i), and send example of both original (interlaced) video and processed one. –  Sarge Borsch Aug 30 at 7:36

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

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