2010-11-18 14 views
0

ffmpegを使用してビデオをデコードしていますが、yuv420カラースペースからrgbaカラースペースに変換してCGImageに変換し、スクリーンにレンダリングします。動画が正しく再生されます。 Instrumentsでは、CPUサイクルの3分の1が別の変換に使用されています(関数はCGSConvertBGRX8888toRGBA8888と呼ばれます)。なぜこの第2の色空間変換が必要なのですか?PNG画像を読み込んで同じ方法で描画すると、 ? CGImageを作成するためのiOSでのCGImageレンダリング

コード:

http://pastebin.com/CqePhPzG

ありがとう!

答えて

0

ソースイメージのバイト順序が宛先と一致していないように見えます。また、私はXは事前に乗算されていないアルファであると考えていますが、Aはあらかじめ乗算されたアルファです。イメージまたはビットマップイメージコンテキストを作成するときに渡すバイト順序設定を変更してみてください。 HTH。

関連する問題