分页: 7 / 12

Re: 【置顶】支持10 bit播放的vsfilter

发表于 : 2011-12-21 13:55
pureland
vsfilter可以支援NV12輸出了喔 {:cat_2}
目前是否只有小魚版的vsfilter才支援NV12輸出?
大大你是怎麼辦到的 <( ̄︶ ̄)/

Re: 【置顶】支持10 bit播放的vsfilter

发表于 : 2011-12-21 13:59
06_taro
roozhou的mod里也支持NV12

Re: 【置顶】支持10 bit播放的vsfilter

发表于 : 2011-12-21 14:32
pureland
順便問一下:
為何NV12輸出renderer才能調用顯卡做DXVA deinterlacing
YV12輸出則不行? 這問題困擾在下很久了... {:cat_5}
我只知其當然不知其所以然XD
謝謝大家 m( _ _ )m 

Re: 【置顶】支持10 bit播放的vsfilter

发表于 : 2011-12-21 15:06
x小鱼y
pureland 写了:vsfilter可以支援NV12輸出了喔 {:cat_2}
目前是否只有小魚版的vsfilter才支援NV12輸出?
大大你是怎麼辦到的 <( ̄︶ ̄)/
主要是有roozou的mod的指引……
现在我自己操作过后,再加入新的颜色空间支持还不是太难
pureland 写了:順便問一下:
為何NV12輸出renderer才能調用顯卡做DXVA deinterlacing
YV12輸出則不行? 這問題困擾在下很久了... {:cat_5}
我只知其當然不知其所以然XD
謝謝大家 m( _ _ )m 
因为NV12的uv平面和y平面一样宽,硬件的并行处理会方便很多吧。我也是纯猜测。

Re: 【置顶】支持10 bit播放的vsfilter

发表于 : 2011-12-21 15:26
06_taro
因为巨硬的标准里DXVA2的处理就是在NV12下的
你扔个YV12进去,它不知道是啥东西
就好比你家猫逮的是耗子
你叫它去逮兔子,它根本不知道是啥东西
然后你对为啥猫不逮兔子很好奇一样……

Re: 【置顶】支持10 bit播放的vsfilter

发表于 : 2011-12-21 15:59
pureland
原來如此,非常感謝小魚大與taro大的解說 {:cat_16}
順便回報問題:
食用111220版的VSFilter
madVR OSD似乎顯示有誤?
雖顯示deinterlacing off但還是有去交錯~
不知是否純粹資訊顯示錯誤...

抱歉,剛剛在下用DXVAChecker檢查是否調用DXVA deinterlacing
確定madVR OSD顯示無誤 {:cat_15}
不過這就奇怪了...
decoder, renderer都沒deinterlacing
我也沒做post-processing後處理~
那到底是誰做了deinterlacing的工作?
於是又疑惑了 {:cat_18}
食用VSFilter
食用VSFilter
未食用VSFilter
未食用VSFilter

Re: 【置顶】支持10 bit播放的vsfilter

发表于 : 2011-12-21 19:31
x小鱼y
pureland 写了:原來如此,非常感謝小魚大與taro大的解說 {:cat_16}
順便回報問題:
食用111220版的VSFilter
madVR OSD似乎顯示有誤?
雖顯示deinterlacing off但還是有去交錯~
不知是否純粹資訊顯示錯誤...

抱歉,剛剛在下用DXVAChecker檢查是否調用DXVA deinterlacing
確定madVR OSD顯示無誤 {:cat_15}
不過這就奇怪了...
decoder, renderer都沒deinterlacing
我也沒做post-processing後處理~
那到底是誰做了deinterlacing的工作?
於是又疑惑了 {:cat_18}
with VSFilter.png
without VSFilter.png
yuv转换矩阵的问题大概是这样的,上游滤镜有传递yuv转换矩阵信息给下游滤镜的参数,但我不知道是什么怎么填。VSFilter一直既没有从上游滤镜读这个信息,也没有正确填好那个信息给下游滤镜。结果就是有VSFilter的时候,下游只能靠自己猜yuv转换矩阵了。deinterlacing不懂。

Re: 【置顶】支持10 bit播放的vsfilter

发表于 : 2011-12-21 23:07
pureland
yuv转换矩阵的问题大概是这样的,上游滤镜有传递yuv转换矩阵信息给下游滤镜的参数,但我不知道是什么怎么填。VSFilter一直既没有从上游滤镜读这个信息,也没有正确填好那个信息给下游滤镜。结果就是有VSFilter的时候,下游只能靠自己猜yuv转换矩阵了。deinterlacing不懂。
目前VSFilter可以支援NV12輸出~
但似乎還是無法調用DXVA deinterlacing
不知是何緣故?
還是在下理解有誤 {:cat_13}

Re: 【置顶】支持10 bit播放的vsfilter

发表于 : 2011-12-22 0:26
06_taro
NV12是DXVA2 deint的必要不充分條件

譬如不經過vsfilter時,ffdshow/LAV Video作為madVR的upstream filter,將stream報成interlaced給madVR,則madVR會根據這個信息去做deint;而經過vsfilter時,vsfilter作為madVR的upstream,將interlaced的stream報成progressive的給madVR了,madVR就會根據這個信息認為其是progressive的而不做deint……當然實際上是不是這樣就不知道了。

另外原版的vsfilter渲染始終輸出的是progressive的字幕,如果xy也相同的話,在30i的video上overlay一個30p的字幕,如果字幕有動態效果的話,最終做deint出來的結果就會就比較噁心了。所以要掛字幕的話,建議在掛字幕之前先做deint,譬如在LAV裡開yadif或者FFDShow裡各種deint濾鏡,然後把處理過的progressive給vsfilter渲染字幕,再從vsfilter裡出progressive的給madVR,madVR不再做deint,這樣應該比較保險。

Re: 【置顶】支持10 bit播放的vsfilter

发表于 : 2011-12-22 9:15
pureland
非常感謝taro大的回答,小弟很滿意 {:cat_16}
原來VSFilter有這些特性,在下孤陋寡聞了 {:cat_5}
看來要食用VSFilter還是在decoder level就做deinterlacing是比較好的選擇~
持續拜謝m( _ _ )m