用的ffmpeg版本是4.2.1
yuv解交织
ffmpeg -deinterlace -s 720x576 -pix_fmt yuv420p -i input.yuv output.yuv
mp4转yuv时解交织
方法一:
隔行扫描用这个命令解yuv,可以去交织
ffmpeg -i input.mp4 -deinterlace -pix_fmt yuv420p -vsync 0 output.yuv
原理参考
https://zh.wikipedia.org/zh-cn/%E5%8E%BB%E4%BA%A4%E9%8C%AF#.E5.8E.BB.E4.BA.A4.E9.8C.AF.E7.9A.84.E6.99.82.E6.A9.9F
http://www.timeedu-sd.cn/news/5385.html
方法二(效果更好):
ffmpeg -i input.mp4 -vf pp=lb -vsync 0 output.yuv
逐行扫描和隔行扫描:
隔行扫描(Interlaced)和逐行扫描(Progressive)都是在显示设备表示运动图像的方法
隔行扫描方式是每一帧被分割为两场画面交替显示,逐行扫描方式是将每帧的所有画面同时显示。
隔行扫描就是每一帧被分割为两场,每一场包含了一帧中所有的奇数扫描行或者偶数扫描行,通常是先扫描奇数行得到第一场,然后扫描偶数行得到第二场。
在电视的标准显示模式中,i表示隔行扫描,p表示逐行扫描。
传统技术使得电视机来不及一次将五六百行的内容都刷新一遍,电子枪扫描到屏幕下面时,上面的内容已经衰减了。于是采用了奇偶行交替的补救办法。第一遍先刷新奇数行,第二遍再刷新偶数行,第三遍在奇数行刚开始衰减时电子枪又杀回来了,重新刷新奇数行,如此反复。这种扫描方式被称为“隔行扫描”(interlace scan)
因为实现成本低,效果也不错,所以被电视台广泛采用为电视播出信号,我们看惯了也就习以为常了。