Win10下VS2013配置FFmpeg

ゝ一世哀愁。 2022-06-01 00:47 463阅读 0赞

目录

  • 目录
  • 前言
  • 概述
  • 使用dev和shared版本搭建环境

    • 下载地址
    • VS2013中配置
  • 编译源码过程

    • 下载地址
    • 安装过程

      • MinGW安装
      • 下载yasm
      • msysbat配置
      • FFmpeg编译
  • 总结
  • 链接地址

前言

虽然最终开发是要在linux下,但是看网上有教程是windows下的,所以顺便记录下windows下的FFmpeg搭建过程。这些都是一次做好,以后方便的事情!
学习!分享!感谢

概述

FFmpeg是一套可以用来记录、转换数字音频、视频,并能将其转化为流的开源计算机程序。它提供了录制、转换以及流化音视频的完整解决方案,包含非常先进的音视频编解码库libavcodec。

使用dev和shared版本搭建环境

下载地址

本来想使用FFmpeg的源码在windows下进行编译,本来以为会向linux那么容易,结果折腾了一上午,还是没有解决。然后就怒了。还是老老实实使windowsFFmpegdevshared直接搭建FFmpeg环境吧!
下载地址,我下载的是ffmpeg-3.4.1-win64-shared.zip和ffmpeg-3.4.1-win64-dev.zip

VS2013中配置

参考VS2013+FFMPEG开发环境配置,其实每次的配置都是类似的,所以参考VS2013怎么配置opencv才能不用每次都重新配置一遍?,这篇文章中详细讲述了如何一次配置。

编译源码过程

下载地址

FFmpeg下载地址,包含三个版本:Static、Shared、Dev。
Static——包含3个应用程序:ffmpeg.exeffplay.exeffprobe.exe,体积都很大,相关的DLL已经被编译到exe中。
Shared——除了ffmpeg.exeffplay.exeffprobe.exe之外还有一些DLLexe体积很小,在运行时到相应的DLL中调用功能。
Dev——开发者(developer)版本,里面包含了库文件xxx.lib以及头文件xxx.h,这个版本不含exe文件。
一般使用Shared版本或者Dev版本

mingw-get-setup.exe,MinGW(Minimalist GNU For Windows)是个精简的Windows平台C/C++、ADA及Fortran编译器,相比Cygwin而言,体积小很多,使用较为方便。
MinGW最大的特点就是编译出来的可执行文件能够独立在Windows上运行。

安装过程

MinGW安装

  • MinGW安装过程
    mingw-get-setup.exe,具体过程参考MinGW安装和使用。
    如果要添加gdb参考windows 下 gdb 的安装
    如果要设置Code Blocks参考C语言从零开始(二)-Code::Blocks使用
  • MinGW配置过程
    所谓配置过程,就是在Windows中配置环境变量,我的MinGW是安装在C:\MinGW\bin,所以在计算机的高级属性中配置环境变量即可。因为我原来在Code Blocks中配置了C:\DevTools\tdm64-gcc\bin,也就是已经添加过一个gcc的交叉编译,所以还要删除这个环境变量,然后重新设置C:\MinGW\bin的环境变量,重启!还挺麻烦的。不过我在这篇文章中C语言从零开始(二)-Code::Blocks使用中修改了配置的编译器gdb.exe为MinGW的。编译没有问题,说明MinGW的安装是正确的。
    所以,重启先!!!如果有不用重启的方法,不吝赐教!谢谢!
  1. --------------------

重启后在cmd.exe中打印如下:

  1. specs
  2. COLLECT_GCC=gcc
  3. COLLECT_LTO_WRAPPER=c:/mingw/bin/../libexec/gcc/mingw32/6.3.0/lto-wrapper.exe
  4. mingw32
  5. ../src/gcc-6.3.0/configure --build=x86_64-pc-linux-gnu --host=mingw32 --target=mingw32 --with-gmp=/mingw --with-mpfr --with-mpc=/mingw --with-isl=/mingw --prefix=/mingw --disable-win32-registry --with-arch=i586 --with-tune=generic --enable-languages=c,c++,objc,obj-c++,fortran,ada --with-pkgversion='MinGW.org GCC-6.3.0-1' --enable-static --enable-shared --enable-threads --with-dwarf2 --disable-sjlj-exceptions --enable-version-specific-runtime-libs --with-libiconv-prefix=/mingw --with-libintl-prefix=/mingw --enable-libstdcxx-debug --enable-libgomp --disable-libvtv --enable-nls
  6. win32
  7. gcc 6.3.0 (MinGW.org GCC-6.3.0-1)

下载yasm

  • yasm下载地址
    yasm下载地址,据这篇博文 Windows下,如何通过vs2013和yasm编译ffmpeg源码介绍,下载完Win64 .exe后要改名为yasm.exe,复制到C:/MinGW/msys/1.0/bin,注意,比如要安装msys-base选项,才能在MinGW目录下找到msys目录。
    0

msys.bat配置

打开C:\MinGW\msys\1.0\msys.bat,在此文件前面加入一行如下:

  1. Call "C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\bin\vcvars32.bat"

FFmpeg编译

我下载的ffmpeg-3.4.1.tar.xz,在双击msys.bat之后,进入解压后的ffmpeg目录,我的目录如下:F:\code\ffmpeg-3.4.1\ffmpeg-3.4.1
- 配置编译

  1. ./configure --prefix=/F/code/ffmpegLib --disable-static --enable-shared --enable-gpl

出现问题:

  1. WARNING: pkg-config not found, library detection may fail.

解决方法:

  1. go to http://ftp.gnome.org/pub/gnome/binaries/win32/dependencies/
  2. download the file pkg-config_0.26-1_win32.zip
  3. extract the file bin/pkg-config.exe to C:\MinGW\bin
  4. download the file gettext-runtime_0.18.1.1-2_win32.zip
  5. extract the file bin/intl.dll to C:\MinGW\bin
  6. go to http://ftp.gnome.org/pub/gnome/binaries/win32/glib/2.28
  7. download the file glib_2.28.8-1_win32.zip
  8. extract the file bin/libglib-2.0-0.dll to C:\MinGW\bin

出现问题!!!未解决!!!

总结

可能是我不习惯在windows下开发,现在感觉linux下开发真的挺爽的!像pkg-config这样的,我记得直接apt-get就行,结果我在windows下折腾了一上午都搞不定。先这样吧!以后有需要继续补充吧!

链接地址

VS2013+FFMPEG开发环境配置
MinGW安装和使用
windows 下 gdb 的安装
Windows下,如何通过vs2013和yasm编译ffmpeg源码
windows下编译ffmpeg

发表评论

表情:
评论列表 (有 0 条评论,463人围观)

还没有评论,来说两句吧...

相关阅读

    相关 opencv2.1.3 + win10 +vs2013

    由于课题的需要,需要用到OpenCV来做相机的标定,所以专门在VS2013下配置了OpenCV2.4.13,同时也是想着能够养成随时记笔记的习惯。但是在配置的过程中,经常是每一