我是靠谱客的博主 从容鞋垫,最近开发中收集的这篇文章主要介绍VS2013编译ffmpegVS2013编译ffmpeg,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

VS2013编译ffmpeg

由于毕设需要开始学习ffmpeg,因为要修改源码所以这里只能是源码编译。如果要直接使用ffmpeg网上有现成的SDK。源码编译,当然搭环境的是第一步。在Windows平台上比较麻烦,需要的东西比较多。

  • Mingw
  • yasm
  • SDL
  • ffmpeg

具体步骤

1.安装mingw,下载地址:http://www.mingw.org/;下载完成后安装,安装完成后点运行,标记上以下几项:mingw-devloper-toolkit、mingw32-base、mingw32-gcc-g++、msys-base.然后在Installation菜单下点击Apply Changes;

2.下载FFMPEG源码,下载地址:http://ffmpeg.com;

3.下载yasm,下载地址: http://yasm.tortall.net/ ;下载后改名为yasm.exe,复制到MinGW安装目录的/msys/1.0/bin(默认装C盘则路径为C:/MinGW/msys/1.0/bin)目录下;

4.配置C:/MinGW/msys/1.0/msys.bat,在此文件的最前面(@echo off之后)添加一行如下内容:

call “E:Program Files(x86)Microsoft Visual Studio 12.0VCbinvcvars32.bat” (依实际安装路径修改路径);

5.重命名 C:/MinGW/msys/1.0/bin/link.exe(依实际安装选择路径),这一步是防止这个link.exe与vc的link.exe发生冲突,编译完成后可修改回来;修改环境变量中的Path,将C:/MinGW/msys/1.0/bin和C:/MinGW/bin加到path中。在cmd中输入gcc -v出现相关信息则Mingw安装成功。

6.安装SDL

下载SDL的源码包,解压到ffmpeg同目录下

进入SDL目录,依次执行

./configure -–prefix=/usr/local/SDL
make
make install

通过以下命令导入SDL环境变量。

export PATH=”$PATH:/usr/local/SDL/bin”
export C_INCLUDE_PATH=”$C_INCLUDE_PATH:/usr/local/SDL/include/SDL”
export LD_LIBRARY_PATH=”$LD_LIBRARY_PATH:/usr/local/SDL/lib”

7.安装x264

下载X264源代码包,解压到ffmpeg同目录下

进入到x264目录,依次执行

./configure –enable-shared –-disable-asm -–prefix=/usr/local/x264
make
make install

通过以下命令导入x264环境变量。

export PATH=”$PATH:/usr/local/x264/bin”
export C_INCLUDE_PATH=”$C_INCLUDE_PATH:/usr/local/x264/include”
export LD_LIBRARY_PATH=”$LD_LIBRARY_PATH:/usr/local/x264/lib”

8.配置编译,双击msys.bat,转到FFMPEG源代码根目录下,可运行 ./configure –help查看编译配置选项,我使用的选项为:

./configure –-enable-shared -–disable-static –-enable-memalign-hack –enable-libx264 –enable-gpl –-prefix=/usr/local/ffmpeg

等待配置完成返回;

9.输入 make all 编译;

10.输入make install安装。
安装完成后,可到目录,查看安装结果。
完成,此时生成的头文件及库已经在ffmpeg源代码下的local/ffmpeg目录下,使用这个库,即可在VS下单步进入FFMPEG函数内部。

可能遇到的问题

在./cofigure时可能出现

line ***:tr:command not found
line ***:uname:command not found
line ***:cat:command not found

解决办法:安装coreutils,在安装目录的bin目录下将缺少的命令的exe和libintl3.dll,libiconv2.dll 文件拷贝到C:MinGW/msys/1.0/bin目录下

warning:pkg-config not found, library detection may fail

解决办法:下载pkg-config-0.23-2.zip及glib_2.18.4-1_win32.zip
http://ftp.gnome.org/pub/gnome/binaries/win32/dependencies/pkg-config_0.23-3_win32.zip
http://ftp.gnome.org/pub/gnome/binaries/win32/glib/2.18/glib_2.18.4-1_win32.zip

把pkg-config.exe 和 glib_2.18.4-1_win32.zip中的libglib-2.0-0.dll放在mingw的bin目录下,或者放在$path目录下.

参考资料:
http://blog.csdn.net/finewind/article/details/38854517
http://zengwu3915.blog.163.com/blog/static/278348972014628101514288/
http://zengwu3915.blog.163.com/blog/static/27834897201462210172410?suggestedreading

最后

以上就是从容鞋垫为你收集整理的VS2013编译ffmpegVS2013编译ffmpeg的全部内容,希望文章能够帮你解决VS2013编译ffmpegVS2013编译ffmpeg所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(46)

评论列表共有 0 条评论

立即
投稿
返回
顶部