diff --git a/packages/addons/multimedia/libav/addon b/packages/addons/multimedia/libav/addon new file mode 100755 index 0000000000..a5207a1972 --- /dev/null +++ b/packages/addons/multimedia/libav/addon @@ -0,0 +1,29 @@ +#!/bin/sh + +################################################################################ +# This file is part of OpenELEC - http://www.openelec.tv +# Copyright (C) 2009-2011 Stephan Raue (stephan@openelec.tv) +# +# 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 OpenELEC.tv; see the file COPYING. If not, write to +# the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA. +# http://www.gnu.org/copyleft/gpl.html +################################################################################ + +. config/options $1 + +mkdir -p $ADDON_BUILD/$PKG_ADDON_ID/bin + cp $PKG_BUILD/ffmpeg $ADDON_BUILD/$PKG_ADDON_ID/bin + +mkdir -p $ADDON_BUILD/$PKG_ADDON_ID/ffmpeg + cp $PKG_BUILD/ffpresets/* $ADDON_BUILD/$PKG_ADDON_ID/ffmpeg diff --git a/packages/addons/multimedia/libav/build b/packages/addons/multimedia/libav/build new file mode 100755 index 0000000000..ec0c03a928 --- /dev/null +++ b/packages/addons/multimedia/libav/build @@ -0,0 +1,165 @@ +#!/bin/sh + +################################################################################ +# This file is part of OpenELEC - http://www.openelec.tv +# Copyright (C) 2009-2011 Stephan Raue (stephan@openelec.tv) +# +# 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 OpenELEC.tv; see the file COPYING. If not, write to +# the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA. +# http://www.gnu.org/copyleft/gpl.html +################################################################################ + +. config/options $1 + +# libav fails building with LTO support + strip_lto + +if [ "$VDPAU" = yes ]; then + FFMPEG_VDPAU="--enable-vdpau" +else + FFMPEG_VDPAU="--disable-vdpau" +fi + +if [ "$VAAPI" = yes ]; then + FFMPEG_VAAPI="--enable-vaapi" +else + FFMPEG_VAAPI="--disable-vaapi" +fi + +cd $PKG_BUILD/ +./configure --prefix=/storage/.xbmc/addons/lib.multimedia.$1 \ + --datadir=/storage/.xbmc/addons/lib.multimedia.$1/ffmpeg \ + --cpu=$TARGET_CPU \ + --arch=$TARGET_ARCH \ + --enable-cross-compile \ + --cross-prefix=$TARGET_PREFIX \ + --sysroot=$SYSROOT_PREFIX \ + --sysinclude="$SYSROOT_PREFIX/usr/include" \ + --target-os="linux" \ + --nm="$NM" \ + --ar="$AR" \ + --as="$CC" \ + --cc="$CC" \ + --ld="$CC" \ + --host-cc="$HOST_CC" \ + --host-cflags="$HOST_CFLAGS" \ + --host-ldflags="$HOST_LDFLAGS" \ + --host-libs="" \ + --extra-cflags="$CFLAGS" \ + --extra-ldflags="$LDFLAGS" \ + --extra-libs="" \ + --extra-version="" \ + --build-suffix="" \ + --enable-static \ + --disable-shared \ + --enable-gpl \ + --disable-version3 \ + --disable-nonfree \ + --enable-logging \ + --enable-doc \ + --enable-ffmpeg \ + --disable-ffplay \ + --disable-ffprobe \ + --disable-ffserver \ + --enable-avdevice \ + --enable-avcodec \ + --enable-avformat \ + --enable-swscale \ + --enable-postproc \ + --enable-avfilter \ + --enable-pthreads \ + --disable-w32threads \ + --disable-x11grab \ + --enable-network \ + --disable-gray \ + --enable-swscale-alpha \ + --enable-fastdiv \ + --enable-small \ + --enable-aandct \ + --enable-dct \ + --enable-fft \ + --enable-golomb \ + --enable-huffman \ + --enable-lpc \ + --enable-mdct \ + --enable-rdft \ + $FFMPEG_VAAPI \ + $FFMPEG_VDPAU \ + --disable-dxva2 \ + --enable-runtime-cpudetect \ + --disable-hardcoded-tables \ + --disable-memalign-hack \ + --enable-encoders \ + --enable-decoders \ + --enable-hwaccels \ + --enable-muxers \ + --enable-demuxers \ + --enable-parsers \ + --enable-bsfs \ + --enable-protocols \ + --enable-indevs \ + --enable-outdevs \ + --enable-filters \ + --disable-avisynth \ + --enable-bzlib \ + --disable-frei0r \ + --disable-libopencore-amrnb \ + --disable-libopencore-amrwb \ + --disable-libopencv \ + --disable-libdc1394 \ + --disable-libdirac \ + --disable-libfaac \ + --disable-libfreetype \ + --disable-libgsm \ + --disable-libmp3lame \ + --disable-libnut \ + --disable-libopenjpeg \ + --disable-librtmp \ + --disable-libschroedinger \ + --disable-libspeex \ + --disable-libtheora \ + --disable-libvo-aacenc \ + --disable-libvo-amrwbenc \ + --disable-libvorbis \ + --disable-libvpx \ + --disable-libx264 \ + --disable-libxavs \ + --disable-libxvid \ + --disable-mlib \ + --enable-zlib \ + --enable-asm \ + --disable-altivec \ + --enable-amd3dnow \ + --enable-amd3dnowext \ + --enable-mmx \ + --enable-mmx2 \ + --enable-sse \ + --enable-ssse3 \ + --disable-avx \ + --disable-armv5te \ + --disable-armv6 \ + --disable-armv6t2 \ + --disable-armvfp \ + --disable-iwmmxt \ + --disable-mmi \ + --disable-neon \ + --disable-vis \ + --enable-yasm \ + --disable-sram \ + --disable-symver \ + --disable-debug \ + --enable-optimizations \ + --disable-extra-warnings \ + +make diff --git a/packages/addons/multimedia/libav/changelog.txt b/packages/addons/multimedia/libav/changelog.txt new file mode 100644 index 0000000000..f9f2a03db2 --- /dev/null +++ b/packages/addons/multimedia/libav/changelog.txt @@ -0,0 +1,2 @@ +0.99.1 +- initial addon based on libav-0.7_beta2 diff --git a/packages/addons/multimedia/libav/icon/icon.png b/packages/addons/multimedia/libav/icon/icon.png new file mode 100644 index 0000000000..55ca201e8c Binary files /dev/null and b/packages/addons/multimedia/libav/icon/icon.png differ diff --git a/packages/addons/multimedia/libav/meta b/packages/addons/multimedia/libav/meta new file mode 100644 index 0000000000..68e80709fb --- /dev/null +++ b/packages/addons/multimedia/libav/meta @@ -0,0 +1,47 @@ +################################################################################ +# This file is part of OpenELEC - http://www.openelec.tv +# Copyright (C) 2009-2011 Stephan Raue (stephan@openelec.tv) +# +# 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 OpenELEC.tv; see the file COPYING. If not, write to +# the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA. +# http://www.gnu.org/copyleft/gpl.html +################################################################################ + +PKG_NAME="libav" +PKG_VERSION="0.7_beta2" +PKG_REV="1" +PKG_ARCH="any" +PKG_LICENSE="GPL" +PKG_SITE="http://www.libav.org" +PKG_URL="http://libav.org/releases/$PKG_NAME-$PKG_VERSION.tar.gz" +PKG_DEPENDS="" +PKG_BUILD_DEPENDS="toolchain alsa-lib zlib bzip2" +PKG_PRIORITY="optional" +PKG_SECTION="lib/multimedia" +PKG_SHORTDESC="libav: A complete audio and video stream library" +PKG_LONGDESC="libav is a complete solution to record, convert and stream audio and video forked from FFMPEG. It includes libavcodec, the leading audio/video codec library." + +PKG_IS_ADDON="yes" +PKG_ADDON_TYPE="xbmc.python.script" + +PKG_AUTORECONF="no" + +if [ "$VDPAU" = yes ]; then + PKG_BUILD_DEPENDS="$PKG_BUILD_DEPENDS libvdpau" +fi + +if [ "$VAAPI" = yes ]; then + PKG_BUILD_DEPENDS="$PKG_BUILD_DEPENDS libva" +fi + diff --git a/packages/addons/multimedia/libav/source/default.py b/packages/addons/multimedia/libav/source/default.py new file mode 100644 index 0000000000..2085a1f96d --- /dev/null +++ b/packages/addons/multimedia/libav/source/default.py @@ -0,0 +1,23 @@ +################################################################################ +# This file is part of OpenELEC - http://www.openelec.tv +# Copyright (C) 2009-2011 Stephan Raue (stephan@openelec.tv) +# +# 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 OpenELEC.tv; see the file COPYING. If not, write to +# the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA. +# http://www.gnu.org/copyleft/gpl.html +################################################################################ + +import os +import sys +import xbmcaddon