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("电", "-","子", "=", "书")

相关推荐
皓月斯语8 小时前
【C++基础】三目运算符
开发语言·数据结构·c++
初願致夕霞9 小时前
C++懒汉单例设计详解
服务器·开发语言·c++
脱胎换骨-军哥9 小时前
C++分布式系统设计:从通信引擎到分布式共识
开发语言·c++·分布式
XUHUOJUN9 小时前
AKS 不是安装在 Windows Server 上,而是运行在 Windows Server 之上的 Azure 平台能力
windows·架构·k8s·azure local·azure stack
脱胎换骨-军哥10 小时前
C++零成本抽象理论深度拆解:现代C++如何在不牺牲性能的前提下提供高级语法封装
java·开发语言·c++
_wyt00110 小时前
01背包问题详解
c++·背包dp
方便面不加香菜10 小时前
C++ 模板进阶
开发语言·c++
Wild_Pointer.10 小时前
高效工具实战指南:Procexp64进程资源管理器
c++·windows
cjr_xyi11 小时前
AT1202Contest_c binarydigit 题解
c语言·c++·算法
会周易的程序员11 小时前
Libnodave S7 通信库:架构设计与实现解析
linux·c++·物联网·架构·c·s7·工业协议