--- x264-0.svn20070930.orig/debian/rules +++ x264-0.svn20070930/debian/rules @@ -0,0 +1,110 @@ +#!/usr/bin/make -f + +# Uncomment this to turn on verbose mode. +#export DH_VERBOSE=1 + +# This has to be exported to make some magic below work. +export DH_OPTIONS + +include /usr/share/dpatch/dpatch.make + +DEB_HOST_GNU_TYPE ?= $(shell dpkg-architecture -qDEB_HOST_GNU_TYPE) +DEB_BUILD_GNU_TYPE ?= $(shell dpkg-architecture -qDEB_BUILD_GNU_TYPE) + +NCPUS := $(shell getconf _NPROCESSORS_ONLN 2>/dev/null || echo 1) + +ifeq ($(NCPUS),-1) + NCPUS:=1 +endif + +ifeq ($(NCPUS),0) + NCPUS:=1 +endif + +confflags = --enable-pthread --prefix=/usr --enable-debug + +CFLAGS = -Wall -g + +ifneq (,$(findstring noopt,$(DEB_BUILD_OPTIONS))) + CFLAGS += -O0 +else + CFLAGS += -O2 +endif + +build: build-stamp +build-stamp: patch-stamp + dh_testdir + + # Build static lib + +# $(MAKE) clean + CFLAGS="$(CFLAGS)" ./configure $(confflags) + $(MAKE) -j $(NCPUS) libx264.a + + # Backup static lib + mv libx264.a libx264.a.bak + + # Build shared lib + GTK frontend + $(MAKE) clean + + CFLAGS="$(CFLAGS)" ./configure $(confflags) --enable-shared \ + --enable-pic --enable-gtk --enable-visualize --enable-mp4-output + + $(MAKE) -j $(NCPUS) + + # Restore static lib + mv libx264.a.bak libx264.a + touch $@ + +clean: + dh_testdir + dh_testroot + rm -f build-stamp + + -$(MAKE) distclean + + rm -f libx264.a.bak + + debian/rules unpatch + + rm -rf .pc + + dh_clean + +install: + dh_testdir + dh_testroot + dh_clean -k + dh_installdirs + + $(MAKE) install DESTDIR=$(CURDIR)/debian/tmp + + dh_install --fail-missing --sourcedir=debian/tmp -Xx264gtk -Xx264_gtk + + cp gtk/x264_gtk_encode debian/x264/usr/bin + +binary-common: + dh_testdir + dh_testroot + dh_installchangelogs + dh_installdocs + dh_installexamples + dh_installman debian/x264.1 + dh_link + dh_strip + dh_compress + dh_fixperms + dh_makeshlibs -V + dh_installdeb + dh_shlibdeps + dh_gencontrol + dh_md5sums + dh_builddeb + +binary-indep: build install + +binary-arch: build install + $(MAKE) -f debian/rules DH_OPTIONS=-s binary-common + +binary: binary-arch binary-indep +.PHONY: build clean binary-indep binary-arch binary install --- x264-0.svn20070930.orig/debian/copyright +++ x264-0.svn20070930/debian/copyright @@ -0,0 +1,71 @@ +This package was debianized by Sam Hocevar (Debian packages) + on Fri, 9 Mar 2007 22:59:37 +0100. + +It was downloaded from svn://svn.videolan.org/x264/trunk/ + +encoder/eval.c, extras/getopt.c: + Copyright (C) 2002 Michael Niedermayer + Copyright (C) 1987-1996, 1998-2001 Free Software Foundation, Inc. + Licensed unter the GNU LGPL, version 2.1 or later. + +all other files: + Copyright (c) 2003-2006 Laurent Aimar + Alex Izvorski (aizvorski(at)gmail.com) + Alex Wright (alexw0885(at)hotmail.com) + Andrew Dunstan + bobololo + Christian Heine (sennindemokrit(at)gmx.net) + Eric Petit + Francesco Corriga + Justin Clay (justin_clay(at)hotmail.com) + Loren Merritt (lorenm(at)u.washington.edu) + Måns Rullgård (mru(at)mru.ath.cx) + Michael Niedermayer (michaelni(at)gmx.at) + Mike Matsnev (mike(at)po.cs.msu.su) + Min Chen + Phil Jensen (philj(at)csufresno.edu) + Radek Czyz (radoslaw(at)syskin.cjb.net) + Riccardo Stievano (walkunafraid(at)tin.it) + Tuukka Toivonen (tuukkat(at)ee.oulu.fi) + Vincent Torri (Vincent.Torri(at)iecn.u-nancy.fr) + Copyright (C) 1989-1994, 1996-1999, 2001 Free Software Foundation, Inc. + Licensed under the GNU General Public License, version 2 or later. + +The blurb for the GNU Lesser General Publice License, version 2.1 or later: + + | This library is free software; you can redistribute it and/or + | modify it under the terms of the GNU Lesser General Public + | License as published by the Free Software Foundation; either + | version 2.1 of the License, or (at your option) any later version. + | + | This library is distributed in the hope that it will be useful, + | but WITHOUT ANY WARRANTY; without even the implied warranty of + | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + | Lesser General Public License for more details. + | + | You should have received a copy of the GNU Lesser General Public + | License along with this library; if not, write to the Free Software + | Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA. + +The blurb for the GNU General Publice License, version 2 or later: + + | This program is free software; you can redistribute it and/or modify + | it under the terms of the GNU General Public License as published by + | the Free Software Foundation; either version 2, or (at your option) + | any later version. + | + | This program is distributed in the hope that it will be useful, + | but WITHOUT ANY WARRANTY; without even the implied warranty of + | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + | General Public License for more details. + | + | You should have received a copy of the GNU General Public License + | along with this program; if not, write to the Free Software + | Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA + +On Debian GNU/Linux systems, the complete text of the GNU General Public +License can be found in `/usr/share/common-licenses/GPL'. and the +complete text of the GNU Lesser General Public License can be found in +the `/usr/share/common-licenses/LGPL' file. + + --- x264-0.svn20070930.orig/debian/libx264-56.install +++ x264-0.svn20070930/debian/libx264-56.install @@ -0,0 +1 @@ +/usr/lib/libx264.so.* --- x264-0.svn20070930.orig/debian/patches/01_link.dpatch +++ x264-0.svn20070930/debian/patches/01_link.dpatch @@ -0,0 +1,40 @@ +#! /bin/sh /usr/share/dpatch/dpatch-run +## 01_link.dpatch by Christian Marillat +## +## All lines beginning with ## DP:' are a description of the patch. +## DP: + +@DPATCH@ + +--- x264-0.svn20070613/Makefile 2007-06-13 15:52:11.000000000 +0200 ++++ x264-0.svn20070613/Makefile 2007-06-13 15:52:41.000000000 +0200 +@@ -79,7 +79,8 @@ + $(SONAME): .depend $(OBJS) $(OBJASM) + $(CC) -shared -o $@ $(OBJS) $(OBJASM) -Wl,-soname,$(SONAME) $(LDFLAGS) + +-x264$(EXE): $(OBJCLI) libx264.a ++x264$(EXE): $(SONAME) ++x264$(EXE): $(OBJCLI) + $(CC) -o $@ $+ $(LDFLAGS) + + libx264gtk.a: muxers.o libx264.a + +--- x264-0.svn20070613/gtk/Makefile 2007-06-13 15:52:11.000000000 +0200 ++++ x264-0.svn20070613/gtk/Makefile 2007-06-13 15:52:41.000000000 +0200 +@@ -46,14 +46,14 @@ + + X264GTK_PC = x264gtk.pc + +-EXTERNAL_DEPS= ../muxers.o ../matroska.o ../libx264.a ++EXTERNAL_DEPS= ../muxers.o ../matroska.o + + + all: $(ENCODE_BIN) $(TEST_BIN) $(MO_FILES) $(X264GTK_PC) + + # Already provides iconv/intl + CPPFLAGS = -g `pkg-config --cflags gtk+-2.0 gthread-2.0` -I.. -DX264_DATA_DIR=\"${datadir}\" +-LDFLAGS += `pkg-config --libs gtk+-2.0 gthread-2.0` ../libx264.a ++LDFLAGS += `pkg-config --libs gtk+-2.0 gthread-2.0` -L.. -lx264 + + + # gettext rules --- x264-0.svn20070930.orig/debian/patches/00list +++ x264-0.svn20070930/debian/patches/00list @@ -0,0 +1 @@ +01_link.dpatch --- x264-0.svn20070930.orig/debian/libx264-dev.install +++ x264-0.svn20070930/debian/libx264-dev.install @@ -0,0 +1,4 @@ +/usr/lib/libx264.so +/usr/lib/libx264.a +/usr/lib/pkgconfig/x264.pc +/usr/include/x264.h --- x264-0.svn20070930.orig/debian/x264.install +++ x264-0.svn20070930/debian/x264.install @@ -0,0 +1,4 @@ +/usr/bin/x264 +/usr/bin/x264_gtk_encode +/usr/share/locale/fr/LC_MESSAGES/x264_gtk.mo +/usr/share/x264/x264.png --- x264-0.svn20070930.orig/debian/control +++ x264-0.svn20070930/debian/control @@ -0,0 +1,58 @@ +Source: x264 +Section: libs +Priority: optional +Maintainer: Ubuntu MOTU Developers +XSBC-Original-Maintainer: Christian Marillat +Bugs: mailto:marillat@debian.org +Standards-Version: 3.7.2 +Build-Depends: debhelper (>= 5), yasm [amd64], nasm [i386 lpia], libgtk2.0-dev, libgpac-dev, dpatch + +Package: x264 +Section: graphics +Architecture: any +Depends: ${shlibs:Depends} +Conflicts: x264-bin +Replaces: x264-bin +Description: video encoder for the H.264/MPEG-4 AVC standard + x264 is an advanced commandline encoder for creating H.264 (MPEG-4 AVC) + video streams. + . + x264 supports the following features: + * CABAC (context-based adaptive binary arithmetic coding) and CAVLC + (context-based adaptive variable length coding + * multiple reference frames + * 16x16, 8x8 and 4x4 intra-predicted macroblocks + * all P-frame inter-predicted macroblock types + * B-Inter-predicted macroblock types from 16x16 down to 8x8 + * rate distortion optimization + * multiple rate control modes (constant quantizer, constant quality, single + or multipass ABR with the option of VBV) + * scene cut detection + * adaptive B-frame placement, with the option of keeping B-frames as + references / arbitrary frame order + * 8x8 and 4x4 adaptive spatial transform (high profile) + * lossless mode (high 4:4:4 profile) + * custom quantization matrices (high profile) + * parallel encoding on multiple CPUs + * interlaced streams + +Package: libx264-56 +Section: libs +Architecture: any +Depends: ${shlibs:Depends} +Description: x264 video coding library + libx264 is an advanced encoding library for creating H.264 (MPEG-4 AVC) + video streams. + . + This package contains the libx264 shared library. + +Package: libx264-dev +Section: libdevel +Architecture: any +Depends: libx264-56 (= ${binary:Version}) +Description: development files for libx264 + libx264 is an advanced encoding library for creating H.264 (MPEG-4 AVC) + video streams. + . + This package contains the static library and headers used to build programs + that use libx264. --- x264-0.svn20070930.orig/debian/x264.docs +++ x264-0.svn20070930/debian/x264.docs @@ -0,0 +1 @@ +doc/*.txt --- x264-0.svn20070930.orig/debian/x264.1 +++ x264-0.svn20070930/debian/x264.1 @@ -0,0 +1,338 @@ +.\" DO NOT MODIFY THIS FILE! It was generated by help2man 1.36. +.TH X264 "1" "March 2007" "x264" "User Commands" +.SH NAME +x264 \- H.264 encoder +.SH SYNOPSIS +\fBx264 [options] \-o outfile infile [widthxheight] +.SH DESCRIPTION +x264 encodes a video stream using the H.264 codec. +.PP +Infile can be raw YUV 4:2:0 (in which case resolution is required) or +YUV4MPEG 4:2:0 (*.y4m). +.PP +Outfile type is selected by filename: \fB.264\fR (raw bytestream) or +\fB.mkv\fR (Matroska). +.SH OPTIONS +.TP +\fB\-h\fR, \fB\-\-help\fR +List the more commonly used options +.TP +\fB\-\-longhelp\fR +List all options +.PP +Frame\-type options: +.TP +\fB\-I\fR, \fB\-\-keyint\fR +Maximum GOP size [250] +.TP +\fB\-i\fR, \fB\-\-min\-keyint\fR +Minimum GOP size [25] +.TP +\fB\-\-scenecut\fR +How aggressively to insert extra I\-frames [40] +.TP +\fB\-\-pre\-scenecut\fR +Faster, less precise scenecut detection. +Required and implied by multi\-threading. +.TP +\fB\-b\fR, \fB\-\-bframes\fR +Number of B\-frames between I and P [0] +.TP +\fB\-\-no\-b\-adapt\fR +Disable adaptive B\-frame decision +.TP +\fB\-\-b\-bias\fR +Influences how often B\-frames are used [0] +.TP +\fB\-\-b\-pyramid\fR +Keep some B\-frames as references +.TP +\fB\-\-no\-cabac\fR +Disable CABAC +.TP +\fB\-r\fR, \fB\-\-ref\fR +Number of reference frames [1] +.TP +\fB\-\-no\-deblock\fR +Disable loop filter +.TP +\fB\-f\fR, \fB\-\-deblock\fR +Loop filter AlphaC0 and Beta parameters [0:0] +.TP +\fB\-\-interlaced\fR +Enable pure\-interlaced mode +.PP +Ratecontrol: +.TP +\fB\-q\fR, \fB\-\-qp\fR +Set QP (0=lossless) [26] +.TP +\fB\-B\fR, \fB\-\-bitrate\fR +Set bitrate (kbit/s) +.TP +\fB\-\-crf\fR +Quality\-based VBR (nominal QP) +.HP +\fB\-\-vbv\-maxrate\fR Max local bitrate (kbit/s) [0] +.HP +\fB\-\-vbv\-bufsize\fR Enable CBR and set size of the VBV buffer (kbit) [0] +.TP +\fB\-\-vbv\-init\fR +Initial VBV buffer occupancy [0.9] +.TP +\fB\-\-qpmin\fR +Set min QP [10] +.TP +\fB\-\-qpmax\fR +Set max QP [51] +.TP +\fB\-\-qpstep\fR +Set max QP step [4] +.TP +\fB\-\-ratetol\fR +Allowed variance of average bitrate [1.0] +.TP +\fB\-\-ipratio\fR +QP factor between I and P [1.40] +.TP +\fB\-\-pbratio\fR +QP factor between P and B [1.30] +.TP +\fB\-\-chroma\-qp\-offset\fR +QP difference between chroma and luma [0] +.TP +\fB\-p\fR, \fB\-\-pass\fR <1|2|3> +Enable multipass ratecontrol +\- 1: First pass, creates stats file +\- 2: Last pass, does not overwrite stats file +\- 3: Nth pass, overwrites stats file +.TP +\fB\-\-stats\fR +Filename for 2 pass stats ["x264_2pass.log"] +.TP +\fB\-\-rceq\fR +Ratecontrol equation ["blurCplx^(1\-qComp)"] +.TP +\fB\-\-qcomp\fR +QP curve compression: 0.0 => CBR, 1.0 => CQP [0.60] +.TP +\fB\-\-cplxblur\fR +Reduce fluctuations in QP (before curve compression) [20.0] +.TP +\fB\-\-qblur\fR +Reduce fluctuations in QP (after curve compression) [0.5] +.TP +\fB\-\-zones\fR //... +Tweak the bitrate of some regions of the video +Each zone is of the form +.IP +,,