x265 HEVC Encoder

Release tarballs

Source release zip files can be downloaded from ftp.videolan.org or x265 Downloads page

MD5 (x265_1.5.tar.gz) = e836defd0a412854af283c19697abda9
MD5 (x265_1.6.tar.gz) = 32e4151f8b6a32b466b1055562ebfb4f
MD5 (x265_1.7.tar.gz) = ff31a807ebc868aa59b60706e303102f
MD5 (x265_1.8.tar.gz) = 72005f2c0acda56913c0eae4562dc5ad
MD5 (x265_1.9.tar.gz) = f34a1c4c660ff07511365cb0983cf164
MD5 (x265_2.0.tar.gz) = a4f16c0f054f002d6d8c9c6f7fb03026
MD5 (x265_2.1.tar.gz) = 2d9cb183d2675dfb325abdedd2424bfa

Building x265

To compile x265 you must first install Mercurial (or TortoiseHg on Windows) and CMake 2.8.8 or later. To ensure your build of x265 is capable of full performance, install YASM 1.2.0 or greater to compile assembly primitives. Then follow these easy steps:

For detailed instructions, consult our build README. Basic instructions are outlined below.

Linux Instructions

# ubuntu packages:
$ sudo apt-get install mercurial cmake cmake-curses-gui build-essential yasm
# Note: if the packaged yasm is older than 1.2, you must download yasm (1.3 recommended) and build it $ hg clone https://bitbucket.org/multicoreware/x265
$ cd x265/build/linux
$ ./make-Makefiles.bash
$ make

The primary target that we support is x86. x265 can also be built on linux platforms on ARM and POWERPC targets using the same build insructions above (exclude yasm from the list of packages on these targets). Our support for these platforms is growing as our user base on these platforms increase.

We also support cross-compilation for ARM targets from linux platforms on x86 targets by using the g++ arm cross-compiler. This has been tested on Ubuntu linux 14.04 running on an x86 CPU. On other distributions, package names and names of cross compilation tools may differ. This is an experimental feature, and has undergone very limited testing.

$ sudo apt-get install mercurial cmake cmake-curses-gui build-essential gcc-arm-linux-gnueabi g++-arm-linux-gnueabi
$ hg clone https://bitbucket.org/multicoreware/x265
$ cd x265/build/arm-linux
$ ./make-Makefiles.bash
$ make

Windows (Visual Studio) Instructions

$ hg clone https://bitbucket.org/multicoreware/x265

Then run make-solutions.bat in the build\ folder that corresponds to your favorite compiler, configure your build options, click 'configure', click 'generate', then close cmake-gui. You will be rewarded with an x265.sln file. Also see cmakedocumentation.

Mac OS X

The latest Mac OS X 10.8 gcc and clang based compilers can build x265 using the linux instructions above. Xcode 5 with the most recent patches can build, debug, and profile x265.

Intel Compiler Instructions

On Windows, you should open an Intel Compiler command prompt and within it run one of the make-makefiles.bat scripts in build/icl32 or build/icl64, then run nmake.

On Linux, you can tell cmake to build Makefiles for icpc directly. This requires you to have configured Intel's compiler environment (by sourcing the appropriate shell script). For example:

$ source /opt/intel/composerxe/bin/compilervars.sh intel64
$ cd repos/x265/build/linux
$ export CXX=icpc
$ export CC=icc
$ ./make-Makefiles
$ make

Multilib build instructions

Applications like ffmpeg and the x265 CLI which use our bit-depth introspection API (x265_api_get) instead of the globally exported C interface can select between 8 and 10bit libx265 libraries at runtime. To support this both libraries must be available either as shared libraries or as a pair of static libraries.

For shared libraries, just rename your 10bit libx265 as libx265_main10.[so|dll|dylib] and place it into your library load path.

For static libraries, you must disable the exported C APIs, since they would conflict with each other. For linux/Mac, you can use or adapt the build/linux/multilib.sh script. For Windows, there are similar vc*-x86_64/multilib.bat files that demonstrate how combined static libraries can be built.

See also multilib docs.

Command line interface

The Makefile/solution builds a static encoder.lib library and a standalone x265 executable that aims to be similar to x264 in its command line interface. Running without arguments shows you the command line help. See also the online documentation

==============================================================

==============================================================

https://bitbucket.org/multicoreware/x265/wiki/Home

x265编译的更多相关文章

  1. X265编译中C2220错误的解决办法

    x265编译过程中 C2220错误:根本原因是代码是英文代码页,而我们的操作系统中使用的是中文代码页: 解决办法1 逐个文件进行格式转换,我在ubuntu下用iconv命令试过,没成功: 解决办法2 ...

  2. 开源项目:X265

    1 Windows下编译X265 具体的编译环境: Windows 7(64bit) + Visual Stdio 2010 + Cmake 3.4.3 + vsyasm-1.3.0-win64 a. ...

  3. ffmpeg的centos、msys2、msvc编译

    msys2 和 centos https://ffmpeg.org/download.html https://ffmpeg.zeranoe.com/builds/ Windows MSYS2准备 1 ...

  4. arm linux 移植 x265

    背景 本来想着把 x265编译到ffmpeg里面,搞定了x265的编译:但是一直报ERROR: x265 not found using pkg-config这个错误,我按照网上的资料,查看了ffbu ...

  5. 在Ubuntu18.04下编译出ffmpeg(支持推流H265成rtmp)

    Ubuntu18.04下编译libx264.libx265.libfdk_aac和ffmpeg 一.编译x264库 二.编译fdk-aac库 三.编译x265库 四.编译FFmpeg源码 五.设置环境 ...

  6. MSYS2环境下编译X265

    HEVC(High Efficiency Video Coding),是一种新的视频压缩标准.可以替代H.264/ AVC编码,使得保持相同质量的情况下,体积减少40%左右.目前有多种实现版本,x26 ...

  7. g++编译X265

    自己参考用: msys2 编译X265的命令 编译用工具安装 pacman -S git make tar automake autoconf libtool pkg-config mingw-w64 ...

  8. linux 编译ffmpeg 支持x264, x265

    1. 前言 本教程涉及的ffmpeg, x264, x265 2. 环境依赖 2.1 删除系统中安装的ffmpeg等库 sudo apt-get --purge remove ffmpeg mplay ...

  9. ffmpeg编译常规大全

    其中有需要CMake的,可以直接sudo apt-get install cmake   编译yasm wget http://www.tortall.net/projects/yasm/releas ...

随机推荐

  1. 国产AR SDK介绍

    说到VR,大家都知道虚拟现实有多火.可是VR之后呢,还有AR.相较于VR,AR的应用意义更加的强大. 相信在不久的将来AR和VR将会融为一体,把现实世界的数据信息完全联通在我们的眼前.这其中的领头羊莫 ...

  2. iOS开发ARC内存管理

    本文的主要内容: ARC的本质 ARC的开启与关闭 ARC的修饰符 ARC与Block ARC与Toll-Free Bridging ARC的本质 ARC是编译器(时)特性,而不是运行时特性,更不是垃 ...

  3. C++学习笔记21:文件系统

    文件系统 实际文件系统 ext, ext2, ext3, ext4 虚拟文件系统 VFS 特殊文件系统/proc:从proc文件系统中抽取信息 实际文件系统:组成与功能描述 引导块,超级块,索引结点区 ...

  4. day13_API第三天

    1.StringBuffer类(掌握) 1.概念      字符串缓冲区类 2.机制      StringBuffer采用的是缓冲区机制. 一开始,首先开辟一些空间,然后,随着数据的增多,还可以继续 ...

  5. PHP 调用Python脚本

    上次做用户反馈自动翻译,写了个python脚本,将日文的用户反馈翻译成中文,效果虽然可以,但其它不懂python的童鞋就没法使用了,所以搭了个web服务,让其他人可以通过网页访问查询.使用的是apac ...

  6. 《Android深度探索》(卷1)HAL与驱动开发读后感

    第1章:安卓系统移植与驱动开发概述 这一章主要概括的介绍了安卓驱动开发和系统移植的主要内容,对安卓与Linux驱动做了一个总体的介绍.通过对第一章的学习,使我对Linux驱动开发有了一个感性的认识.在 ...

  7. poj1458 Common Subsequence ——最长公共子序列

    link:http://poj.org/problem?id=1458 最基础的那种 #include <iostream> #include <cstdio> #includ ...

  8. LeetCode() Word Search II

    超时,用了tire也不行,需要再改. class Solution { class TrieNode { public: // Initialize your data structure here. ...

  9. 装饰模式(Decorate Pattern)

    在不必改变原类文件和使用继承的情况下,动态地扩展一个对象的功能.它是通过创建一个包装对象,也就是装饰来包裹真实的对象. (1) 装饰对象和真实对象有相同的接口.这样客户端对象就能以和真实对象相同的方式 ...

  10. Stencil Buffer

    刚在草稿箱里发现了这篇充满特色的好日志.发表之. ------------------吃货的分割线---------------------------------------- Stencil Bu ...