标签:
视频编码技术是网易视频云技术中重要的一环,这里提供大家学习,欢迎大家与网易视频云进行技术交流讨论。
一、 概述
视频编码包括分离、解码、编码、合成四部分,在分离与解码、合成部分可以认为是一种无损操作,而通常采用的编码如H264、MPEG-4等(无损压缩除外)是一种有损压缩。
为了提高视频编码后的质量,我们尝试在Encoder的数据输入之前增加一种预处理,用来弥补在编码过程中的亮度和色度的损失。从而提高视频的清晰度。
二、 预处理方法
通过改变视频的亮度、对比度、饱和度(色度)来进行锐化,使其边缘的过度产生较大的改变,从而增加视频的清晰度。锐化会产生噪声,因此增加去噪滤镜。目前只是通过调整亮度和对比度来增加边缘的锐化,饱和度并未进行调整。因为饱和度的调整会引入一些新的问题,比如产生色块,色彩的失真。
2.1 ffmpeg的预处理:增加亮度
ffmpeg -i E:\music\1\1.mov -vcodec libx264 -profile baseline -level 3.1 -preset slow -b 2400k -maxrate 6000k -bufsize 9000k -vf "scale=-1:720,unsharp=luma_msize_x=7:luma_msize_y=7:luma_amount=1.5" -threads 12 -nr 6 -an -y -f mp4 E:\music\1\out_2400k_sharpen.mp4
2.2 avs的预处理
avs通过增加锐化滤镜,调整饱和度和对比度进行编码前的预处理。
DirectShowSource("E:\music\1\1.mov").LanczosResize(1280,720).sharpen(0.2)
2.3 mencoder的预处理:增加亮度和对比度
mencoder.exe -sws 9 -oac mp3lame -vf scale=1280:720,unsharp=l7x7:1.5,eq=1:15 -ovc x264 -ffourcc H264 -x264encopts bitrate=2400:turbo=2:frameref=6:me=umh:me_range=16 E:\music\1\1.mov -o E:\music\1\mencoder_out_1_4.avi
三、 效果对比
画面摆放顺序依次为片源、ffmpeg编码、mencoder编码
3.1 对比图1
ffmpeg与mencoder预处理之后与片源相比,边缘更加锐利。
3.2 对比图2
mencoder增加对比度后的图片色彩更加饱满,更接近于片源。
3.2 对比图3
mencoder增加对比度之后比ffmpeg的细节更加突出。画面更加清晰。
四、 结论
1):通过对YUV数据进行预处理,在相同码率下能够增加视频的清晰度,提高视频质量。但是同样会造成编码速度的下降,大约降低30%左右。
2):通过对三种工具的对比, mencoder预处理后的编码质量相较于ffmpeg要高,色彩损失较小,色彩更加饱满。但是编码速度比ffmpeg要低将近50%。
3):针对高清片源,在均衡编码速度与编码质量的前提下,建议使用ffmpeg进行锐化以及去噪。若不在意编码速度,建议增加mencoder的对比度处理。
针对质量不高的片源,不建议使用锐化处理。
标签:
原文地址:http://blog.csdn.net/vcould163/article/details/51258630