您的位置:首页 > 运维架构

ffmpeg av_opt_set_dict陷阱

2015-11-01 20:29 211 查看
Av_opt_set_dict(obj, dict);

今天用这个函数,发现set之后,原来指向dict的指针内容发生了变化。看了源码,发现这个函数的是一个大陷阱啊,它会改变dict中的内容。

正确的用法是在set之前,先将dict复制一份副本,用副本进行set,这样就比较符合人类的用法了。

Av_dict_copy(&tmp_dict, dict,0);

Av_opt_set_dict(obj, tmp_dict);

Av_dict_free(&tmp_dict);

这样原来dict中的内容就不会莫名的变掉了。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: