我处理来自 AVFrame.data 的原始数据。此帧的像素格式为 AV_PIX_FMT_YUV420P。我想了解这些数据位于哪个值范围内。
似乎 UV(在 YUV 方案中)必须在 [-128, 128] 范围内,CbCr(在 YCbCr 中)必须在 [0, 255] 范围内。 FFmpeg 使用什么方案?
答案 0 :(得分:3)
FFmpeg 中 YUV 和 RGB 格式的所有像素分量值都是无符号的。根据特定的格式,类型可能不同(int、float),位深度也可能不同。
对于AV_PIX_FMT_YUV420P
,Y 的严格范围是 16-235,U 和 V 的严格范围是 16-240,通常称为有限范围。 U 和 V 的中点通常为 128。
但是,也可以遇到全范围。