最近做一个功能要设置Avfilter实例的参数,折腾了不少时间,因为要访问具体的对象,没有对象名,无法获取句柄,只能去分析Avfilter/AvfilterGraph源码
解析Avfilter实例名字的函数:filter_parse
定位到代码 inst_name = strchr(p->filter_name, ‘@’)
可以基本确定Avfilter类型名与实例对象名之间是使用@分开的
比如重采样字符串内容设置:
[in0]aresample@aresample_0=48000[out0]
[in0]表示输入 buffersrc
[out0]表示输出buffersink
aresample表示Avfilter类型滤镜
aresample_0表示滤镜对象的具体名字