引用
最初由 superkidx 发布
晕 又绕回来了
你是说 AVS的这句是不需要的?ConvertToYV12(matrix="PC.709")
另外ConvertTo可以转601/709/PC/TV 但是pixel_type就不行吧
看来你还是没明白,如果解码器输出是YUY2,你用ConvertToYV12(matrix=xxx)会报错的。RGB<->RGB,YUV<->YUV不存在601/709的说法。
pixel_type只是让解码器输出指定的颜色空间,如果解码器需要做颜色转换,用什么矩阵DirectShowSource是管不到的。
就像楼主的MJPEG,如果用M$的解码器输出RGB到avs,我们会遇到两个难题
1)不知道捕捉卡用的什么矩阵,假设为A
2)不知道MS的解码器用的什么矩阵,假设为B
如果A!=B,出来的RGB就是错的
现在你要压x264,又要用ConvertToYV12(Matrix=C)转成YUV。如果A,B,C三个都不一样,压出来的片子在放的时候应该用什么矩阵转RGB呢?
但如果换个支持YUY2输出的解码器,那downsample到YV12后就可以直接送x264了。放的时候只要用和捕捉卡相同的矩阵就可以得到正确的RGB颜色。