golang直接調用ffmpeg先行編譯類庫(windows)

來源:互聯網
上載者:User
這是一個建立於 的文章,其中的資訊可能已經有所發展或是發生改變。

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

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.