问题描述
我目前的环境是:
编辑器: Microsoft Visual Studio Community 2022 (64 位)
运行的脚本是ffmpeg自带的remux样例,只不过我想用c++语言执行这个样例。在执行的过程中报错如下图:
C4576 后跟初始值设定项列表的带圆括号类型是一个非标准的显式类型转换语法
解决办法
我发现av_ts2str、av_ts2timestr、av_err2str 中使用了匿名数组的语法,目前在visual studio中应该是不支持的。
可以换个支持C99 标准的编辑器,或者转化一下语法。我是采用的后者
char tmp_ts_arr[AV_TS_MAX_STRING_SIZE] = {0};
#define av_ts2str(ts) av_ts_make_string(tmp_ts_arr, ts)
改成上图这样了,就可以正常执行了。
小弟刚刚入门ffmpeg和C++, 如有更好的办法,帮忙留个言,蟹蟹了。
## 祝你好运hope("大神多多指点")
topic("有问题可以交流呀")
concat("球球QUN", "61480", "9646")