golang直接调用ffmpeg预编译类库(windows)
MinGW介绍
MINGW(Minimalist GNU on Windows)是一个可以在windows下编译Linux程序的仿真linux编译环境,他提供了linux下的C、C++头文件、系统库和一些linux下的编译工具集合,例如gcc、g++和make工具。使得编译出来的二进制可以在windows上运行。(此前的 cygwin 虽然也是 GNU 的 Windows 移植,但是 cygwin 是有版权的,不是 GNU)
MinGW下载
【MinGW】 http://sourceforge.NET/projects/mingw/
【MinGW环境变量配置】 http://jingyan.baidu.com/article/6b97984da0bd8a1ca2b0bf90.html
下载最新的MinGW,运行后他会根据你实际选择需要安装的工具集另行下载这些包,比如gcc、g++之类的。运行MinGW.exe: 默认安装到C:\MinGW目录下一般来说工具集选择以下三个就足够了:MinGW base tools //基本的gcc 编译器
g++ compiler //g++编译器
MingGW Make //Make工具测试是否安装成功?
命令行中输入gcc --version或gcc --version后如果出现正确的版本信息就说明 PATH 路径OK了
FFmpeg预编译库下载
从http://ffmpeg.zeranoe.com/builds/网站上
1.下载Dev版本,里面包含了ffmpeg的xxx.h头文件以及xxx.lib库文件。
2.下载Shared版本,里面包含了ffmpeg的dll文件。
3.解压之后,* 把dev版本文件夹中的Include和lib目录整个儿复制合并到C:\MinGW目录下。* 将share版本文件夹中bin目录下对应的所有dll复制合并到C:\MinGW项目路径下
Golang程序
package main/*
#cgo LDFLAGS: -llibavformat -llibavcodec -llibavutil -llibavdevice -llibavfilter -llibswresample -llibswscale
#include <libavformat/avformat.h>
#include <libavcodec/avcodec.h>
#include <libavutil/avutil.h>
#include <libavutil/opt.h>
#include <libavdevice/avdevice.h>static const AVStream *go_av_streams_get(const AVStream **streams,unsigned int n)
{return streams[n];
}
*/
import "C"import ("fmt"
)func main() {fmt.Println(C.avdevice_version())
}
参考FFmpeg封装类,以便扩展
https://github.com/imkira/go-libav https://github.com/giorgisio/goav
转载于:https://my.oschina.net/GokerYang/blog/794461
golang直接调用ffmpeg预编译类库(windows)相关推荐
- golang直接调用ffmpeg预编译类库(windows)已更新
MinGW介绍 MINGW(Minimalist GNU on Windows)是一个可以在windows下编译Linux程序的仿真linux编译环境,他提供了linux下的C.C++头文件.系统库和 ...
- Jquery 模板插件 jquery.tmpl.js 的使用方法(2):嵌套each循环,temp调用(使用预编译的模板缓存)...
直接上代码吧 一:主窗口 /*#region SendChooseTargetTemplate 发送候选人主窗口模板*/ var SendChooseTargetTemplate = ''; Send ...
- 调用ffmpeg库编译时出现common.h:175:47: error: 'UINT64_C' was not declared in this scope
解决办法 出现错误:jni/ffmpeg/libavutil/common.h:175:47: error: 'UINT64_C' was not declared in this scope 解决: ...
- 记录过程: Android Studio4.2通过NDK调用TNN(预编译的tnn so库)
目录 0. 准备 1. 创建android ndk工程 2. 分析默认生成的工程 3. 写好java native接口 4. 实现这些java native方法(jni) 5. 修改cpp/CMake ...
- mybatis深入理解(一)之 # 与 $ 区别以及 sql 预编译
mybatis 中使用 sqlMap 进行 sql 查询时,经常需要动态传递参数,例如我们需要根据用户的姓名来筛选用户时,sql 如下: select * from user where name = ...
- Qtum量子链发布QIP-6,通过预编译合约大幅降低开发成本
背 景 以太坊中的ecrecover函数可以用来获取对一条消息签名的地址.这对于证明一条消息或者一段数据被一个指定的账户签名过(而不是被篡改过)非常有用.但是 Qtum 没有使用以太坊的账户模型,而是 ...
- python 预编译命令_Python子进程调用预编译j
这可以从windows命令行执行:c:\mallet\bin\mallet run 我试过了 ^{pr2}$ 然后得到一个错误WindowsError: [Error 2] The system ca ...
- Android编译调用FFmpeg API,自己写方法,编译so库
作者:谭东 时间:2017年9月19日 环境:Windows 8.1专业版 NDK版本:android-ndk-r14b FFmpeg版本:FFmpeg 3.0.2 "Einstein&qu ...
- ffmpeg编译(生成Windows或Win32平台dll, lib)
ffmpeg编译(生成Windows或Win32平台dll, lib) 介绍:本文简要介绍通过cygwin环境来编译生成ffmpeg. 包括解码组件libfaad与libopencore-amrnb的 ...
最新文章
- Linux重启命令reboot
- IDEA 的 LeetCode 刷题插件 leetcode editor
- java包的概念及作用
- 10年后,阿里给千万开源人写了一封信
- Window7文件共享之法 [转载]
- tornado 简易教程
- PL/SQL中模拟EBS上下文
- tcp通讯一次最多能发送多少数据?_关于TCP/IP,必须知道的十个知识点
- windows操作笔记
- 部署自己的tomcat,让tomcat和IIS共同享用服务器的80端口
- C++常见编译问题问题(慢慢积累)
- Java中的序列化问题
- 以前自己用SDL写的一个小游戏:QuadraPop
- 网吧版XP系统制作与优化终极版(转)
- ps教程完整版(来自百度网盘)
- 2022年信息安全工程师考试知识点:网络安全需求分析与基本设计
- 【C# | Unity】B站Android客户端缓存视频提取工具
- linux系统怎么使用优盘,教你如何使用u盘安装Linux系统
- grasps元素_无摩擦力是什么意思
- 电脑高效率工作、学习工具软件推荐