2013-09-20 15:00:53 +00:00
|
|
|
require 'formula'
|
|
|
|
|
|
|
|
class X265 < Formula
|
|
|
|
homepage 'http://x265.org'
|
2014-07-10 09:21:45 +00:00
|
|
|
url 'https://bitbucket.org/multicoreware/x265/get/1.2.tar.bz2'
|
|
|
|
sha1 '68afb0322dcc5d239efd0070925f597e479d3ff3'
|
2013-09-20 15:00:53 +00:00
|
|
|
|
2014-03-05 03:32:21 +00:00
|
|
|
bottle do
|
|
|
|
cellar :any
|
2014-07-10 09:29:53 +00:00
|
|
|
sha1 "fc59dbc0ec41212e6385d5a0a6bb441b3b580387" => :mavericks
|
|
|
|
sha1 "9620f7cb983531a3ff5a7cbbb27b96d8ede82b4f" => :mountain_lion
|
|
|
|
sha1 "3930317031d2e7c6825c089ca9d3050e239cba07" => :lion
|
2014-03-05 03:32:21 +00:00
|
|
|
end
|
|
|
|
|
2013-09-20 15:00:53 +00:00
|
|
|
head 'https://bitbucket.org/multicoreware/x265', :using => :hg
|
|
|
|
|
|
|
|
depends_on 'yasm' => :build
|
|
|
|
depends_on 'cmake' => :build
|
|
|
|
depends_on :macos => :lion
|
|
|
|
|
2014-03-05 01:08:18 +00:00
|
|
|
option '16-bit', 'Build a 16-bit x265 (default: 8-bit)'
|
|
|
|
|
2013-09-20 15:00:53 +00:00
|
|
|
def install
|
|
|
|
|
|
|
|
args = std_cmake_args
|
|
|
|
args.delete '-DCMAKE_BUILD_TYPE=None'
|
|
|
|
args << '-DCMAKE_BUILD_TYPE=Release'
|
2014-03-05 01:08:18 +00:00
|
|
|
args << '-DHIGH_BIT_DEPTH=ON' if build.include? '16-bit'
|
2013-09-20 15:00:53 +00:00
|
|
|
|
|
|
|
system "cmake", "source", *args
|
2013-10-30 00:36:54 +00:00
|
|
|
system "make", "install"
|
2013-09-20 15:00:53 +00:00
|
|
|
end
|
2014-03-05 01:08:18 +00:00
|
|
|
|
|
|
|
test do
|
|
|
|
yuv_path = testpath/"raw.yuv"
|
|
|
|
x265_path = testpath/"x265.265"
|
|
|
|
File.open(yuv_path, 'wb') do |f|
|
|
|
|
(1..3200).each do f.write("\xCO\xFF\xEE") end
|
|
|
|
end
|
|
|
|
system "#{bin}/x265 --input-res 80x80 --fps 1 #{yuv_path} #{x265_path}"
|
2014-04-04 10:22:23 +00:00
|
|
|
header = 'AAAAAUABDAH//w=='
|
|
|
|
assert_equal header.unpack("m"), [x265_path.read(10)]
|
2014-03-05 01:08:18 +00:00
|
|
|
end
|
2013-09-20 15:00:53 +00:00
|
|
|
end
|