windows编ffmpeg2.2.4和插件h265

0、前言

据说新出来了h265的视频,在迅雷看看上面看到的。网上查看了一下简单介绍,貌似h265的视频比h264的视频压缩率要高。并且能做4K的视频。

同一时候看到网上有人试过ffmpeg在编译的时候加上了h265,这样ffmpeg看起来倒是能外挂h265的编解码,所以这篇blog文,主要是用ffmpeg来尝试一下h265。

这里引用几张x265的介绍图片(当然我自己的显示器也是4k的):

windows编ffmpeg2.2.4和插件h265



windows编ffmpeg2.2.4和插件h265

watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvemVuZ3Jhb2xp/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" width="442" height="196" alt="">



windows编ffmpeg2.2.4和插件h265







1、首先下载ffmpeg源码

眼下最新版是2.2.4

windows编ffmpeg2.2.4和插件h265

下载传送门:http://www.ffmpeg.org/releases/ffmpeg-2.2.4.tar.gz

2、如果已经配置好了mingw

我的系统是win7。网上配置mingw的文章还是挺多的


3、编译x264(ffmpeg相同须要外挂h264的编解码)

来这里下载:http://www.videolan.org/developers/x264.html


windows编ffmpeg2.2.4和插件h265

解压出来。用mingw进入源码文件夹

运行:./configure --prefix=/x264 --enable-shared--enable-static

make

make install

这时候在C:\MinGW\msys\1.0以下会出现一个x264目录,里面就是所须要的库了

4、编译x265(这是主要须要的)

x265的源码是用hg形式克隆的(和git一样的源码管理器)

windows编ffmpeg2.2.4和插件h265

由于源码的编译使用的是cmake,所以还要配置cmake的环境。仅仅须要下载一个绿色免安装版本号的cmake。然后填写系统的环境变量到cmake.exe就可以,所以以下的步骤如果已经配置好了cmake

那么首先。用mingw进入x265的源码文件夹中的msys文件夹中:

cdx265/build/msys/

运行sh make-Makefiles.sh

这样就打开了cmake的配置界面

windows编ffmpeg2.2.4和插件h265

watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvemVuZ3Jhb2xp/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" width="344" height="260" alt="">


由于已经配置过,要是首次配置(出了配置安装路径之外)。还须要找到yasm.exe来支持汇编(这个须要单独下载,网上也非常多下载的地方)

然后依次点击configure----generate

windows编ffmpeg2.2.4和插件h265


这样配置文件就产生了。关掉cmake(右上角关闭)。这时回到mingw中

make

make install

这样就在C:\x265_libs生成了x265的dll

5、生成ffmpeg前须要做的配置

把上面生成的x264的目录:

windows编ffmpeg2.2.4和插件h265

生成的x265的目录:

windows编ffmpeg2.2.4和插件h265

watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvemVuZ3Jhb2xp/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" width="313" height="144" alt="">

都拷贝一份,放到mingw的根文件夹中:

windows编ffmpeg2.2.4和插件h265

6、编译ffmpeg

mingw进入源码文件夹中。运行:

./configure --enable-yasm--prefix=/ffmpeg --disable-debug --disable-static \

--enable-shared--enable-gpl --enable-libx265 --enable-libx264

windows编ffmpeg2.2.4和插件h265


这样就代表已经配置成功了

make

make install

7、測试使用ffmpeg压缩视频

windows编ffmpeg2.2.4和插件h265

watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvemVuZ3Jhb2xp/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" width="414" height="180" alt="">



測试使用的环境是虚拟机中,这样能够发现我们在执行exe的时候缺少什么dll

把bin文件夹下的ffmpeg.exe放到虚拟机中跑,终于发现。除了bin里面出现的这些dll之外,还须要用到mingw中的libgcc_s_dw2-1.dll、libiconv-2.dll(能够通过搜索mingw根文件夹得到)

windows编ffmpeg2.2.4和插件h265

watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvemVuZ3Jhb2xp/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" width="390" height="258" alt="">


还须要x265和x264的dll,在这两个源码的project,搜索得到

然后使用命令,压缩一个视频,分别看看x264和x265的差别

a、ffmpeg -i 1.mp4 -acodec copy -vcodec libx264-f mp4 h264.mp4

b、ffmpeg -i 1.mp4 -acodec copy -vcodeclibx265 -f mp4 h265.mp4

能够看到这两个文件的大小比較(压缩速度,在这里x264比較快):

windows编ffmpeg2.2.4和插件h265


事实上还是比較不错的,压缩度,对在大型视频,节省了大量的空间占用。

版权声明:本文博客原创文章。博客,未经同意,不得转载。

上一篇:css input checkbox和radio样式美化


下一篇:Visual Studio 2010 起始页中 不显示最近使用的项目问题,解决办法