這裡不是給出例子了麼…前面那個走RGB48Y的我個人更不推薦,盡量別用RGB中轉,一定要用的話無非就是把最後一行裡output="YV16"改成output="YV24"而已…fch1993 写了:这个输出YV24的话该如何修改。查维基的转换没查出来。06_taro 写了:[syntax lang="avisynth" lines="f"]# Adjust these settings according to your source clip
matrix = "709"
tv_range = true
chroma_p = "MPEG2"
#
Dither_convert_yuv_to_rgb(matrix=matrix,
\ tv_range=tv_range,
\ cplace=chroma_p,
\ chromak="bicubic",
\ output="rgb48y")
r = SelectEvery(3, 0)
g = SelectEvery(3, 1)
b = SelectEvery(3, 2)
Dither_convert_rgb_to_yuv(r, g, b,
\ matrix=matrix,
\ tv_range=tv_range,
\ cplace=chroma_p,
\ chromak="bicubic",
\ lsb=true, output="YV16")
[/syntax]
還是那句話,如果你不知道原始片子製作階段的chroma subsampling採樣過程是如何進行的,那就別拿4:2:0的源來壓4:2:2或者4:4:4。上面這個些腳本都是在默認原片製作沒有任何問題,完全符合MPEG-2的choma subsampling的position標準,中途沒有任何chroma上的問題才可以這樣做。要是原盤有一點問題,誰都沒法推測出應該該怎麼辦,絕大多數處理都是錯誤的,我相信大部分人胡亂處理出來的結果都不如madVR直接在播放階段靠高精度下GPU shader做的chroma upsampling的質量。尤其是如果您連上面這個RGB48Y中轉的方法都不知道如何改的話,我個人更加懷疑您能否做出符合標準的upsampling。
另外還有,x264的內部在編碼4:4:4的情況下,chroma-qp-offset默認是會在4:2:0/4:2:2的設定基礎上+6的,也就是說人為降低了4:4:4裡chroma的編碼質量。當然您可以手動設定這個參數,但是最終編碼結果會有什麼影響請自己看著辦。