summaryrefslogtreecommitdiffstats
path: root/abs/extra/fuppes-svn
diff options
context:
space:
mode:
Diffstat (limited to 'abs/extra/fuppes-svn')
-rw-r--r--abs/extra/fuppes-svn/PKGBUILD52
-rw-r--r--abs/extra/fuppes-svn/PKGBUILD.orig52
-rw-r--r--abs/extra/fuppes-svn/fuppes-r634-archlinux.patch93
-rw-r--r--abs/extra/fuppes-svn/fuppes.cfg216
-rw-r--r--abs/extra/fuppes-svn/fuppes.ch2
-rw-r--r--abs/extra/fuppes-svn/fuppes.diff25
-rw-r--r--abs/extra/fuppes-svn/fuppes.install20
-rw-r--r--abs/extra/fuppes-svn/fuppes.lr9
-rwxr-xr-xabs/extra/fuppes-svn/run2
9 files changed, 471 insertions, 0 deletions
diff --git a/abs/extra/fuppes-svn/PKGBUILD b/abs/extra/fuppes-svn/PKGBUILD
new file mode 100644
index 0000000..67936c0
--- /dev/null
+++ b/abs/extra/fuppes-svn/PKGBUILD
@@ -0,0 +1,52 @@
+# Contributor: Andrew Krawchyk <krawch_a@denison.edu>
+# patch for svn r634: Ivan Yurasov <vd@vdk.su>
+
+pkgname=fuppes-svn
+pkgver=636
+pkgrel=9
+pkgdesc="A free, multiplatform Universal Plug and Play A/V MediaServer"
+arch=('i686' 'x86_64')
+url="http://fuppes.ulrich-voelkel.de/"
+license=('GPL2')
+depends=('pcre' 'libxml2' 'sqlite3' 'gettext' 'taglib' 'imagemagick' 'ffmpeg' 'libmp4v2' 'lame' 'libvorbis' 'libmpcdec' 'flac' 'faad2' 'libmad')
+makdepends=('pkgconfig' 'autoconf' 'subversion')
+install=fuppes.install
+source=(fuppes-r634-archlinux.patch fuppes.diff fuppes.cfg run fuppes.ch fuppes.lr)
+md5sums=('5d9f6331cc91b64aab69449ce327b214' 'c495fa1bd9a870ae36820632434319ee' \
+ 'b0cef07d8e60d01c8146a69870672e1f' '3850001378088e5efac60487e5550d54' \
+ '3c355b860f1b0d273f5aa8b2bea1bde6')
+
+_svnmod="fuppes"
+_svntrunk="https://fuppes.svn.sourceforge.net/svnroot/fuppes/trunk"
+
+build()
+{
+ cd ${startdir}/src
+
+ msg "Getting sources..."
+ svn co ${_svntrunk} ${_svnmod}
+ msg "Done getting sources or failed to connect to server."
+
+ cd ${_svnmod}
+
+# patch -Np0 -i ../fuppes-r634-archlinux.patch
+# patch -Np0 -i ../fuppes.diff
+ autoreconf -vfi
+
+ ./configure --prefix=/usr \
+ --enable-video-transcoding \
+ --disable-twolame || return 1
+
+ make || return 1
+ make DESTDIR=$startdir/pkg install || return 1
+ mkdir -p $startdir/pkg/etc/sv/fuppes/supervise
+ install -D -m755 $startdir/src/run $startdir/pkg/etc/sv/fuppes/
+ mkdir -p $startdir/pkg/etc/fuppes
+ cp $startdir/src/fuppes.cfg $startdir/pkg/etc/fuppes
+ mkdir -p $startdir/pkg/etc/cron.hourly
+ mkdir -p $startdir/pkg/etc/logrotate.d/
+ mkdir -p $startdir/pkg/etc/sv/fuppes/supervise
+ install -D -m755 $startdir/src/fuppes.ch $startdir/pkg/etc/cron.hourly
+ install -D -m755 $startdir/src/run $startdir/pkg/etc/sv/fuppes
+ install -D -m755 $startdir/src/fuppes.lr $startdir/pkg/etc/logrotate.d
+}
diff --git a/abs/extra/fuppes-svn/PKGBUILD.orig b/abs/extra/fuppes-svn/PKGBUILD.orig
new file mode 100644
index 0000000..79d11e2
--- /dev/null
+++ b/abs/extra/fuppes-svn/PKGBUILD.orig
@@ -0,0 +1,52 @@
+# Contributor: Andrew Krawchyk <krawch_a@denison.edu>
+# patch for svn r634: Ivan Yurasov <vd@vdk.su>
+
+pkgname=fuppes-svn
+pkgver=636
+pkgrel=9
+pkgdesc="A free, multiplatform Universal Plug and Play A/V MediaServer"
+arch=('i686' 'x86_64')
+url="http://fuppes.ulrich-voelkel.de/"
+license=('GPL2')
+depends=('pcre' 'libxml2' 'sqlite3' 'gettext' 'taglib' 'imagemagick' 'ffmpeg' 'libmp4v2' 'lame' 'libvorbis' 'libmpcdec' 'flac' 'faad2' 'libmad')
+makdepends=('pkgconfig' 'autoconf' 'subversion')
+install=fuppes.install
+source=(fuppes-r634-archlinux.patch fuppes.diff fuppes.cfg run fuppes.ch fuppes.lr)
+md5sums=('5d9f6331cc91b64aab69449ce327b214' 'c495fa1bd9a870ae36820632434319ee' \
+ 'b0cef07d8e60d01c8146a69870672e1f' '3850001378088e5efac60487e5550d54' \
+ '3c355b860f1b0d273f5aa8b2bea1bde6')
+
+_svnmod="fuppes"
+_svntrunk="https://fuppes.svn.sourceforge.net/svnroot/fuppes/trunk"
+
+build()
+{
+ cd ${startdir}/src
+
+ msg "Getting sources..."
+ svn co -r 636 ${_svntrunk} ${_svnmod}
+ msg "Done getting sources or failed to connect to server."
+
+ cd ${_svnmod}
+
+ patch -Np0 -i ../fuppes-r634-archlinux.patch
+ patch -Np0 -i ../fuppes.diff
+ autoreconf -vfi
+
+ ./configure --prefix=/usr \
+ --enable-video-transcoding \
+ --disable-twolame || return 1
+
+ make || return 1
+ make DESTDIR=$startdir/pkg install || return 1
+ mkdir -p $startdir/pkg/etc/sv/fuppes/supervise
+ install -D -m755 $startdir/src/run $startdir/pkg/etc/sv/fuppes/
+ mkdir -p $startdir/pkg/etc/fuppes
+ cp $startdir/src/fuppes.cfg $startdir/pkg/etc/fuppes
+ mkdir -p $startdir/pkg/etc/cron.hourly
+ mkdir -p $startdir/pkg/etc/logrotate.d/
+ mkdir -p $startdir/pkg/etc/sv/fuppes/supervise
+ install -D -m755 $startdir/src/fuppes.ch $startdir/pkg/etc/cron.hourly
+ install -D -m755 $startdir/src/run $startdir/pkg/etc/sv/fuppes
+ install -D -m755 $startdir/src/fuppes.lr $startdir/pkg/etc/logrotate.d
+}
diff --git a/abs/extra/fuppes-svn/fuppes-r634-archlinux.patch b/abs/extra/fuppes-svn/fuppes-r634-archlinux.patch
new file mode 100644
index 0000000..feaccfa
--- /dev/null
+++ b/abs/extra/fuppes-svn/fuppes-r634-archlinux.patch
@@ -0,0 +1,93 @@
+Index: src/plugins/ffmpeg/ffmpeg.cpp
+===================================================================
+--- src/plugins/ffmpeg/ffmpeg.cpp (revision 634)
++++ src/plugins/ffmpeg/ffmpeg.cpp (working copy)
+@@ -2190,7 +2190,7 @@
+ p=NULL;
+ for(p = av_codec_next(p); p != NULL; p = av_codec_next(p) ) {
+ #else
+- for(p = first_avcodec; p != NULL; p = p->next) {
++ for(p = av_codec_next(NULL); p != NULL; p = p->next) {
+ #endif
+
+ if((p2==NULL || strcmp(p->name, p2->name)<0) &&
+@@ -2269,7 +2269,7 @@
+ }
+ avformat_opts = av_alloc_format_context();
+ #ifdef HAVE_LIBSWSCALE
+- sws_opts = sws_getContext(16,16,0, 16,16,0, sws_flags, NULL,NULL,NULL);
++ sws_opts = sws_getContext(16,16,(PixelFormat)0, 16,16,(PixelFormat)0, sws_flags, NULL,NULL,NULL);
+ #endif
+
+
+Index: src/plugins/ffmpeg/ffmpeg.h
+===================================================================
+--- src/plugins/ffmpeg/ffmpeg.h (revision 634)
++++ src/plugins/ffmpeg/ffmpeg.h (working copy)
+@@ -38,7 +38,7 @@
+ #include <ctype.h>
+ #include <string.h>
+
+-#if FFMPEG_VERSION >= 52 && !defined(OLD_INCLUDES_PATH)
++/* #if FFMPEG_VERSION >= 52 && !defined(OLD_INCLUDES_PATH) */
+ #include <libavformat/avformat.h>
+ #include <libavutil/avutil.h>
+ #include <libavutil/fifo.h>
+@@ -51,27 +51,27 @@
+ #ifdef HAVE_AVSTRING_H
+ #include <libavutil/avstring.h>
+ #endif
+-#else
++/* #else
+ #include <avformat.h>
+ #include <avutil.h>
+ #include <fifo.h>
+- #include <opt.h>
++ #include <opt.h> */
+
+
+ #ifdef HAVE_LIBSWSCALE
+- #include <swscale.h>
++ #include <libswscale/swscale.h>
+ #endif
+
+ #ifdef HAVE_AVSTRING_H
+- #include <avstring.h>
++ #include <libavutil/avstring.h>
+ #endif
+-#endif
++/* #endif */
+
+
+ #include <math.h>
+ #include <stdlib.h>
+ #include <limits.h>
+- //#include <mem.h>
++ //#include <mem.h>
+
+ }
+ #endif // __cplusplus
+Index: version.sh
+===================================================================
+--- version.sh (revision 634)
++++ version.sh (working copy)
+@@ -1,8 +1,15 @@
+ #!/bin/sh
+
+-svn_revision=`cd "$1" && LC_ALL=C svn info 2> /dev/null | grep Revision | cut -d' ' -f2`
+-test $svn_revision || svn_revision=`cd "$1" && grep revision .svn/entries 2>/dev/null | cut -d '"' -f2`
+-test $svn_revision || svn_revision=`cd "$1" && sed -n -e '/^dir$/{n;p;q}' .svn/entries 2>/dev/null`
++if [ "$1" == "" ]
++then
++DIR="."
++else
++DIR="$1"
++fi
++
++svn_revision=`cd "$DIR" && LC_ALL=C svn info 2> /dev/null | grep Revision | cut -d' ' -f2`
++test $svn_revision || svn_revision=`cd "$DIR" && grep revision .svn/entries 2>/dev/null | cut -d '"' -f2`
++test $svn_revision || svn_revision=`cd "$DIR" && sed -n -e '/^dir$/{n;p;q}' .svn/entries 2>/dev/null`
+ test $svn_revision || svn_revision=UNKNOWN
+
+ NEW_REVISION="#define FUPPES_VERSION \"0.$svn_revision\""
+
diff --git a/abs/extra/fuppes-svn/fuppes.cfg b/abs/extra/fuppes-svn/fuppes.cfg
new file mode 100644
index 0000000..beb81cf
--- /dev/null
+++ b/abs/extra/fuppes-svn/fuppes.cfg
@@ -0,0 +1,216 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<fuppes_config version="0.7.2.3">
+ <shared_objects>
+ <!--<dir>/mnt/music</dir>-->
+ <!--<itunes>/Users/.../iTunes.xml</itunes>-->
+ <dir>/myth/tv</dir>
+ <dir>/myth/video</dir>
+ <dir>/myth/music</dir>
+ <dir>/myth/gallery</dir>
+ <dir>/myth/pretty</dir>
+ </shared_objects>
+ <network>
+ <!--empty = automatic detection-->
+ <interface>192.168.1.253</interface>
+ <!--empty or 0 = random port-->
+ <http_port>81</http_port>
+ <!--list of ip addresses allowed to access fuppes. if empty all ips are allowed-->
+ <allowed_ips>
+ <!--<ip>192.168.0.1</ip>-->
+ </allowed_ips>
+ </network>
+ <content_directory>
+ <!--a list of possible charsets can be found under:
+ http://www.gnu.org/software/libiconv/-->
+ <local_charset>UTF-8</local_charset>
+ <!--libs used for metadata extraction when building the database. [true|false]-->
+ <use_imagemagick>true</use_imagemagick>
+ <use_taglib>true</use_taglib>
+ <use_libavformat>true</use_libavformat>
+ </content_directory>
+ <global_settings>
+ <temp_dir/>
+ <!--uuid is written to and read from <config-dir>/uuid.txt if set to true-->
+ <use_fixed_uuid>false</use_fixed_uuid>
+ </global_settings>
+ <device_settings>
+ <!--"default" settings are inhertied by specific devices and can be overwritten-->
+ <!--do NOT remove the "default" device settings-->
+ <!--all new file types have to be added to the default settings-->
+ <!--adding new file types just to a specific device will have no affect-->
+ <device name="default">
+ <!--specify the maximum length for file names (0 or empty = unlimited)-->
+ <max_file_name_length>0</max_file_name_length>
+ <!--[file|container]-->
+ <playlist_style>file</playlist_style>
+ <show_childcount_in_title>false</show_childcount_in_title>
+ <enable_dlna>false</enable_dlna>
+ <transcoding_release_delay>4</transcoding_release_delay>
+ <file_settings>
+ <!--audio files-->
+ <file ext="mp3">
+ <type>AUDIO_ITEM</type>
+ <mime_type>audio/mpeg</mime_type>
+ <dlna>MP3</dlna>
+ </file>
+ <file ext="ogg">
+ <type>AUDIO_ITEM</type>
+ <mime_type>application/octet-stream</mime_type>
+ <transcode enabled="true">
+ <ext>mp3</ext>
+ <mime_type>audio/mpeg</mime_type>
+ <dlna>MP3</dlna>
+ <http_encoding>chunked</http_encoding>
+ <decoder>vorbis</decoder>
+ <encoder>lame</encoder>
+ <bitrate>192</bitrate>
+ <samplerate>44100</samplerate>
+ </transcode>
+ </file>
+ <file ext="mpc">
+ <type>AUDIO_ITEM</type>
+ <mime_type>application/octet-stream</mime_type>
+ <transcode enabled="true">
+ <ext>mp3</ext>
+ <mime_type>audio/mpeg</mime_type>
+ <dlna>MP3</dlna>
+ <http_encoding>chunked</http_encoding>
+ <decoder>musepack</decoder>
+ <encoder>lame</encoder>
+ <bitrate>192</bitrate>
+ <samplerate>44100</samplerate>
+ </transcode>
+ </file>
+ <file ext="wav">
+ <type>AUDIO_ITEM</type>
+ <mime_type>audio/x-wav</mime_type>
+ </file>
+ <file ext="flac">
+ <type>AUDIO_ITEM</type>
+ <mime_type>audio/x-flac</mime_type>
+ <transcode enabled="true">
+ <ext>mp3</ext>
+ <mime_type>audio/mpeg</mime_type>
+ <dlna>MP3</dlna>
+ <http_encoding>chunked</http_encoding>
+ <decoder>flac</decoder>
+ <encoder>lame</encoder>
+ <bitrate>192</bitrate>
+ <samplerate>44100</samplerate>
+ </transcode>
+ </file>
+ <file ext="wma">
+ <type>AUDIO_ITEM</type>
+ <mime_type>audio/x-ms-wma</mime_type>
+ <dlna>WMAFULL</dlna>
+ </file>
+ <!--image files-->
+ <file ext="jpg">
+ <ext>jpeg</ext>
+ <type>IMAGE_ITEM</type>
+ <mime_type>image/jpeg</mime_type>
+ <convert enabled="false">
+ <!--<dcraw enabled="true">-q 0</dcraw>-->
+ <ext>png</ext>
+ <mime_type>image/png</mime_type>
+ <height>0</height>
+ <width>0</width>
+ <!--set "greater" to "true" if you only want to resize images greater than "height" or "width"-->
+ <greater>false</greater>
+ <!--set "less" to "true" if you only want to resize images less than "height" or "width"-->
+ <less>false</less>
+ <!--set "less" and "greater" to "false" if you always want to resize-->
+ </convert>
+ </file>
+ <file ext="bmp">
+ <type>IMAGE_ITEM</type>
+ <mime_type>image/bmp</mime_type>
+ </file>
+ <file ext="png">
+ <type>IMAGE_ITEM</type>
+ <mime_type>image/png</mime_type>
+ </file>
+ <file ext="gif">
+ <type>IMAGE_ITEM</type>
+ <mime_type>image/gif</mime_type>
+ </file>
+ <!--video files-->
+ <file ext="mpg">
+ <ext>mpeg</ext>
+ <type>VIDEO_ITEM</type>
+ <mime_type>video/mpeg</mime_type>
+ </file>
+ <file ext="mp4">
+ <type>VIDEO_ITEM</type>
+ <mime_type>video/mp4</mime_type>
+ </file>
+ <file ext="avi">
+ <type>VIDEO_ITEM</type>
+ <mime_type>video/x-msvideo</mime_type>
+ </file>
+ <file ext="wmv">
+ <type>VIDEO_ITEM</type>
+ <mime_type>video/x-ms-wmv</mime_type>
+ </file>
+ <file ext="vob">
+ <type>VIDEO_ITEM</type>
+ <mime_type>video/x-ms-vob</mime_type>
+ </file>
+ <file ext="vdr">
+ <type>VIDEO_ITEM</type>
+ <mime_type>video/x-extension-vdr</mime_type>
+ <transcode enabled="true">
+ <ext>vob</ext>
+ <mime_type>video/x-ms-vob</mime_type>
+ </transcode>
+ </file>
+ <file ext="flv">
+ <type>VIDEO_ITEM</type>
+ <mime_type>application/x-flash-video</mime_type>
+ </file>
+ <file ext="asf">
+ <type>VIDEO_ITEM</type>
+ <mime_type>video/x-ms-asf</mime_type>
+ </file>
+ <!--playlists-->
+ <file ext="pls">
+ <type>PLAYLIST</type>
+ <mime_type>audio/x-scpls</mime_type>
+ </file>
+ <file ext="m3u">
+ <type>PLAYLIST</type>
+ <mime_type>audio/x-mpegurl</mime_type>
+ </file>
+ </file_settings>
+ </device>
+ <!--For other device settings take a look at http://fuppes.ulrich-voelkel.de/wiki/index.php/Category:Device-->
+ <!--If you have more than one device it is a good idea to set the ip address as some devices may have conflicting "user agents".-->
+ <!--It is safe to remove unneeded devices-->
+ <device name="PS3" enabled="false">
+ <user_agent>UPnP/1.0 DLNADOC/1.00</user_agent>
+ <user_agent>PLAYSTATION3</user_agent>
+ <!--<ip></ip>-->
+ <enable_dlna>true</enable_dlna>
+ <transcoding_release_delay>50</transcoding_release_delay>
+ <file_settings>
+ <file ext="ogg">
+ <type>AUDIO_ITEM_MUSIC_TRACK</type>
+ <transcode enabled="true">
+ <http_encoding>stream</http_encoding>
+ </transcode>
+ </file>
+ </file_settings>
+ </device>
+ <device name="Xbox 360" virtual="Xbox 360" enabled="false">
+ <user_agent>Xbox/2.0.\d+.\d+ UPnP/1.0 Xbox/2.0.\d+.\d+</user_agent>
+ <user_agent>Xenon</user_agent>
+ <xbox360>true</xbox360>
+ <show_empty_resolution>true</show_empty_resolution>
+ <description_values>
+ <friendly_name>%s %v : 1 : Windows Media Connect</friendly_name>
+ <model_name>Windows Media Connect compatible (%s)</model_name>
+ <model_number>2.0</model_number>
+ </description_values>
+ </device>
+ </device_settings>
+</fuppes_config>
diff --git a/abs/extra/fuppes-svn/fuppes.ch b/abs/extra/fuppes-svn/fuppes.ch
new file mode 100644
index 0000000..60960b5
--- /dev/null
+++ b/abs/extra/fuppes-svn/fuppes.ch
@@ -0,0 +1,2 @@
+#!/bin/bash
+/usr/bin/wget -O /dev/null -q http://localhost:81/presentation/options.html?db=update &> /dev/null
diff --git a/abs/extra/fuppes-svn/fuppes.diff b/abs/extra/fuppes-svn/fuppes.diff
new file mode 100644
index 0000000..9b7b6a8
--- /dev/null
+++ b/abs/extra/fuppes-svn/fuppes.diff
@@ -0,0 +1,25 @@
+--- src/plugins/ffmpeg/ffmpeg.cpp.orig 2009-05-29 20:12:09.000000000 +0000
++++ src/plugins/ffmpeg/ffmpeg.cpp 2009-05-29 20:10:01.000000000 +0000
+@@ -1021,19 +1021,9 @@
+ if (subtitle_to_free) {
+ if (subtitle_to_free->rects != NULL) {
+ for (i = 0; i < subtitle_to_free->num_rects; i++) {
+-
+-#ifndef LIBAVCODEC_VERSION_MINOR
+-#define LIBAVCODEC_VERSION_MINOR 0
+-#endif
+-
+-#if LIBAVCODEC_VERSION_MINOR >= 11
+- av_freep(subtitle_to_free->rects[i]->pict.data[0]);
+- av_freep(subtitle_to_free->rects[i]->pict.data[1]);
+- av_freep(subtitle_to_free->rects[i]);
+-#else
+- av_free(subtitle_to_free->rects[i].bitmap);
+- av_free(subtitle_to_free->rects[i].rgba_palette);
+-#endif
++ av_freep(&subtitle_to_free->rects[i]->pict.data[0]);
++ av_freep(&subtitle_to_free->rects[i]->pict.data[1]);
++ av_freep(&subtitle_to_free->rects[i]);
+ }
+ av_freep(&subtitle_to_free->rects);
+ }
diff --git a/abs/extra/fuppes-svn/fuppes.install b/abs/extra/fuppes-svn/fuppes.install
new file mode 100644
index 0000000..d0099e3
--- /dev/null
+++ b/abs/extra/fuppes-svn/fuppes.install
@@ -0,0 +1,20 @@
+# arg 1: the new package version
+post_install() {
+ sv stop mythbackend
+ mv /etc/sv/mythbackend/run /tmp
+ sed 's/logfile/noupnp\ --logfile/' </tmp/run >/etc/sv/mythbackend/run
+ chmod 755 /etc/sv/mythbackend/run
+ sv start mythbackend
+ add_service.sh fuppes
+ sv start fuppes
+}
+
+post_remove() {
+ sv stop fuppes
+ remove_service.sh fuppes
+ mv /etc/sv/mythbackend/run /tmp/run
+ sv stop mythbackend
+ sed 's/--noupnp\ --logfile/--logfile/' </tmp/run >/etc/sv/mythbackend/run
+ chmod 755 /etc/sv/mythbackend/run
+ sv start mythbackend
+}
diff --git a/abs/extra/fuppes-svn/fuppes.lr b/abs/extra/fuppes-svn/fuppes.lr
new file mode 100644
index 0000000..ec2f88f
--- /dev/null
+++ b/abs/extra/fuppes-svn/fuppes.lr
@@ -0,0 +1,9 @@
+/var/log/fuppes/fuppes.log {
+ copytruncate
+ daily
+ size 10M
+ missingok
+ rotate 7
+ compress
+ notifempty
+}
diff --git a/abs/extra/fuppes-svn/run b/abs/extra/fuppes-svn/run
new file mode 100755
index 0000000..dc69879
--- /dev/null
+++ b/abs/extra/fuppes-svn/run
@@ -0,0 +1,2 @@
+#!/bin/bash
+exec su mythtv -c "/usr/bin/fuppes --config-dir /etc/fuppes --database-file /data/srv/fuppes/fuppes.db --temp-dir /myth/tmp"