2009-06-26 6 views
7

現在、FFMPEGを使用してビデオフレームを読み込もうとしています。形式はPIX_FMT_RGB24です。各フレームについて、RGB値はすべてframe-> data [0](フレームがAVFrameタイプの場合)で一緒に結合されます。C++のAVFrame(FFMPEG)からRGB値を抽出する

各フレームのR、G、B値を個別に抽出するにはどうすればよいですか?これはビデオを処理するためのものです。私はビットマップからRGB値を抽出するのと同じように動作すると思います。ありがとう!

+0

単なる説明 - 私はR、G、Bの値をスタンドアロンにする必要があります。私はすでにAvFrameから生のRGBデータを持っているはずです – Extrakun

答えて

4

私の推測:

int p=x*3+y*frame->linesize[0]; 
r=frame->data[0][p]; 
g=frame->data[0][p+1]; 
b=frame->data[0][p+2]; 

Iは、R、Gを持っており、後方bのかもしれません。そして、スピードアップのための多くの余地があります。

+0

回答:http://stackoverflow.com/questions/9912873/ffmpeg-avframe-get-full-decoded-data-to-char – Nav

関連する問題