ffmpeg增加264编码

原创 2015年11月18日 15:46:16

ffmpeg 中带有264的解码,没有编码,需要添加x264;

参考百度上的“windows_ffmpeg编译 ”

文档

下载ffmpeg 代码合x264代码,

ffmpeg 代码:http://ffmpeg.org/

x264代码:http://www.videolan.org/developers/x264.html

相关资源获取的地方:

http://ffmpeg.zeranoe.com/builds/

 

 

1 按照minGW 环境

2 修改msys.bat,添加call "C:\Program Files\Microsoft Visual Studio 8\VC\bin\vcvars32.bat"

3 进入到x264目录

 ./configure --enable-static --disable-opencl --disable-lavf --enable-debug --disable-asm --prefix=./linux_build_noyasm

make

make install


将x264目录中的linux_build_noyasm文件下的include中的.h文件与lib中的.a文件放到minGW的include与lib目录中

4 进入ffmpeg目录编译

CC=cl ./configure --enable-libx264 --disable-libspeex --enable-nonfree --enable-gpl --disable-shared --prefix=./vs2015_build_noyasm --enable-debug
 make
 make install

得到相关内容

 

5 验证是否加入正确

ffmpeg.exe -i s.avi -vcodec libx264 -acodec libfaac s.mp4



PS:顺便记录一下单独编译可以使用vs进行debug的x264过程

一准备环境:

下载 mingw  MSYS

http://www.mingw.org/或去 http://sourceforge.Net/projects/mingw/  下载

下载类似:mingw-get-inst-20110802.exe 的文件。

提示:msys此处就不用下载了,mingw-get-inst-20110802.exe 中已经包含了msys1.0,后面安装的时候就可以看到该选项。

下载 yasm

x264编译里面的汇编代码需要yasm.exe 

去官网:http://yasm.tortall.net/Download.html  下载:Win32 .exe (for general use on 32-bit Windows)

文件名为:yasm-1.1.0-win32.exe

下载 x264

http://videolan.mirror.aussiehq.net.au/x264/snapshots/ 解压


二编译步骤

安装 mingw  msys

    选择安装路径:D:\MinGW

Select Components步骤中选择:

      C Compiler (默认且一定选择)

      C++ Compiler

      MSYS Basic System(选择此项将会安装msysmsys则不需要另外安装)

      MinGW Developer ToolKit

    等待安装完成。

    安装完成后,在D:\MinGW目录下可以看到 msys 文件夹,msys也已经安装。

配置让x264编译时产生windows下调用dll对应的lib(本人无这个需要,此步没做)

    为了方便VS200X以及VS2010调用x264的动态库,可以通过配置让x264编译时产生windows下调用dll对应的lib,当然,如果你没有这个需要,那么就可以省略以下处理,直接进入步骤3

    进入:C:\MinGW\msys\1.0\文件夹,使用UltraEdit打开msys.bat文件,在文件的最最前面(echo off之后)加入如下一行:

    call "D:\Program Files\Microsoft Visual Studio 14.0\VC\bin\vcvars32.bat"

其中D:\Program Files\Microsoft Visual Studio 14.0”为你机器上安装VS目录,我的电脑安装的是VS2015

添加完成了以后,就可以运行下msys.bat这个文件了,然后键入 gcc   -v,如果出现的不是什么 no command  no input file什么的,而是出现了一些版本的信息,证明安装对了。

配置 yasm

    为了减少配置环境变量的麻烦,本处直接把 yasm-1.1.0-win32.exe 文件名修改成:yasm.exe,并放到msys的bin文件夹内

编译x264

 使用everything找到VS中的VsDevCmd 运行一下(也许不用)

    双击C:\MinGW\msys\1.0\msys.bat,启动

    cd切换到当前x264所在目录

    再执行以下命令:

CC=cl ./configure --enable-static --disable-opencl --disable-lavf --enable-debug --disable-asm --prefix=./vs2015_build_noyasm

注意使用  CC=cl 否则编译出的lib在vs中不能进入函数内部

请耐心等待一段时间

     $ make

    $ make install


然后在其他位置新建一个vs工程,将原本x264源码目录下的example.c加入

增加include目录与lib目录:C++->常规->附加包含目录增加 [x盘://x264目录下的]/vs2015_build_noyasm/include 链接器附加lib  目录类似

在lib中增加:

libx264.lib




【Linux环境编程】内存管理:函数栈空间,虚拟内存及其分配

一.函数调用栈空间的分配与释放 函数执行时有自己的临时栈空间,c++成员函数有两个临时栈空间,一个是成员函数的还有一个是对象的。 函数的参数是压进临时栈中,传递的实参用来初始化临时栈中的形参。 ...

全面介绍Windows内存管理机制及C++内存分配实例之虚拟内存(2)

·        虚拟内存的关键之处 虚拟内存存在的优点是,需要的时候才真正分配内存。那么程序必须决定何时才提交内存。 如果访问没有提交内存的数据结构,系统会产生访问违规的错误。提交的最好方法是,...

FFmpeg X264编码参数表

  • 2017年09月13日 17:40
  • 809KB
  • 下载

ffmpeg 和 opengl 混合编码出H264

  • 2016年02月18日 14:47
  • 52.77MB
  • 下载

在Android上使用FFmpeg将摄像头采集的YUV裸流编码为h264。

http://blog.csdn.NET/a992036795/article/details/54020491 版权声明:本文为博主原创文章,未经博主允许不得转载。 一、目...
  • STN_LCD
  • STN_LCD
  • 2017年07月17日 18:34
  • 1344

ffmpeg x264编码

  • 2014年01月10日 15:13
  • 21.25MB
  • 下载

使用FFMpeg进行H264编码

使用FFMpeg可以很方便的对音视频进行编码,并且写文件。     下面的代码是将5幅1280*720大小的图片进行编码,并且写到文件中。     代码有些乱,但希望能抛砖引玉,对学习这方面的朋友...

ffmpeg h264硬编码插件

  • 2014年06月22日 19:04
  • 8.43MB
  • 下载
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:ffmpeg增加264编码
举报原因:
原因补充:

(最多只允许输入30个字)