golang直接调用ffmpeg预编译类库(windows)的配置方法,

之前参考了https://blog.csdn.net/yang8023tao/article/details/53338023这篇文章,虽然行得通,但是觉得把文件都copy到mingw的目录下这种方法比较简单粗暴,故建议用如下的方法。

我是在windows10 64位的环境下配置的。

首先安装MinGW64

我是按照到C:\mingw-w64目录下面。具体安装mingw的方法参考其他文章。

FFmpeg预编译库下载

http://ffmpeg.zeranoe.com/builds/网站上

1.下载Dev版本,里面包含了ffmpeg的xxx.h头文件以及xxx.lib库文件。
2.下载Shared版本,里面包含了ffmpeg的dll文件。
3.解压之后,
【64位放置位置,全部放到C:\ffmpeg目录下】
 *  把dev版本文件夹中的lib目录整个儿复制合并到C:\ffmpeg\lib目录下。
 *  把dev版本文件夹中的include目录整个儿复制合并到C:\ffmpeg\include目录下。
 *  将share版本文件夹中bin目录整个复制合并到C:\ffmpeg\bin目录下

Golang程序调用ffmpeg测试程序

package main

/*
#cgo CFLAGS: -IC:/ffmpeg/include
#cgo LDFLAGS: -LC:/ffmpeg/lib/ -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())
}
注意上面这两句语句:

cgo CFLAGS: -IC:/ffmpeg/include
cgo LDFLAGS: -LC:/ffmpeg/lib/

指定了include和lib的目录,这样编译的时候就不会报找不到了。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值