【问题标题】:Extract RGB values from a AVFrame (FFMPEG) in C++从 C++ 中的 AVFrame (FFMPEG) 中提取 RGB 值
【发布时间】:2010-11-06 00:58:48
【问题描述】:

我目前正在尝试使用 FFMPEG 读取视频帧。格式为PIX_FMT_RGB24;对于每一帧,RGB 值都在 frame->data[0] 中组合在一起(其中 frame 是 AVFrame 类型)。

如何提取每个帧的单独 R、G 和 B 值?这是用于处理视频。我认为它的工作方式与从位图中提取 RGB 值的方式相同。谢谢!

【问题讨论】:

  • 澄清一下——我需要独立的 R、G 和 B 值;我应该已经有了来自 AvFrame 的原始 RGB 数据

标签: c++ bitmap ffmpeg


【解决方案1】:

我的猜测:

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];

我可能有 r、g 和 b 倒数。而且还有很大的加速空间。

【讨论】:

猜你喜欢
  • 1970-01-01
  • 2022-01-11
  • 2017-05-03
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多