diff options
-rw-r--r-- | .SRCINFO | 59 | ||||
-rw-r--r-- | 50-xineliboutput.conf | 73 | ||||
-rw-r--r-- | PKGBUILD | 83 | ||||
-rw-r--r-- | xineliboutput-vdr2.1.10compat.diff | 19 | ||||
-rw-r--r-- | xineliboutput-vdr2.1.6compat.diff | 29 | ||||
-rw-r--r-- | xineliboutput_renamed_iDoubleTapTimeoutMs_in_libcec.diff | 13 |
6 files changed, 276 insertions, 0 deletions
diff --git a/.SRCINFO b/.SRCINFO new file mode 100644 index 000000000000..f77ef654425b --- /dev/null +++ b/.SRCINFO @@ -0,0 +1,59 @@ +pkgbase = xineliboutput + pkgver = 1.1.0.32.gbf166be + pkgrel = 9 + url = http://www.sourceforge.net/projects/xineliboutput + arch = x86_64 + arch = i686 + arch = arm + arch = armv6h + arch = armv7h + license = GPL2 + makedepends = dbus-glib + makedepends = git + makedepends = glu + makedepends = libcec + makedepends = libextractor + makedepends = libxrandr + makedepends = mesa + makedepends = vdr-api=2.2.0 + makedepends = xine-lib + source = git://projects.vdr-developer.org/xineliboutput.git#commit=bf166be4a21c0a86f6852c4695dcdb06863f4e93 + source = xineliboutput-vdr2.1.6compat.diff + source = xineliboutput_renamed_iDoubleTapTimeoutMs_in_libcec.diff + source = xineliboutput-vdr2.1.10compat.diff + source = 50-xineliboutput.conf + md5sums = SKIP + md5sums = 14ef92cd38503a2f426669aa43b0aeb4 + md5sums = d9e14cb60e536109716ebc886f54880b + md5sums = de80424deabba49e3f40c2f92f640765 + md5sums = a9a3cd09b950d2024b21a1c6e0620506 + +pkgname = vdr-xineliboutput + pkgdesc = X11 and Linux framebuffer front-end for VDR + depends = dbus-glib + depends = libextractor + depends = libxrandr + depends = mesa + depends = vdr-api=2.2.0 + depends = xine-lib + depends = xineliboutput-xineplug + optdepends = nvidia: Required for VDPAU decoding + optdepends = xorg-server: Required for software decoding + backup = etc/vdr/conf.avail/50-xineliboutput.conf + backup = var/lib/vdr/plugins/xineliboutput/allowed_hosts.conf + +pkgname = xineliboutput-frontends + pkgdesc = Xineliboutput frontends (vdr-fbfe and vdr-sxfe) + depends = dbus-glib + depends = libcec + depends = libxrandr + depends = mesa + depends = xine-lib + depends = xineliboutput-xineplug + optdepends = nvidia: Required for VDPAU decoding + optdepends = xorg-server: Required for software decoding + +pkgname = xineliboutput-xineplug + pkgdesc = Neccessary xine plugins for xineliboutput-frontends and vdr-xineliboutput + depends = xine-lib + diff --git a/50-xineliboutput.conf b/50-xineliboutput.conf new file mode 100644 index 000000000000..23626bee9bf2 --- /dev/null +++ b/50-xineliboutput.conf @@ -0,0 +1,73 @@ +[xineliboutput] +#--local=NAME +# Use local frontend NAME +# Supported frontends: +# sxfe (X11) +# fbfe (framebuffer) +# none (only remote frontends) + +#--remote=PORT +# Listen PORT for remote clients +# (default 3789) +# none or 0 disables remote mode +# Also local interface address can be specified: +# --remote=<ip>:<port> (default is all interfaces) + +#--audio=NAME +# Use audio driver NAME for local frontend +# Supported values: +# auto, alsa, oss, esound, none + +#--video=NAME +# Use video driver NAME for local frontend +# Supported values: +# for sxfe: auto, x11, xshm, xv, xvmc, xxmc, vdpau, vaapi, vidix, sdl, opengl, none +# for fbfe: auto, fb, DirectFB, vidixfb, sdl, dxr3, aadxr3, none + +#--fullscreen +# Fullscreen mode (X11) + +#--hud[=flag[,flag]] +# Head Up Display OSD (X11) +# flags: +# xshape Use XShape instead of compositing +# opengl Use OpenGL instead of compositing + +#--opengl +# Use OpenGL for video and Head Up Display OSD + +#--width=x +# Window width + +#--height=x +# Window width + +#--geometry=WxH[+X+Y] +# Set output window geometry (X style) + +#--display=DISP +# Use X11 display DISP +#" (or framebuffer device name) + +#--wid=ID +# Use existing X11 window +# Special ID for root window: --wid=root + +#--modeswitch +# Enable video mode switching + +#--post=NAME +# Use xine post plugin NAME +# format: pluginname[:arg=val[,arg=val]][,...]\n" +# example: \n" +# --post=upmix;tvtime:enabled=1,cheap_mode=1\n" + +#--primary +# Force xineliboutput to be primary device when +# there are active frontend(s) + +#--exit-on-close +# Exit vdr when local frontend window is closed + +#--config=file +# Use xine-lib config file diff --git a/PKGBUILD b/PKGBUILD new file mode 100644 index 000000000000..7257fcc1dfdd --- /dev/null +++ b/PKGBUILD @@ -0,0 +1,83 @@ +# This PKGBUILD is part of the VDR4Arch project [https://github.com/vdr4arch] + +# Maintainer: Christopher Reimer <mail+vdr4arch[at]c-reimer[dot]de> +pkgbase=xineliboutput +pkgname=(vdr-xineliboutput xineliboutput-frontends xineliboutput-xineplug) +pkgver=1.1.0.32.gbf166be +_gitver=bf166be4a21c0a86f6852c4695dcdb06863f4e93 +_vdrapi=2.2.0 +pkgrel=9 +url="http://www.sourceforge.net/projects/xineliboutput" +arch=('x86_64' 'i686' 'arm' 'armv6h' 'armv7h') +license=('GPL2') +makedepends=('dbus-glib' 'git' 'glu' 'libcec' 'libextractor' 'libxrandr' 'mesa' "vdr-api=${_vdrapi}" 'xine-lib') +_plugname=$(echo $pkgbase | sed 's/vdr-//g') +source=("git://projects.vdr-developer.org/$_plugname.git#commit=$_gitver" + 'xineliboutput-vdr2.1.6compat.diff' + 'xineliboutput_renamed_iDoubleTapTimeoutMs_in_libcec.diff' + 'xineliboutput-vdr2.1.10compat.diff' + "50-$_plugname.conf") +md5sums=('SKIP' + '14ef92cd38503a2f426669aa43b0aeb4' + 'd9e14cb60e536109716ebc886f54880b' + 'de80424deabba49e3f40c2f92f640765' + 'a9a3cd09b950d2024b21a1c6e0620506') + +pkgver() { + cd "${srcdir}/${_plugname}" + git describe --tags | sed "s/$_plugname.//g;s/_/./g;s/-/./g" +} + +prepare() { + cd "${srcdir}/${_plugname}" + patch -p1 -i "$srcdir/xineliboutput-vdr2.1.6compat.diff" + patch -p1 -i "$srcdir/xineliboutput_renamed_iDoubleTapTimeoutMs_in_libcec.diff" + patch -p1 -i "$srcdir/xineliboutput-vdr2.1.10compat.diff" +} + +build() { + cd "${srcdir}/${_plugname}" + make +} + +package_vdr-xineliboutput() { + pkgdesc="X11 and Linux framebuffer front-end for VDR" + depends=('dbus-glib' 'libextractor' 'libxrandr' 'mesa' "vdr-api=${_vdrapi}" 'xine-lib' 'xineliboutput-xineplug') + optdepends=('nvidia: Required for VDPAU decoding' + 'xorg-server: Required for software decoding') + backup=("etc/vdr/conf.avail/50-$_plugname.conf" + "var/lib/vdr/plugins/$_plugname/allowed_hosts.conf") + cd "${srcdir}/${_plugname}" + + mkdir -p "$pkgdir/usr/lib/vdr/plugins" + make DESTDIR="$pkgdir" install + + rm -r "$pkgdir/usr/bin" + rm -r "$pkgdir/usr/lib/xine" + install -Dm644 examples/allowed_hosts.conf "$pkgdir/var/lib/vdr/plugins/$_plugname/allowed_hosts.conf" + install -Dm644 "$srcdir/50-$_plugname.conf" "$pkgdir/etc/vdr/conf.avail/50-$_plugname.conf" + + chown -R 666:666 "$pkgdir/var/lib/vdr" +} + +package_xineliboutput-frontends() { + pkgdesc="Xineliboutput frontends (vdr-fbfe and vdr-sxfe)" + depends=('dbus-glib' 'libcec' 'libxrandr' 'mesa' 'xine-lib' 'xineliboutput-xineplug') + optdepends=('nvidia: Required for VDPAU decoding' + 'xorg-server: Required for software decoding') + cd "${srcdir}/${_plugname}" + + mkdir -p "$pkgdir/usr/lib/vdr/plugins" + make DESTDIR="$pkgdir" install + rm -r "$pkgdir/usr/lib" "$pkgdir/usr/share" +} + +package_xineliboutput-xineplug() { + pkgdesc="Neccessary xine plugins for xineliboutput-frontends and vdr-xineliboutput" + depends=('xine-lib') + cd "${srcdir}/${_plugname}" + + mkdir -p "$pkgdir/usr/lib/vdr/plugins" + make DESTDIR="$pkgdir" install + rm -r "$pkgdir/usr/bin" "$pkgdir/usr/lib/vdr" "$pkgdir/usr/share" +} diff --git a/xineliboutput-vdr2.1.10compat.diff b/xineliboutput-vdr2.1.10compat.diff new file mode 100644 index 000000000000..3c6f8a61eeec --- /dev/null +++ b/xineliboutput-vdr2.1.10compat.diff @@ -0,0 +1,19 @@ +diff --git a/osd.c b/osd.c +index a6a4552..42b7d36 100644 +--- a/osd.c ++++ b/osd.c +@@ -515,12 +515,12 @@ void cXinelibOsd::Flush(void) + if (IsTrueColor()) { + + LOCK_PIXMAPS; +- while (cPixmapMemory *pm = RenderPixmaps()) { ++ while (cPixmapMemory *pm = dynamic_cast<cPixmapMemory *>(RenderPixmaps())) { + int w = pm->ViewPort().Width(); + int h = pm->ViewPort().Height(); + int d = w * sizeof(tColor); + CmdArgb(Left() + pm->ViewPort().X(), Top() + pm->ViewPort().Y(), w, h, pm->Data(), h * d); +- delete pm; ++ DestroyPixmap(pm); + } + + return; diff --git a/xineliboutput-vdr2.1.6compat.diff b/xineliboutput-vdr2.1.6compat.diff new file mode 100644 index 000000000000..a8252c2ce553 --- /dev/null +++ b/xineliboutput-vdr2.1.6compat.diff @@ -0,0 +1,29 @@ +diff --git a/device.c b/device.c +index 081fb64..ed1595b 100644 +--- a/device.c ++++ b/device.c +@@ -1441,12 +1441,6 @@ void cXinelibDevice::SetVideoDisplayFormat(eVideoDisplayFormat VideoDisplayForma + #endif + } + +-eVideoSystem cXinelibDevice::GetVideoSystem(void) +-{ +- TRACEF("cXinelibDevice::GetVideoSystem"); +- return cDevice::GetVideoSystem(); +-} +- + void cXinelibDevice::GetVideoSize(int &Width, int &Height, double &VideoAspect) + { + Width = m_VideoSize->width; +diff --git a/device.h b/device.h +index c86a99f..a01e017 100644 +--- a/device.h ++++ b/device.h +@@ -123,7 +123,6 @@ class cXinelibDevice : public cDevice + public: + virtual void SetVideoDisplayFormat(eVideoDisplayFormat VideoDisplayFormat); + virtual void SetVideoFormat(bool VideoFormat16_9); +- virtual eVideoSystem GetVideoSystem(void); + + struct video_size_s *m_VideoSize; + struct ts_state_s *m_tssVideoSize; diff --git a/xineliboutput_renamed_iDoubleTapTimeoutMs_in_libcec.diff b/xineliboutput_renamed_iDoubleTapTimeoutMs_in_libcec.diff new file mode 100644 index 000000000000..fef0e5540a22 --- /dev/null +++ b/xineliboutput_renamed_iDoubleTapTimeoutMs_in_libcec.diff @@ -0,0 +1,13 @@ +diff --git a/xine_frontend_cec.c b/xine_frontend_cec.c +index 02e44f0..461bc4f 100644 +--- a/xine_frontend_cec.c ++++ b/xine_frontend_cec.c +@@ -272,7 +272,7 @@ static void libcec_config_clear(libcec_configuration *p) + p->bMonitorOnly = 0; + p->cecVersion = CEC_DEFAULT_SETTING_CEC_VERSION; + p->adapterType = ADAPTERTYPE_UNKNOWN; +- p->iDoubleTapTimeoutMs = CEC_DOUBLE_TAP_TIMEOUT_MS; ++ p->iDoubleTapTimeout50Ms = CEC_DOUBLE_TAP_TIMEOUT_50_MS; + p->comboKey = CEC_USER_CONTROL_CODE_STOP; + p->iComboKeyTimeoutMs = CEC_DEFAULT_COMBO_TIMEOUT_MS; + |