[记录一个bug]ffmpeg avfilter_graph_config段错误崩溃的问题[已解决]

avfilter前面的初始化都没问题,结果在avfilter_graph_config就崩溃了。

找了好久,最终排查到了av_opt_set_int_list 设置buffersink_ctx的pix_fmt有问题,虽然在这里是没报错的

我在里面是这样写的

enum AVPixelFormat pix_fmts=AV_PIX_FMT_YUV420P;
av_opt_set_int_list(buffersink_ctx, "pix_fmts", &pix_fmts,AV_PIX_FMT_NONE, AV_OPT_SEARCH_CHILDREN);          

而网上例子是传一个AVPixelFormat 数组的,后面改成了

enum AVPixelFormat pix_fmts[] = { AV_PIX_FMT_YUV420P,AV_PIX_FMT_NONE };
av_opt_set_int_list(buffersink_ctx, "pix_fmts", pix_fmts,AV_PIX_FMT_NONE, AV_OPT_SEARCH_CHILDREN);

结果还是会崩溃,但是gdb断点错误的地方跟之前不一样了

最后结论是传入的pix_fmt是不对的格式,应该是CUDA格式

enum AVPixelFormat pix_fmts[] = { AV_PIX_FMT_CUDA,AV_PIX_FMT_NONE };
av_opt_set_int_list(buffersink_ctx, "pix_fmts", pix_fmts,AV_PIX_FMT_NONE, AV_OPT_SEARCH_CHILDREN);

问题解决!

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值