首页 关于我们 成功案例 网络营销 电商设计 新闻中心 联系方式
QQ联系
电话联系
手机联系

2025-02-18:ffmpeg是c编写的音视频编解码库,请问用go语言如何调用?例子是03输出版本号。

发布时间:2025-06-24 08:00
发布者:网络
浏览次数:

2025-02-18:ffmpeg是c编写的音视频编解码库,请问用go语言如何调用?例子是03输出版本号。

答案2025-02-18:

用 github.com/moonfdd/ffmpeg-go 这个库。

这是我自己写的golang绑定ffmpeg库,只依赖动态链接库,不依赖头文件,接口全部是按照头文件改过来的。

这个库目前只能用在windows上,原因是go的回调函数在c中调用,用syscall.NewCallBack函数转换成uintptr,而这个函数只支持windows操作系统。请各位高手提供下跨平台的callback转换函数,拜托了。

秀脸FacePlay 秀脸FacePlay

一款集成AI换脸、照片跳舞等多种AI特效玩法的App

秀脸FacePlay 124 查看详情 秀脸FacePlay

代码参考ffmpeg5入门教程的第三个例子输出版本号,用golang改写的。

用如下命令便可查看运行结果。

代码语言:shell复制
go run ./examples/a03get_lib_version/main.go

代码用golang编写。代码如下:

代码语言:go复制
package mainimport ("fmt""os""os/exec""github.com/moonfdd/ffmpeg-go/ffcommon""github.com/moonfdd/ffmpeg-go/lib*codec""github.com/moonfdd/ffmpeg-go/lib*util")func main() {os.Setenv("Path", os.Getenv("Path")+";./lib")ffcommon.SetAvutilPath("./lib/*util-56.dll")ffcommon.SetAvcodecPath("./lib/*codec-58.dll")codecVer := lib*codec.AvcodecVersion()ver_major := (codecVer >> 16) & 0xffver_minor := (codecVer >> 8) & 0xffver_micro := (codecVer) & 0xfffmt.Printf("FFmpeg version is: %s .\n*codec version is: %d=%d.%d.%d.\n", lib*util.FFMPEG_VERSION, codecVer, ver_major, ver_minor, ver_micro)fmt.Println("---------------------------------")data, err := exec.Command("./lib/ffmpeg", "-version").Output()if err != nil {fmt.Println("ffmpeg err = ", err)}fmt.Println(string(data))}
2023-02-18:ffmpeg是c编写的音视频编解码库,请问用go语言如何调用?例子是03输出版本号。在这里插入图片描述

以上就是2025-02-18:ffmpeg是c编写的音视频编解码库,请问用go语言如何调用?例子是03输出版本号。的详细内容,更多请关注其它相关文章!


# 视频处理  # git  # windows  # golang  # 操作系统  # go语言  # ai  # 音视频  # 编解码  # 回调  # 自带  # 高性能  # 重启  # 如何使用  # 重命名  # 独立显卡  # 满洲里做网站建设  # 营销推广策划logo  # 东营建设局网站  # 铃声网站建设美丽  # seo岗位什么意思啊  # seo专员英文  # 网站推广当火2星  # 济南营销推广引流公司排名  # 石狮电商网站建设  # 推广彩票网站盈利模式