博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

反交错 deinterlace

Posted on 2017-04-28 17:58  bw_0927  阅读(1847)  评论(0)    收藏  举报

http://wxrsm.blog.sohu.com/244835440.html

 

因为在原始的摄像机中,视频每秒都是由23.97帧组成的,然而这个帧率并不符合电视的标准(PAL:25fps/NTSC:29.97fps),所以就要对视频进行交错处理,使得23.97帧的视频变为29.97fps, 25fps。

 

为了保证每一秒内图像、音频同步,那么转换帧率就不是一般视频转换软件的处理方法。一帧一帧来分析视频,就会发现大量的拉丝现象,所以就要进行反交错处理,把原来交错的视频(隔行扫描)改成非交错的视频(逐行扫描)。

 

http://blog.csdn.net/charleslei/article/details/52068808

ffmpeg 用x264视频编码,视频画面会出现锯齿(或者叫拉丝),下面两张图对比一下效果:

 

(图:未设置反交错)

 

(图:设置反交错)

 

导致此效果的原因是x264本身不能很好的进行反交错处理,尤其是在要缩放原始视频的时候(比如说用1080i压制720p)。 

 

下面说明如何设置ffmpeg参数来避免画面出现锯齿: 

 

方法一:设置ffmpeg参数 -deinterlace即可,如: 

 

ffmpeg -i test.mpg -vcodec libx264 -s 1024x768 -b:v 700k -r 25 -deinterlace -acodec libmp3lame -ar 22050 -f flv -y test.flv

 

 

方法二:使用ffmpeg滤镜 -vf yadif,如: 

 

 

ffmpeg -i test.mpg -vcodec libx264  -s 1280x768 -b:v 700k -r 25 -vf yadif -acodec libmp3lame -ar 22050 -f flv -y test.flv

 

我的测试结果是,两种效果差别不大,但是第一种方法速度要快于第二种方法。此结论只为本人测试,请感兴趣的同学亲自测试!