1. 程式人生 > >golang直接呼叫ffmpeg預編譯類庫(windows)的配置方法,

golang直接呼叫ffmpeg預編譯類庫(windows)的配置方法,

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

首先安裝MinGW64

我是按照到C:\mingw-w64目錄下面。具體安裝mingw的方法參考其他文章。

FFmpeg預編譯庫下載

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的目錄,這樣編譯的時候就不會報找不到了。