mpeg等のYUVで圧縮されたものを表示しようとしたとします。
RGBとは色空間が違ってきますので、何も気にせずに表示させるとRGBとは違った色で表示されることになります。
オーバーレイミキサーを使えばハードウェアで伸張してくれるっぽい?(色空間はYV12)のですが、DirectXとかのRGB系(VMR)で表示させると色が違ってきます。
MPCも内蔵のmpegデコーダには色空間を伸張するというオプションがあるのですが、外部デコーダを使った場合はそのままです。
ハタとこのことに気がつき、何とかしようと考えました。
んで、ffdshowでデコードしてるから、そっちで何とかしてくれんかと思ったらoutputをRGB系とPlanarYUVのみにしておけば、RGBに変換するときに伸張してくれるみたいなので、それで行きます。
0 件のコメント:
コメントを投稿