【发布时间】:2011-09-02 12:57:25
【问题描述】:
有没有办法从 PixelFormat 类型的 codecContext.pix_fmt 中获取像素的位数?我使用 switch 手动完成:
switch (OUT_IMAGE_FORMAT)
{
case PIX_FMT_RGB24:
pVideoInfo->bmiHeader.biBitCount = 24;
do_something();
break;
//etc
}
但这需要在 libav 每次添加或删除某些像素格式时手动更新。或者,如果我需要添加一些之前不支持的像素格式。
附:我需要它来填充 DirectShow 过滤器的 CMediaType,因此 bits_per_raw_sample 不合适,因为据我所知,它是用于内部 libav 的。
【问题讨论】:
标签: c++ directshow libav