Flash(AS3)を使用してロードするビデオ(MP4)があります。NetStreamオブジェクトを使用してビデオをローカルにロードし、ピクセルをサンプリングすると、少し「オフ」になります。
これをテストするために、赤のピクセルのみの100フレームのビデオを準備しました(すべてのピクセルは0xFF0000です)。
flashのNetStreamクラスを使用してこのビデオをロードし、「getPixel」を使用して表示されているフレームのピクセルカラーをテストすると、ピクセルカラーは次のようになります。
- R = 255
- G = 12
- B = 0
。
「緑」の値が0ではないのはなぜですか?
また、緑色のフレームのみを含むビデオをロードすると、Flashがロードされた後のピクセルの値は次のようになります。
- R = 0
- G = 232
- B = 0
。
青いビデオフレームのみが正しい(0,0,255)。
どうしてこれなの ?フラッシュがビデオをデコードし、色を変更する処理を実行している可能性がありますか?
さまざまなピクセルをサンプリングして検出するため、色を正確にする必要があります。また、実際のビデオとまったく同じように色を表示する必要があります。
ありがとう。