FFmpeg 查看编码器支持的pix_fmt

本文档介绍了如何在ffmpeg 4.4.2版本中使用C代码获取编码器支持的图像数据类型(pix_fmt),并通过示例展示了如何遍历并打印所有支持的像素格式。这对于编码器选择和图像处理开发者来说是一个实用技巧。
摘要由CSDN通过智能技术生成

开发需要能够获取一个编码器支持的输入图像数据类型(pix_fmt),但是网上找了一圈,除了找到了相关命令,并没有找到怎么通过代码获取。于是扒了下源码,实现了功能。

ffmpeg 版本:4.4.2

代码方式

话不多说,直接上代码

void print_pix_fmt(AVCodec *codec) {
	printf(" support  pix_fmts : ");
	const AVPixelFormat *pfmt = codec->pix_fmts;
	while (pfmt != NULL && *pfmt  != AV_PIX_FMT_NONE) {
		const char *name = av_get_pix_fmt_name(*pfmt );
		printf("%d (%s) ",*pfmt , name);
		pfmt ++;
	}
	printf("\n");
}

上述代码须在find_encoder系列函数调用后执行。

输出:

命令方式

输入命令

ffmpeg -h encoder=h264_nvenc

输出结果:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值