標籤:
視頻編碼技術是網易視頻雲技術中重要的一環,這裡提供大家學習,歡迎大家與網易視頻雲進行技術交流討論。
一、 概述
視頻編碼包括分離、解碼、編碼、合成四部分,在分離與解碼、合成部分可以認為是一種無損操作,而通常採用的編碼如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的對比處理。
針對品質不高的片源,不建議使用銳利化處理。
網易視頻雲技術之視頻預先處理技術