1200字范文,内容丰富有趣,写作的好帮手!
1200字范文 > ffmpeg编译 MingW + MSYS

ffmpeg编译 MingW + MSYS

时间:2019-08-02 16:16:19

相关推荐

ffmpeg编译 MingW + MSYS

环境要求:MinGW:5.1.4

make: 3.81

gcc: 4.3.2

w32api: 3.13

SDL: 1.2.1

MinGW-Runtime:3.15

1.Minimal SYStem (MSYS) 安装 下载MSYS-1.0.10.exe并安装: 下载地址:/source/2635337 安装到c:/msys/1.0,临近最后会出现个dos窗口,最后一句为: Do you wish to continue with the post install? [y/n ] 复制代码

输入n,结束安装。

2. MSYS DTK(Developer Tool Kit) 安装 下载msysDTK-1.0.1.exe并安装: 下载地址:/source/2635339 安装到C:/msys/1.0,其他默认。

3.升级下MSYS 下载msysCORE-1.0.11-bin.tar.gz: 下载地址:/source/2694777 解压这个文件,将bin/mount.exe,msys-1.0.dll,ps.exe三个文件copy到c:/msys/1.0/bin下面覆盖下。

4.升级下MSYS的BASH 下载bash-3.1-MSYS-1.0.11-snapshot.tar.bz2: 下载地址:/source/2635711 解压这个文件,将bin/bash.exe,sh.exe两个文件copy到c:/msys/1.0/bin。

5. MinGW安装 下载mingw-5.1.4.exe并安装: 下载地址:/source/2635735 安装,选择download andinstall,下两步之后选择Candidate,不要选Current。选择MinGW base tools(autoselected), g++ compiler, MinGW make;安装路径为c:/msys/1.0/mingw。等待下载完了安装吧。O(∩_∩)O……

5.2. 还原binutils-2.16.91 很多朋友需要用ffmpeg的dll来做开发。编译的时候是用./configure--enable-memalign-hack --disable-static--enable-shared。但是最终编译出来makeinstall或者将相关的dll拷贝得到ffmepg同级目录后,执行ffmpeg或者ffplay报错:应用程序正常初始化失败。 经过google了许多资料,发现是binutils的版本问题。chinavideo论坛上面有的朋友说是mingw的版本问题,使用MinGW-3.1.0-1.exe会解决。Jeremiah经过试验,发现不大行,从报错的结果来看,MinGW-3.1.0-1.exe没有自带binutils。还是要自己安装。而MinGW-5.1.4.exe的candidate选项会默认给我们安装binutils-2.18.50-0109-2.tar.gz。而这个binutils会最终导致应用程序正常初始化失败的错误。 Jeremiah和网友deepocean测试了n个binutils的版本,最后发现binutils-2.16.91-0827-1.tar.gz是最适合的。其他的,ms不行! 下载地址:/source/2635739 解压到c:/msys/1.0/mingw,覆盖原来的。

6.配置fstab copy C:/msys/etc/fstab.sample 成fstab,确保以下对应: #Win32_PathMount_Point

c:/msys/1.0/mingw/mingw 复制代码

原始环境就搭建好了。可以启动桌面上行的MSYS了。

7.升级make 下载make-3.81.90-msys.rar: 下载地址:/source/2635746 解压,复制make.exe到c:/msys/1.0/bin下,覆盖原来的make。 MSYS中输入make-v显示的版本为3.81。

8.升级gcc 下载gcc-4.3.2-tdm-1-core.zip: 下载地址:/source/2635749 解压到c:/msys/1.0/mingw,覆盖原来的。 MSYS中输入gcc-v显示的版本为4.3.2。

9.升级W32API 下载w32api-3.13-mingw32-dev.tar.gz: 下载地址:/source/2635754 解压到c:/msys/1.0/mingw,覆盖原来的。

10.添加SDL 下载SDL-devel-1.2.11-mingw32.tar.gz: 下载地址:/source/2635755 解压该软件包; 将lib下的所有文件复制到C:/msys/1.0/mingw/lib; 将include下的所有文件复制到C:/msys/1.0/mingw/include; 将bin下的i386-mingw32msvc-sdl-config复制到C:/msys/1.0/mingw/bin,并重命名为sdl-config; 将bin下的SDL.dll复制到C:/msys/1.0/mingw/bin。

-7-31

下载新的SDL。

下载地址:/download-1.2.php

下载版本: SDL-1.2.15.tar.gz-GPGsigned

动态编译:

./configure --enable-shared--prefix=/usr/local

make

make install

执行完毕后在local\bin、local\lib、local\inclue下会生成SDL的对应文件。

10.2 添加pr.exe 下载coreutils-5.97-MSYS-1.0.11-snapshot.tar.bz2: 下载地址:/source/2635758 解压,拷贝bin的pr.exe到c:/msys/1.0/bin下。

整体上的编译环境就搭建好了。

11.编译FFmpeg

ffmpeg-0.6.3.tar.bz2:/source/3361281或自行/releases/下载。

copy到c:/msys/1.0/home/your_name下面。

解压:tar xjvfffmpeg-0.6.3.tar.bz2。

cdffmpeg-0.6.3

vi一个文件ffmpeg-conf.sh,内容为:

SDL_CFLAGS=/mingw/include

SDL_LIBS=/mingw/lib

./configure --enable-ffplay --enable-memalign-hack 复制代码

执行./ffmpeg-conf.sh。

执行make,应该不会有错误的。

执行ffplay filename就可以播放了。

其他的编码可以根据需要自行添加。

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。