windows运行ffmpeg的脚本报错:av_ts2str、av_ts2timestr、av_err2str => E0029 C4576

问题描述

我目前的环境是:

编辑器: 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")
include("电", "-","子", "=", "书")

相关推荐
郝学胜-神的一滴20 分钟前
中级OpenGL教程 013:渲染器类架构设计与逐帧渲染流程详解
开发语言·c++·unity·游戏引擎·图形渲染·opengl·unreal
小小龙学IT2 小时前
C++ 并发编程深度解析:从内存模型到无锁数据结构
数据结构·c++
小狮子&2 小时前
ubuntu2604终端右键新建窗口
windows
凯瑟琳.奥古斯特2 小时前
力扣1013三等分解法与C++实现
开发语言·c++·算法·leetcode·职场和发展
一拳一个呆瓜3 小时前
【STL】iostream 编程:缓冲区的作用
c++·stl
我不是懒洋洋3 小时前
从零实现一个分布式任务调度器:XXL-JOB的核心设计
c++
凯瑟琳.奥古斯特3 小时前
力扣1012数位DP解法详解
开发语言·c++·算法·leetcode·职场和发展
shx_wei4 小时前
从函数调用到进程替换:使用 execl、CMake 与 PowerShell 构建一个多可执行程序
linux·c语言·windows·c
奶油话梅糖4 小时前
锐捷常用命令速查表
java·网络·windows