merging trunk

This commit is contained in:
Stephan Raue 2010-03-12 18:38:37 +01:00
commit bc541a81ad
53 changed files with 13 additions and 86879 deletions

View File

@ -1,6 +0,0 @@
#!/bin/sh
. config/options
mkdir -p $INSTALL/usr/share/xbmc/skin/Confluence
cp -PR $PKG_BUILD/* $INSTALL/usr/share/xbmc/skin/Confluence

View File

@ -1 +0,0 @@
http://sources.openelec.tv/svn/xbmc-pvr-theme-Confluence-28391.tar.bz2

View File

@ -1,126 +0,0 @@
#!/bin/sh
. config/options
$SCRIPTS/build toolchain
$SCRIPTS/build boost
$SCRIPTS/build Python
$SCRIPTS/build zlib
$SCRIPTS/build bzip2
$SCRIPTS/build lzo
$SCRIPTS/build pcre
$SCRIPTS/build alsa-lib
$SCRIPTS/build enca
$SCRIPTS/build curl
$SCRIPTS/build libmicrohttpd
$SCRIPTS/build dbus
$SCRIPTS/build hal
$SCRIPTS/build libXt
$SCRIPTS/build libXtst
$SCRIPTS/build libXmu
$SCRIPTS/build libXrandr
$SCRIPTS/build $MESA #GL/GLU
$SCRIPTS/build glew
$SCRIPTS/build fontconfig
$SCRIPTS/build fribidi
$SCRIPTS/build jpeg
$SCRIPTS/build libpng
$SCRIPTS/build tiff
$SCRIPTS/build freetype
$SCRIPTS/build jasper
# $SCRIPTS/build libass
$SCRIPTS/build libmad
$SCRIPTS/build libsamplerate
$SCRIPTS/build libogg
$SCRIPTS/build libvorbis
$SCRIPTS/build libcdio
$SCRIPTS/build libmms
$SCRIPTS/build libmodplug
$SCRIPTS/build faac
$SCRIPTS/build faad2
$SCRIPTS/build flac
$SCRIPTS/build wavpack
$SCRIPTS/build libmpeg2
# $SCRIPTS/build musepack
$SCRIPTS/build SDL #?
$SCRIPTS/build SDL_mixer #?
$SCRIPTS/build SDL_image #?
$SCRIPTS/build avahi
$SCRIPTS/build sqlite
$SCRIPTS/build mysql #lib #?
$SCRIPTS/build samba #lib
if [ "$VDPAU" = yes ]; then
$SCRIPTS/build libvdpau
XBMC_VDPAU="--enable-vdpau"
else
XBMC_VDPAU="--disable-vdpau"
fi
if [ "$CRYSTALHD" = yes ]; then
$SCRIPTS/build crystalhd
XBMC_CRYSTALHD="--enable-crystalhd"
else
XBMC_CRYSTALHD="--disable-crystalhd"
fi
if [ "$FFMPEG" = external ]; then
$SCRIPTS/build ffmpeg
XBMC_FFMPEG="--enable-external-ffmpeg"
else
XBMC_FFMPEG="--disable-external-ffmpeg"
fi
LDFLAGS="$LDFLAGS -lpython2.6"
cd $PKG_BUILD
cd xbmc/cores/dvdplayer/Codecs/libdvd/libdvdcss
./bootstrap
cd -
./bootstrap
./configure --host=$TARGET_NAME \
--build=$HOST_NAME \
--prefix=/usr \
--exec-prefix=/usr \
--sysconfdir=/etc \
--datadir=/usr/share \
--disable-debug \
--enable-optimizations \
--enable-gl \
--disable-profiling \
--disable-joystick \
--enable-xrandr \
--disable-ccache \
--disable-pulse \
--enable-faac \
--disable-libdts \
--disable-liba52 \
--enable-dvdcss \
--disable-mid \
--disable-goom \
--disable-xbmcprojectm \
--disable-rsxs \
--enable-avahi \
--enable-hal \
--enable-webserver \
$XBMC_VDPAU \
$XBMC_CRYSTALHD \
$XBMC_FFMPEG \
--disable-external-liba52 \
--disable-external-libdts \
--disable-external-libass \
--enable-external-python \
make externals
make xbmc.bin
make xbmc-xrandr

View File

@ -1,29 +0,0 @@
################################################################################
# Mediacenter environment variables.
#
# This file contains non-OpenELEC evironment variables as well as OpenELEC
# evironment variables that are not user defined.
################################################################################
XBMC_CACHING="no"
#-------------------------------------------------------------------------------
# do not change anything below
#-------------------------------------------------------------------------------
XBMC_HOME="/usr/share/xbmc"
export XBMC_HOME
cache_xbmc () {
progress "caching XBMC"
mkdir -p /var/cache/bin
ionice -c 1 -n 0 cp -PR /usr/share/xbmc/xbmc.bin /var/cache/bin
touch /var/cache/xbmc.cache
}
wait_for_xbmc_cache () {
while [ ! -f /var/cache/xbmc.cache ]; do
sleep 1
done
}

View File

@ -1,26 +0,0 @@
# starting Mediacenter
#
# runlevels: openelec
args="--standalone -fs --lircdev $LIRC_OUTPUT"
progress "starting Mediacenter"
if test "$XBMC_CACHING" = "yes" ; then
wait_for_xbmc_cache
XBMC_BIN="/var/cache/bin/xbmc.bin"
else
XBMC_BIN="/usr/share/xbmc/xbmc.bin"
fi
while true; do
DISPLAY=:0.0 $XBMC_BIN ${args} > /dev/null 2>&1
RET=$?
echo "Exited with code $RET"
[ "$RET" == 0 ] && break
[ "$RET" == 64 ] && sync && poweroff
[ "$RET" == 66 ] && sync && reboot
done

View File

@ -1,126 +0,0 @@
#!/bin/sh
. config/options
$SCRIPTS/install Python
$SCRIPTS/install zlib
$SCRIPTS/install bzip2
$SCRIPTS/install lzo
$SCRIPTS/install pcre
$SCRIPTS/install alsa-lib
$SCRIPTS/install enca
$SCRIPTS/install curl
$SCRIPTS/install libmicrohttpd
$SCRIPTS/install dbus
$SCRIPTS/install hal
$SCRIPTS/install DeviceKit-disks
$SCRIPTS/install ConsoleKit
$SCRIPTS/install libXt
$SCRIPTS/install libXtst
$SCRIPTS/install libXmu
$SCRIPTS/install libXrandr
$SCRIPTS/install $MESA
[ "$VDPAU" = yes ] && $SCRIPTS/install libvdpau
[ "$CRYSTALHD" = yes ] && $SCRIPTS/install crystalhd
$SCRIPTS/install glew
$SCRIPTS/install fontconfig
$SCRIPTS/install fribidi
$SCRIPTS/install jpeg
$SCRIPTS/install libpng
$SCRIPTS/install tiff
$SCRIPTS/install freetype
$SCRIPTS/install jasper
# $SCRIPTS/install libass
# $SCRIPTS/install a52dec # static
$SCRIPTS/install libmad
$SCRIPTS/install libsamplerate
$SCRIPTS/install libogg
$SCRIPTS/install libvorbis
$SCRIPTS/install libcdio
$SCRIPTS/install libmms
$SCRIPTS/install libmodplug
$SCRIPTS/install faac
$SCRIPTS/install faad2
$SCRIPTS/install flac
$SCRIPTS/install wavpack
$SCRIPTS/install libmpeg2
# $SCRIPTS/install musepack
[ "$FFMPEG" = external ] && $SCRIPTS/install ffmpeg
$SCRIPTS/install SDL
$SCRIPTS/install SDL_mixer
$SCRIPTS/install SDL_image
$SCRIPTS/install avahi
$SCRIPTS/install sqlite
$SCRIPTS/install mysql
$SCRIPTS/install samba
PKG_DIR=`find $PACKAGES -type d -name $1`
mkdir -p $INSTALL/usr/bin
cp -PR $PKG_DIR/scripts/xbmc $INSTALL/usr/bin
mkdir -p $INSTALL/usr/share/xbmc
cp -PR $PKG_BUILD/xbmc.bin $INSTALL/usr/share/xbmc
cp -PR $PKG_BUILD/xbmc-xrandr $INSTALL/usr/share/xbmc
mkdir -p $INSTALL/usr/share/xbmc/language
cp -PR $PKG_BUILD/language/* $INSTALL/usr/share/xbmc/language
mkdir -p $INSTALL/usr/share/xbmc/media/Fonts
cp -PR $PKG_BUILD/media/Fonts/*.ttf $INSTALL/usr/share/xbmc/media/Fonts
mkdir -p $INSTALL/usr/share/xbmc/media
cp -PR $PKG_BUILD/media/weather.zip $INSTALL/usr/share/xbmc/media/
cp -PR $PKG_BUILD/media/icon.png $INSTALL/usr/share/xbmc/media/
mkdir -p $INSTALL/usr/share/xbmc/skin
mkdir -p $INSTALL/usr/share/xbmc/sounds
cp -PR $PKG_BUILD/sounds/* $INSTALL/usr/share/xbmc/sounds
mkdir -p $INSTALL/usr/share/xbmc/system
cp -PR $PKG_BUILD/system/*linux.so $INSTALL/usr/share/xbmc/system
cp -PR $PKG_BUILD/system/*.xml $INSTALL/usr/share/xbmc/system
cp -PR $PKG_BUILD/system/*.conf $INSTALL/usr/share/xbmc/system
mkdir -p $INSTALL/usr/share/xbmc/system/keymaps
cp -PR $PKG_BUILD/system/keymaps/* $INSTALL/usr/share/xbmc/system/keymaps
mkdir -p $INSTALL/usr/share/xbmc/system/players/dvdplayer
cp -PR $PKG_BUILD/system/players/dvdplayer/*.so $INSTALL/usr/share/xbmc/system/players/dvdplayer
cp -PR $PKG_BUILD/system/players/dvdplayer/etc $INSTALL/usr/share/xbmc/system/players/dvdplayer
mkdir -p $INSTALL/usr/share/xbmc/system/players/paplayer
cp -PR $PKG_BUILD/system/players/paplayer/*.so $INSTALL/usr/share/xbmc/system/players/paplayer
mkdir -p $INSTALL/usr/share/xbmc/system/python
cp -PR $PKG_BUILD/system/python/*.so $INSTALL/usr/share/xbmc/system/python
mkdir -p $INSTALL/usr/share/xbmc/system/scrapers
cp -PR $PKG_BUILD/system/scrapers/* $INSTALL/usr/share/xbmc/system/scrapers
mkdir -p $INSTALL/usr/share/xbmc/system/shaders
cp -PR $PKG_BUILD/system/shaders/* $INSTALL/usr/share/xbmc/system/shaders
mkdir -p $INSTALL/usr/share/xbmc/userdata
cp -PR $PKG_BUILD/userdata/* $INSTALL/usr/share/xbmc/userdata
mkdir -p $INSTALL/usr/share/xbmc/web
cp -R $PKG_BUILD/web/poc_jsonrpc/* $INSTALL/usr/share/xbmc/web
mkdir -p $INSTALL/usr/share/xbmc/addons
cp -PR $PKG_BUILD/addons/* $INSTALL/usr/share/xbmc/addons
find $INSTALL/usr/share/xbmc/addons -name *.h -exec rm -rf {} ";"
# other programs needed to run
$SCRIPTS/install alsa
$SCRIPTS/install lirc
$SCRIPTS/install vdr

View File

@ -1,138 +0,0 @@
diff -Naur xbmc-pvr-28368/configure.in xbmc-pvr-28368.patch/configure.in
--- xbmc-pvr-28368/configure.in 2010-03-04 14:12:37.000000000 +0100
+++ xbmc-pvr-28368.patch/configure.in 2010-03-04 14:55:05.805134767 +0100
@@ -1161,7 +1161,9 @@
cp pyconfig.h Include
else
./configure \
- --enable-ipv6 \
+ --host=$host_alias \
+ --build=$build_alias \
+ --disable-ipv6 \
--enable-unicode=ucs4 \
--without-cxx \
--enable-shared \
@@ -1226,6 +1228,7 @@
--disable-static \
--disable-ipv6 \
`if test "$use_debug" = "no"; then echo --disable-debug; fi` \
+ `if test "$cross_compiling" = "yes"; then echo --enable-cross-compile; fi` \
--disable-muxers \
--enable-muxer=spdif \
--enable-muxer=adts \
@@ -1242,6 +1245,7 @@
--enable-postproc \
--enable-gpl \
`if test "$use_vdpau" = "yes"; then echo --enable-vdpau; else echo --disable-vdpau; fi` \
+ --disable-vaapi \
--enable-libfaad \
--enable-protocol=http \
--enable-pthreads \
@@ -1261,6 +1265,8 @@
--disable-win
else
./configure \
+ --host=$host_alias \
+ --build=$build_alias \
--disable-oss \
--disable-solaris-audio \
--disable-al-audio \
@@ -1278,6 +1284,8 @@
--with-pic
else
./configure \
+ --host=$host_alias \
+ --build=$build_alias \
--disable-doc \
--enable-static \
--with-pic
@@ -1296,6 +1304,8 @@
cp `pwd`/../libdvdread/src/*.h `pwd`/../includes/dvdread
else
./configure2 \
+ --host=$host_alias \
+ --build=$build_alias \
--extra-cflags="$CFLAGS $DVDREAD_CFLAGS -fPIC -DPIC -I`pwd`/../libdvdcss/src" \
--prefix="${prefix}" --includedir="${includedir}" --libdir="${libdir}" --datadir="${datadir}" \
--enable-static \
@@ -1321,6 +1331,8 @@
--cc="$CC"
else
./configure2 \
+ --host=$host_alias \
+ --build=$build_alias \
--extra-cflags="$DVDREAD_CFLAGS -fPIC -DPIC -I`pwd`/../includes" \
--extra-ldflags="-L`pwd`/../libdvdread/obj" \
--with-dvdread-config="`pwd`/../libdvdread/obj/dvdread-config" \
@@ -1353,6 +1365,8 @@
--disable-al-audio
else
./configure \
+ --host=$host_alias \
+ --build=$build_alias \
--with-pic \
--disable-static \
--enable-shared \
@@ -1388,7 +1402,9 @@
./configure MACOSX_DEPLOYMENT_TARGET=10.4
else
CFLAGS="$CFLAGS -fPIC" \
- ./configure
+ ./configure \
+ --host=$host_alias \
+ --build=$build_alias
fi
], [$USE_EXTERNAL_LIBASS])
@@ -1402,6 +1418,8 @@
--with-pic
else
./configure \
+ --host=$host_alias \
+ --build=$build_alias \
CPPFLAGS="$CPPFLAGS" \
CFLAGS="$CFLAGS -fPIC" \
CXXFLAGS="$CXXFLAGS -fPIC" \
@@ -1428,6 +1446,8 @@
XB_CONFIG_MODULE([xbmc/visualizations/Goom/goom2k4-0],[
if test "$host_vendor" != "apple" ; then
./configure \
+ --host=$host_alias \
+ --build=$build_alias \
CPPFLAGS="$CPPFLAGS" \
CFLAGS="$CFLAGS -fPIC" \
CXXFLAGS="$CXXFLAGS -fPIC" \
@@ -1458,6 +1478,8 @@
--disable-skyrocket
else
./configure \
+ --host=$host_alias \
+ --build=$build_alias \
CPPFLAGS="$CPPFLAGS" \
CFLAGS="$CFLAGS -fPIC" \
CXXFLAGS="$CXXFLAGS -fPIC" \
@@ -1477,9 +1499,11 @@
XB_CONFIG_MODULE([xbmc/cores/dvdplayer/Codecs/libbdnav/], [
if test "$host_vendor" = "apple" ; then
- ./configure --with-ssl-dir=/opt/local/include
+ ./configure --with-ssl-dir=/opt/local/include
else
- ./configure --without-openssl
+ ./configure --without-openssl \
+ --host=$host_alias \
+ --build=$build_alias
fi
], [0])
@@ -1488,7 +1512,9 @@
CFLAGS="-isysroot /Developer/SDKs/MacOSX10.4u.sdk -mmacosx-version-min=10.4 -fno-common" \
./configure MACOSX_DEPLOYMENT_TARGET=10.4 --disable-shared
else
- ./configure
+ ./configure \
+ --host=$host_alias \
+ --build=$build_alias
fi
], [0])

View File

@ -1,97 +0,0 @@
diff -Naur xbmc-pvr-28368/configure.in xbmc-pvr-28368.patch/configure.in
--- xbmc-pvr-28368/configure.in 2010-03-04 14:55:42.493261863 +0100
+++ xbmc-pvr-28368.patch/configure.in 2010-03-04 14:55:55.964134731 +0100
@@ -33,6 +33,8 @@
xrandr_disabled="== XRandR support disabled. SDL will be used for resolution support. =="
goom_enabled="== GOOM enabled. =="
goom_disabled="== GOOM disabled. =="
+xbmcprojectm_enabled="== XBMCProjectM enabled. =="
+xbmxprojectm_disabled="== XBMCProjectM disabled. =="
pulse_not_found="== Could not find libpulse. PulseAudio support disabled. =="
pulse_disabled="== PulseAudio support manually disabled. =="
faac_not_found="== Could not find libfaac. FAAC support disabled. =="
@@ -150,6 +152,12 @@
[use_goom=$enableval],
[use_goom=no])
+AC_ARG_ENABLE([xbmcprojectm],
+ [AS_HELP_STRING([--enable-xbmcprojectm],
+ [enable XBMCProjectM visualisation (default is yes)])],
+ [use_xbmcprojectm=$enableval],
+ [use_xbmcprojectm=yes])
+
AC_PATH_PROG(CCACHE,ccache,none)
AC_ARG_ENABLE([ccache],
[AS_HELP_STRING([--enable-ccache],
@@ -529,6 +537,15 @@
fi
fi
+# XBMCPROJECTM
+if test "$use_xbmcprojectm" = "yes"; then
+ AC_MSG_NOTICE($xbmcprojectm_enabled)
+ BUILD_XBMCPROJECTM=0
+else
+ AC_MSG_NOTICE($xbmcprojectm_disabled)
+ BUILD_XBMCPROJECTM=1
+fi
+
### External libraries checks
if test "$use_external_libraries" = "yes"; then
AC_MSG_NOTICE($external_libraries_enabled)
@@ -856,6 +873,12 @@
final_message="$final_message\n GOOM:\t\tNo"
fi
+if test "$use_xbmcprojectm" = "yes"; then
+ final_message="$final_message\n XBMCProjectM:\tYes"
+else
+ final_message="$final_message\n XBMCProjectM:\tNo"
+fi
+
if test "$use_pcre" = "yes"; then
final_message="$final_message\n PCRE Support:\tYes"
else
@@ -1097,6 +1120,7 @@
AC_SUBST(SDL_DEFINES)
AC_SUBST(BUILD_DVDCSS)
AC_SUBST(BUILD_GOOM)
+AC_SUBST(BUILD_XBMCPROJECTM)
AC_SUBST(USE_EXTERNAL_LIBRARIES)
AC_SUBST(USE_EXTERNAL_FFMPEG)
AC_SUBST(USE_EXTERNAL_LIBA52)
@@ -1441,7 +1465,7 @@
-DSYSCONF_INSTALL_DIR:PATH="${sysconfdir}" -DSHARE_INSTALL_PREFIX:PATH="${datadir}" .
set +x
fi
-], [0])
+], [$BUILD_XBMCPROJECTM])
XB_CONFIG_MODULE([xbmc/visualizations/Goom/goom2k4-0],[
if test "$host_vendor" != "apple" ; then
diff -Naur xbmc-pvr-28368/Makefile.in xbmc-pvr-28368.patch/Makefile.in
--- xbmc-pvr-28368/Makefile.in 2010-03-04 14:12:37.000000000 +0100
+++ xbmc-pvr-28368.patch/Makefile.in 2010-03-04 14:55:55.966137206 +0100
@@ -104,8 +104,10 @@
VIS_DIRS=\
xbmc/visualizations/OpenGLSpectrum \
- xbmc/visualizations/WaveForm \
- xbmc/visualizations/XBMCProjectM
+ xbmc/visualizations/WaveForm
+ifneq (@BUILD_XBMCPROJECTM@,1)
+VIS_DIRS+=xbmc/visualizations/XBMCProjectM
+endif
ifneq (@BUILD_GOOM@,1)
VIS_DIRS+=xbmc/visualizations/Goom
endif
@@ -303,7 +305,9 @@
visualizations: exports
$(MAKE) -C xbmc/visualizations/OpenGLSpectrum
$(MAKE) -C xbmc/visualizations/WaveForm
+ifneq (@BUILD_XBMCPROJECTM@,1)
$(MAKE) -C xbmc/visualizations/XBMCProjectM
+endif
ifneq (@BUILD_GOOM@,1)
ifeq ($(or $(findstring powerpc-linux,$(ARCH)),$(findstring powerpc64-linux,$(ARCH))),)
$(MAKE) -C xbmc/visualizations/Goom

View File

@ -1,97 +0,0 @@
diff -Naur xbmc-pvr-28368/configure.in xbmc-pvr-28368.patch/configure.in
--- xbmc-pvr-28368/configure.in 2010-03-04 14:56:29.763135238 +0100
+++ xbmc-pvr-28368.patch/configure.in 2010-03-04 14:56:42.557259507 +0100
@@ -35,6 +35,8 @@
goom_disabled="== GOOM disabled. =="
xbmcprojectm_enabled="== XBMCProjectM enabled. =="
xbmxprojectm_disabled="== XBMCProjectM disabled. =="
+rsxs_enabled="== RSXS enabled. =="
+rsxs_disabled="== RSXS disabled. =="
pulse_not_found="== Could not find libpulse. PulseAudio support disabled. =="
pulse_disabled="== PulseAudio support manually disabled. =="
faac_not_found="== Could not find libfaac. FAAC support disabled. =="
@@ -158,6 +160,12 @@
[use_xbmcprojectm=$enableval],
[use_xbmcprojectm=yes])
+AC_ARG_ENABLE([rsxs],
+ [AS_HELP_STRING([--enable-rsxs],
+ [enable RSXS Screensaver (default is yes)])],
+ [use_rsxs=$enableval],
+ [use_rsxs=yes])
+
AC_PATH_PROG(CCACHE,ccache,none)
AC_ARG_ENABLE([ccache],
[AS_HELP_STRING([--enable-ccache],
@@ -546,6 +554,15 @@
BUILD_XBMCPROJECTM=1
fi
+# RSXS
+if test "$use_rsxs" = "yes"; then
+ AC_MSG_NOTICE($rsxs_enabled)
+ BUILD_RSXS=0
+else
+ AC_MSG_NOTICE($rsxs_disabled)
+ BUILD_RSXS=1
+fi
+
### External libraries checks
if test "$use_external_libraries" = "yes"; then
AC_MSG_NOTICE($external_libraries_enabled)
@@ -879,6 +896,12 @@
final_message="$final_message\n XBMCProjectM:\tNo"
fi
+if test "$use_rsxs" = "yes"; then
+ final_message="$final_message\n RSXS:\t\tYes"
+else
+ final_message="$final_message\n RSXS:\t\tNo"
+fi
+
if test "$use_pcre" = "yes"; then
final_message="$final_message\n PCRE Support:\tYes"
else
@@ -1121,6 +1144,7 @@
AC_SUBST(BUILD_DVDCSS)
AC_SUBST(BUILD_GOOM)
AC_SUBST(BUILD_XBMCPROJECTM)
+AC_SUBST(BUILD_RSXS)
AC_SUBST(USE_EXTERNAL_LIBRARIES)
AC_SUBST(USE_EXTERNAL_FFMPEG)
AC_SUBST(USE_EXTERNAL_LIBA52)
@@ -1519,7 +1543,7 @@
--disable-lattice \
--disable-skyrocket
fi
-], [0])
+], [$BUILD_RSXS])
XB_CONFIG_MODULE([xbmc/cores/dvdplayer/Codecs/libbdnav/], [
if test "$host_vendor" = "apple" ; then
diff -Naur xbmc-pvr-28368/Makefile.in xbmc-pvr-28368.patch/Makefile.in
--- xbmc-pvr-28368/Makefile.in 2010-03-04 14:56:29.764135078 +0100
+++ xbmc-pvr-28368.patch/Makefile.in 2010-03-04 14:57:31.037259469 +0100
@@ -99,8 +99,10 @@
lib/libmodplug \
lib/xbmc-dll-symbols
-SS_DIRS=\
- xbmc/screensavers/rsxs-0.9/xbmc
+SS_DIRS=
+ifneq (@BUILD_RSXS@,1)
+SS_DIRS=+xbmc/screensavers/rsxs-0.9/xbmc
+endif
VIS_DIRS=\
xbmc/visualizations/OpenGLSpectrum \
@@ -317,7 +319,9 @@
$(MAKE) -C xbmc/pvrclients/vdr-streamdev
$(MAKE) -C xbmc/pvrclients/tvheadend
screensavers: exports
+ifneq (@BUILD_RSXS@,1)
$(MAKE) -C xbmc/screensavers/rsxs-0.9/xbmc
+endif
libaddon: exports
$(MAKE) -C lib/libXBMC_addon
$(MAKE) -C lib/libXBMC_pvr

View File

@ -1,29 +0,0 @@
diff -Naur xbmc-27135/configure.in xbmc-27135.patch/configure.in
--- xbmc-27135/configure.in 2010-01-24 13:07:18.024733190 +0100
+++ xbmc-27135.patch/configure.in 2010-01-24 13:07:39.324609701 +0100
@@ -894,12 +894,6 @@
final_message="$final_message\n MID Support:\tNo"
fi
-if test -d "/usr/include/lzo"; then
- INCLUDES="$INCLUDES -I/usr/include/lzo"
-else
- INCLUDES="$INCLUDES"
-fi
-
if test "$use_ccache" = "yes"; then
if test "$ac_cv_path_CCACHE" = "none"; then
echo "ccache not found. Falling back to default CC"
diff -Naur xbmc-27135/configure.in.orig xbmc-27135.patch/configure.in.orig
diff -Naur xbmc-27135/tools/TexturePacker/XBMCTex.cpp xbmc-27135.patch/tools/TexturePacker/XBMCTex.cpp
--- xbmc-27135/tools/TexturePacker/XBMCTex.cpp 2010-01-24 11:48:16.696641003 +0100
+++ xbmc-27135.patch/tools/TexturePacker/XBMCTex.cpp 2010-01-24 13:07:39.325705415 +0100
@@ -37,7 +37,7 @@
#endif
#ifdef _LINUX
-#include <lzo1x.h>
+#include <lzo/lzo1x.h>
#else
#include "../../xbmc/lib/liblzo/LZO1X.H"
#endif

View File

@ -1,29 +0,0 @@
diff -Naur xbmc-27135/guilib/Makefile.in xbmc-27135.patch/guilib/Makefile.in
--- xbmc-27135/guilib/Makefile.in 2010-01-24 11:46:42.066643776 +0100
+++ xbmc-27135.patch/guilib/Makefile.in 2010-01-24 13:14:01.800579073 +0100
@@ -1,4 +1,4 @@
-INCLUDES=-I. -I../ -Icommon -I../xbmc -I../xbmc/linux -I../xbmc/utils -I/usr/include/freetype2 -I/usr/include/SDL -I../xbmc/lib/libsquish
+INCLUDES=-I. -I../ -Icommon -I../xbmc -I../xbmc/linux -I../xbmc/utils -I../xbmc/lib/libsquish
ifneq (@USE_EXTERNAL_FFMPEG@,1)
INCLUDES+=-I../xbmc/cores/dvdplayer/Codecs/ffmpeg
endif
diff -Naur xbmc-27135/xbmc/FileSystem/Makefile.in xbmc-27135.patch/xbmc/FileSystem/Makefile.in
--- xbmc-27135/xbmc/FileSystem/Makefile.in 2010-01-24 11:47:36.842631867 +0100
+++ xbmc-27135.patch/xbmc/FileSystem/Makefile.in 2010-01-24 13:14:59.573578187 +0100
@@ -1,6 +1,6 @@
ARCH=@ARCH@
-INCLUDES=-I. -I../ -I../cores -I../linux -I../../guilib -I../lib/UnrarXLib -I../utils -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include -I../lib
+INCLUDES=-I. -I../ -I../cores -I../linux -I../../guilib -I../lib/UnrarXLib -I../utils -I../lib
INCLUDES+=-I../lib/libcdio/libcdio/include
ifeq ($(findstring osx,$(ARCH)), osx)
INCLUDES+=-I../../lib/libcurl-OSX/include
diff -Naur xbmc-27135/xbmc/Makefile.in xbmc-27135.patch/xbmc/Makefile.in
--- xbmc-27135/xbmc/Makefile.in 2010-01-24 11:47:03.973632064 +0100
+++ xbmc-27135.patch/xbmc/Makefile.in 2010-01-24 13:14:32.079579280 +0100
@@ -1,4 +1,4 @@
-INCLUDES+=-I../ -I. -Ilinux -Icores -I../guilib -Iutils -IFileSystem -I/usr/include/freetype2 -Icores/dvdplayer
+INCLUDES+=-I../ -I. -Ilinux -Icores -I../guilib -Iutils -IFileSystem -Icores/dvdplayer
ifneq (@USE_EXTERNAL_FFMPEG@,1)
INCLUDES+=-Icores/dvdplayer/Codecs/ffmpeg

View File

@ -1,78 +0,0 @@
diff -Naur xbmc-27135/configure.in xbmc-27135.patch/configure.in
--- xbmc-27135/configure.in 2010-01-24 13:08:23.126603769 +0100
+++ xbmc-27135.patch/configure.in 2010-01-24 13:16:12.459703838 +0100
@@ -39,6 +39,8 @@
faac_disabled="== FAAC support manually disabled. =="
dvdcss_enabled="== DVDCSS support enabled. =="
dvdcss_disabled="== DVDCSS support disabled. =="
+hal_not_found="== Could not find hal and hal-storage. HAL support disabled. =="
+hal_disabled="== HAL support disabled. =="
avahi_not_found="== Could not find libavahi-common or libavahi-client. Avahi support disabled. =="
avahi_disabled="== Avahi support disabled. =="
vdpau_not_found="== Could not find libvdpau. VDPAU support disabled. =="
@@ -191,6 +193,11 @@
[enable MID support (default is no)])],
[use_mid=$enableval],
[use_mid=no])
+AC_ARG_ENABLE([hal],
+ [AS_HELP_STRING([--disable-hal],
+ [disable HAL support (default is enabled if hal and hal-storage is found)])],
+ [use_hal=$enableval],
+ [use_hal=yes])
AC_ARG_ENABLE([avahi],
[AS_HELP_STRING([--disable-avahi],
[disable Avahi support (default is enabled if libavahi-common and libavahi-client is found)])],
@@ -437,15 +444,9 @@
PKG_CHECK_MODULES([DBUS], [dbus-1],
[INCLUDES+=" $DBUS_CFLAGS"; LIBS+=" $DBUS_LIBS"],
AC_MSG_ERROR($missing_library))
- PKG_CHECK_MODULES([HAL_STORAGE], [hal-storage],
- [INCLUDES+=" $HAL_STORAGE_CFLAGS"; LIBS+=" $HAL_STORAGE_LIBS"],
- AC_MSG_ERROR($missing_library))
PKG_CHECK_MODULES([SDL], [sdl],
[INCLUDES+=" $SDL_CFLAGS"; LIBS+=" $SDL_LIBS"],
AC_MSG_ERROR($missing_library))
- PKG_CHECK_MODULES([HAL], [hal],
- [INCLUDES+=" $HAL_CFLAGS"; LIBS+=" $HAL_LIBS"],
- AC_MSG_ERROR($missing_library))
fi
# PulseAudio
@@ -474,6 +475,24 @@
fi
fi
+# HAL
+if test "$host_vendor" = "apple" ; then
+ use_hal="no"
+ AC_MSG_RESULT($hal_disabled)
+else
+ if test "$use_hal" = "yes"; then
+ PKG_CHECK_MODULES([HAL], [hal],
+ [INCLUDES+=" $HAL_CFLAGS"; LIBS+=" $HAL_LIBS"],
+ use_hal=no;AC_MSG_ERROR($missing_library))
+ PKG_CHECK_MODULES([HAL_STORAGE], [hal-storage],
+ [INCLUDES+=" $HAL_STORAGE_CFLAGS"; LIBS+=" $HAL_STORAGE_LIBS"],
+ use_hal=no;AC_MSG_ERROR($missing_library))
+ AC_DEFINE([HAS_HAL], [1], [Define to 1 if you have HAL installed])
+ else
+AC_MSG_RESULT($hal_disabled)
+ fi
+fi
+
# avahi
if test "$host_vendor" = "apple" ; then
use_avahi="no"
diff -Naur xbmc-27135/configure.in.orig xbmc-27135.patch/configure.in.orig
diff -Naur xbmc-27135/guilib/system.h xbmc-27135.patch/guilib/system.h
--- xbmc-27135/guilib/system.h 2010-01-24 11:46:42.047669779 +0100
+++ xbmc-27135.patch/guilib/system.h 2010-01-24 13:16:12.460703245 +0100
@@ -117,7 +117,6 @@
#define HAS_AVAHI
#endif
#define HAS_LCD
-#define HAS_HAL
#define HAS_DBUS
#define HAS_DBUS_SERVER
#define HAS_GL
diff -Naur xbmc-27135/guilib/system.h.orig xbmc-27135.patch/guilib/system.h.orig

View File

@ -1,16 +0,0 @@
diff -Naur xbmc-24572/xbmc/utils/Splash.cpp xbmc-24572.patch/xbmc/utils/Splash.cpp
--- xbmc-24572/xbmc/utils/Splash.cpp 2009-11-13 18:19:48.374746147 +0100
+++ xbmc-24572.patch/xbmc/utils/Splash.cpp 2009-11-14 16:58:52.677231191 +0100
@@ -53,9 +53,9 @@
g_graphicsContext.Clear();
g_graphicsContext.SetCameraPosition(CPoint(0, 0));
- float w = g_graphicsContext.GetWidth() * 0.5f;
- float h = g_graphicsContext.GetHeight() * 0.5f;
- CGUIImage* image = new CGUIImage(0, 0, w*0.5f, h*0.5f, w, h, m_ImageName);
+ float w = g_graphicsContext.GetWidth();
+ float h = g_graphicsContext.GetHeight();
+ CGUIImage* image = new CGUIImage(0, 0, 0, 0, w, h, m_ImageName);
image->SetAspectRatio(CAspectRatio::AR_KEEP);
image->AllocResources();

View File

@ -1,19 +0,0 @@
diff -Naur xbmc-23998/configure.in xbmc-23998.patch/configure.in
--- xbmc-23998/configure.in 2009-10-25 13:30:40.869660379 +0100
+++ xbmc-23998.patch/configure.in 2009-10-25 13:33:30.376657368 +0100
@@ -692,6 +692,7 @@
fi
fi
+AC_CHECK_PROG(HAVE_YASM,yasm,"yes","no",)
AC_CHECK_PROG(HAVE_SVNVERSION,svnversion,"yes","no",)
AC_CHECK_PROG(HAVE_GIT,git,"yes","no",)
@@ -1177,6 +1178,7 @@
--disable-ipv6 \
`if test "$use_debug" = "no"; then echo --disable-debug; fi` \
`if test "$cross_compiling" = "yes"; then echo --enable-cross-compile; fi` \
+ `if test "$HAVE_YASM" = "yes"; then echo --enable-yasm; fi` \
--disable-muxers \
--disable-encoders \
--disable-decoder=mpeg_xvmc \

View File

@ -1,13 +0,0 @@
diff -Naur xbmc-pvr-28391/configure.in xbmc-pvr-28391.patch/configure.in
--- xbmc-pvr-28391/configure.in 2010-03-06 13:44:06.000000000 +0100
+++ xbmc-pvr-28391.patch/configure.in 2010-03-07 23:26:55.998017036 +0100
@@ -438,9 +438,6 @@
PKG_CHECK_MODULES([XMU], [xmu],
[INCLUDES+=" $XMU_CFLAGS"; LIBS+=" $XMU_LIBS"],
AC_MSG_ERROR($missing_library))
- PKG_CHECK_MODULES([XINERAMA], [xinerama],
- [INCLUDES+=" $XINERAMA_CFLAGS"; LIBS+=" $XINERAMA_LIBS"],
- AC_MSG_ERROR($missing_library))
PKG_CHECK_MODULES([CURL], [libcurl],
[INCLUDES+=" $CURL_CFLAGS"; LIBS+=" $CURL_LIBS"],
AC_MSG_ERROR($missing_library))

View File

@ -1,99 +0,0 @@
diff -Naur xbmc-pvr-28373/Makefile.in xbmc-pvr-28373.patch/Makefile.in
--- xbmc-pvr-28373/Makefile.in 2010-03-04 18:42:13.000000000 +0100
+++ xbmc-pvr-28373.patch/Makefile.in 2010-03-05 14:38:39.934492375 +0100
@@ -492,7 +492,7 @@
$(MAKE) -C tools/TexturePacker/
install-bin: xbmc.bin # developement convenience target
- sudo install -D xbmc.bin $(prefix)/share/xbmc
+ sudo install -D xbmc.bin $(DESTDIR)/$(prefix)/share/xbmc
ifeq ($(findstring osx,$(ARCH)), osx)
# TODO: add osx install
@@ -500,57 +500,57 @@
install: install-binaries install-arch install-datas install-web
install-binaries: install-scripts
- @echo "Copying XBMC binary to $(prefix)/share/xbmc/xbmc.bin"
- @install -D xbmc.bin $(prefix)/share/xbmc/xbmc.bin
- @install -D xbmc-xrandr $(prefix)/share/xbmc/xbmc-xrandr
+ @echo "Copying XBMC binary to $(DESTDIR)/$(prefix)/share/xbmc/xbmc.bin"
+ @install -D xbmc.bin $(DESTDIR)/$(prefix)/share/xbmc/xbmc.bin
+ @install -D xbmc-xrandr $(DESTDIR)/$(prefix)/share/xbmc/xbmc-xrandr
@echo "You can run XBMC with the command 'xbmc'"
endif
install-arch:
@# Arch dependent files
- @find system addons -regextype posix-extended -type f -not -iregex ".*svn.*|.*win32(dx)?\.vis|.*osx\.vis" -iregex ".*$(ARCH).*|.*\.pvr|.*\.vis|.*\.xbs" -exec install -D "{}" $(prefix)/share/xbmc/"{}" \; -printf " -- %-75.75f\r"
+ @find system addons -regextype posix-extended -type f -not -iregex ".*svn.*|.*win32(dx)?\.vis|.*osx\.vis" -iregex ".*$(ARCH).*|.*\.pvr|.*\.vis|.*\.xbs" -exec install -D "{}" $(DESTDIR)/$(prefix)/share/xbmc/"{}" \; -printf " -- %-75.75f\r"
install-scripts:
- @install -D tools/Linux/xbmc.sh $(prefix)/bin/xbmc
- @install -D tools/Linux/xbmc-standalone.sh $(prefix)/bin/xbmc-standalone
- @install -D -m 0644 tools/Linux/FEH.py $(prefix)/share/xbmc/FEH.py
- @install -D -m 0644 tools/Linux/xbmc-xsession.desktop $(prefix)/share/xsessions/XBMC.desktop
+ @install -D tools/Linux/xbmc.sh $(DESTDIR)/$(prefix)/bin/xbmc
+ @install -D tools/Linux/xbmc-standalone.sh $(DESTDIR)/$(prefix)/bin/xbmc-standalone
+ @install -D -m 0644 tools/Linux/FEH.py $(DESTDIR)/$(prefix)/share/xbmc/FEH.py
+ @install -D -m 0644 tools/Linux/xbmc-xsession.desktop $(DESTDIR)/$(prefix)/share/xsessions/XBMC.desktop
install-datas: install-scripts
@echo "Copying support and legal files..."
@for FILE in `ls README.linux LICENSE.GPL *.txt`; do \
- install -D -m 0644 "$$FILE" $(prefix)/share/xbmc/; done
+ install -D -m 0644 "$$FILE" $(DESTDIR)/$(prefix)/share/xbmc/; done
@echo "Done!"
- @echo "Copying system files to $(prefix)/share/xbmc"
+ @echo "Copying system files to $(DESTDIR)/$(prefix)/share/xbmc"
@# Arch independent files
- @find addons language media scripts sounds userdata system -regextype posix-extended -type f -not -iregex ".*svn.*|.*\.so|.*\.dll|.*\.pyd|.*\.pvr|.*python/.*\.zlib|.*\.vis" -exec install -D -m 0644 "{}" $(prefix)/share/xbmc/"{}" \; -printf " -- %-75.75f\r"
+ @find addons language media scripts sounds userdata system -regextype posix-extended -type f -not -iregex ".*svn.*|.*\.so|.*\.dll|.*\.pyd|.*\.pvr|.*python/.*\.zlib|.*\.vis" -exec install -D -m 0644 "{}" $(DESTDIR)/$(prefix)/share/xbmc/"{}" \; -printf " -- %-75.75f\r"
@# Skins
- @find skin -regextype posix-extended -type f -not -iregex '.*/\.svn/.*|^skin/[^/]*/media/.*[^x][^b][^t]' -exec install -D -m 0644 '{}' $(prefix)/share/xbmc/'{}' \; -printf " -- %-75.75f\r"
+ @find skin -regextype posix-extended -type f -not -iregex '.*/\.svn/.*|^skin/[^/]*/media/.*[^x][^b][^t]' -exec install -D -m 0644 '{}' $(DESTDIR)/$(prefix)/share/xbmc/'{}' \; -printf " -- %-75.75f\r"
@# Icons and links
- @mkdir -p $(prefix)/share/applications $(prefix)/share/pixmaps
- @cp -a tools/Linux/xbmc.png $(prefix)/share/pixmaps/
- @cp -a tools/Linux/xbmc.desktop $(prefix)/share/applications/
+ @mkdir -p $(DESTDIR)/$(prefix)/share/applications $(DESTDIR)/$(prefix)/share/pixmaps
+ @cp -a tools/Linux/xbmc.png $(DESTDIR)/$(prefix)/share/pixmaps/
+ @cp -a tools/Linux/xbmc.desktop $(DESTDIR)/$(prefix)/share/applications/
install-livedatas:
- @echo "Install Live CD datas in $(prefix) ..."
- @mkdir -p $(prefix)/bin
- @install -D tools/XBMCLive/diskmounter $(prefix)/bin
- @install -D tools/XBMCLive/installXBMC $(prefix)/bin
- @install -D tools/XBMCLive/runXBMC $(prefix)/bin
- @install -D tools/XBMCLive/setAlsaVolumes $(prefix)/bin
+ @echo "Install Live CD datas in $(DESTDIR)/$(prefix) ..."
+ @mkdir -p $(DESTDIR)/$(prefix)/bin
+ @install -D tools/XBMCLive/diskmounter $(DESTDIR)/$(prefix)/bin
+ @install -D tools/XBMCLive/installXBMC $(DESTDIR)/$(prefix)/bin
+ @install -D tools/XBMCLive/runXBMC $(DESTDIR)/$(prefix)/bin
+ @install -D tools/XBMCLive/setAlsaVolumes $(DESTDIR)/$(prefix)/bin
install-web:
- @mkdir -p $(prefix)/share/xbmc/web
- @cp -r web/poc_jsonrpc/* $(prefix)/share/xbmc/web
- @find $(prefix)/share/xbmc/web -depth -name .svn -exec rm -rf {} \;
+ @mkdir -p $(DESTDIR)/$(prefix)/share/xbmc/web
+ @cp -r web/poc_jsonrpc/* $(DESTDIR)/$(prefix)/share/xbmc/web
+ @find $(DESTDIR)/$(prefix)/share/xbmc/web -depth -name .svn -exec rm -rf {} \;
uninstall:
@echo "Removing XBMC..."
- @rm -rf $(prefix)/share/xbmc $(prefix)/bin/xbmc
- @rm -rf $(prefix)/bin/xbmc-standalone
- @rm -rf $(prefix)/share/xsessions/XBMC.desktop
- @rm -rf $(libdir)/libXBMC_*
- @rm -rf $(prefix)/include/xbmc
+ @rm -rf $(DESTDIR)/$(prefix)/share/xbmc $(DESTDIR)/$(prefix)/bin/xbmc
+ @rm -rf $(DESTDIR)/$(prefix)/bin/xbmc-standalone
+ @rm -rf $(DESTDIR)/$(prefix)/share/xsessions/XBMC.desktop
+ @rm -rf $(DESTDIR)/$(libdir)/libXBMC_*
+ @rm -rf $(DESTDIR)/$(prefix)/include/xbmc
@echo "Done!"
reallyclean:

View File

@ -1,18 +0,0 @@
#!/bin/sh
. /etc/sysconfig
export DISPLAY=":0.0"
/usr/share/xbmc/xbmc.bin \
--standalone \
-fs \
--lircdev $LIRC_OUTPUT \
$@
RET=$?
echo "Exited with code $RET"
[ "$RET" == 0 ] && initctl emit shutdown REBOOT=no
[ "$RET" == 64 ] && initctl emit shutdown REBOOT=no
[ "$RET" == 66 ] && initctl emit shutdown REBOOT=yes

View File

@ -1 +0,0 @@
http://sources.openelec.tv/svn/xbmc-pvr-28391.tar.bz2

View File

@ -1,14 +0,0 @@
#!/bin/sh
. config/options
#$SCRIPTS/build vdr
VDR_DIR=`basename $BUILD/vdr-1*`
cd $BUILD/$1*
make \
VDRDIR="../$VDR_DIR" \
LIBDIR="." \
LOCALEDIR="./locale"

View File

@ -1 +0,0 @@
PLUGIN=streamdev-client

View File

@ -1 +0,0 @@
PLUGIN="streamdev-server"

View File

@ -1,26 +0,0 @@
#!/bin/sh
. config/options
mkdir -p $INSTALL/usr/lib/vdr
cp $BUILD/$1*/lib$1*.so.* $INSTALL/usr/lib/vdr
for loc in $INCLUDED_LOCALES; do
LOCALE=`echo $loc|cut -f1 -d.`
if [ -d $BUILD/$1*/locale/$LOCALE ]; then
mkdir -p $INSTALL/usr/share/locale/$LOCALE
cp -a $BUILD/$1*/locale/$LOCALE/* $INSTALL/usr/share/locale/$LOCALE/
fi
done
PKG_DIR=`find $PACKAGES -type d -name $1`
mkdir -p $INSTALL/usr/config/vdr/plugins.d
cp $PKG_DIR/config/streamdev-server $INSTALL/usr/config/vdr/plugins.d/50_streamdev-server
cp $PKG_DIR/config/streamdev-client $INSTALL/usr/config/vdr/plugins.d/50_streamdev-client
mkdir -p $INSTALL/usr/config/vdr/plugins/streamdev
cp $PKG_BUILD/streamdev/streamdevhosts.conf $INSTALL/usr/config/vdr/plugins/streamdev
if [ "$SERVICES" = yes ]; then
echo '0.0.0.0/0' >> $INSTALL/usr/config/vdr/plugins/streamdev/streamdevhosts.conf
fi

View File

@ -1,48 +0,0 @@
diff -NaurwB streamdev/server/connectionVTP.c streamdev-patched/server/connectionVTP.c
--- streamdev/server/connectionVTP.c 2009-10-13 08:38:47.000000000 +0200
+++ streamdev-patched/server/connectionVTP.c 2010-01-17 19:08:39.000000000 +0100
@@ -40,6 +40,9 @@
#if defined(USE_PARENTALRATING) || defined(PARENTALRATINGCONTENTVERSNUM)
enum eStates { Channel, Event, Title, Subtitle, Description, Vps, Content,
EndEvent, EndChannel, EndEPG };
+#elif APIVERSNUM >= 10711
+ enum eStates { Channel, Event, Title, Subtitle, Description, Vps, Content, Rating,
+ EndEvent, EndChannel, EndEPG };
#else
enum eStates { Channel, Event, Title, Subtitle, Description, Vps,
EndEvent, EndChannel, EndEPG };
@@ -282,7 +285,7 @@
break;
case Vps:
-#if defined(USE_PARENTALRATING) || defined(PARENTALRATINGCONTENTVERSNUM)
+#if defined(USE_PARENTALRATING) || defined(PARENTALRATINGCONTENTVERSNUM) || APIVERSNUM >= 10711
m_State = Content;
#else
m_State = EndEvent;
@@ -308,6 +311,25 @@
} else
return Next(Last);
break;
+#elif APIVERSNUM >= 10711
+ case Content:
+ m_State = Rating;
+ if (!isempty(m_Event->ContentToString(m_Event->Contents()))) {
+ char *copy = strdup(m_Event->ContentToString(m_Event->Contents()));
+ cString cpy(copy, true);
+ strreplace(copy, '\n', '|');
+ return m_Client->Respond(-215, "G %i %i %s", m_Event->Contents() & 0xF0, m_Event->Contents() & 0x0F, copy);
+ } else
+ return Next(Last);
+ break;
+
+ case Rating:
+ m_State = EndEvent;
+ if (m_Event->ParentalRating())
+ return m_Client->Respond(-215, "R %d", m_Event->ParentalRating());
+ else
+ return Next(Last);
+ break;
#endif
case EndEvent:

View File

@ -1,66 +0,0 @@
diff -NaurwB streamdev/server/connectionVTP.c streamdev-patched/server/connectionVTP.c
--- streamdev/server/connectionVTP.c 2010-01-17 17:52:57.000000000 +0100
+++ streamdev-patched/server/connectionVTP.c 2010-01-17 17:51:56.000000000 +0100
@@ -1384,22 +1490,52 @@
{
INIT_WRAPPER();
if (*Option) {
- if (isnumber(Option)) {
- cTimer *timer = Timers.Get(strtol(Option, NULL, 10) - 1);
+ int number = 0;
+ bool force = false;
+ char buf[strlen(Option) + 1];
+ strcpy(buf, Option);
+ const char *delim = " \t";
+ char *strtok_next;
+ char *p = strtok_r(buf, delim, &strtok_next);
+
+ if (isnumber(p)) {
+ number = strtol(p, NULL, 10) - 1;
+ }
+ else if (strcasecmp(p, "FORCE") == 0) {
+ force = true;
+ }
+ if ((p = strtok_r(NULL, delim, &strtok_next)) != NULL) {
+ if (isnumber(p)) {
+ number = strtol(p, NULL, 10) - 1;
+ }
+ else if (strcasecmp(p, "FORCE") == 0) {
+ force = true;
+ }
+ else {
+ Reply(501, "Timer not found or wrong syntax");
+ }
+ }
+
+ cTimer *timer = Timers.Get(number);
if (timer) {
- if (!timer->Recording()) {
+ if (timer->Recording()) {
+ if (force) {
+ timer->Skip();
+ cRecordControls::Process(time(NULL));
+ }
+ else {
+ Reply(550, "Timer \"%i\" is recording", number);
+ EXIT_WRAPPER();
+ }
+ }
isyslog("deleting timer %s", *timer->ToDescr());
Timers.Del(timer);
Timers.SetModified();
- Reply(250, "Timer \"%s\" deleted", Option);
+ Reply(250, "Timer \"%i\" deleted", number);
} else
- Reply(550, "Timer \"%s\" is recording", Option);
+ Reply(501, "Timer \"%i\" not defined", number);
} else
- Reply(501, "Timer \"%s\" not defined", Option);
- } else
- Reply(501, "Error in timer number \"%s\"", Option);
- } else
- Reply(501, "Missing timer number");
+ Reply(501, "Missing timer option");
EXIT_WRAPPER();
}

View File

@ -1,120 +0,0 @@
diff -NaurwB streamdev-unpatched/common.h streamdev/common.h
--- streamdev-unpatched/common.h 2009-09-18 12:41:41.000000000 +0200
+++ streamdev/common.h 2009-11-23 04:54:04.000000000 +0100
@@ -57,6 +57,8 @@
si_Count
};
+#define MAX_RESPONSE_SIZE 1024
+
extern const char *VERSION;
class cMenuEditIpItem: public cMenuEditItem {
diff -NaurwB streamdev-unpatched/server/connectionVTP.c streamdev/server/connectionVTP.c
--- streamdev-unpatched/server/connectionVTP.c 2009-10-13 08:38:47.000000000 +0200
+++ streamdev/server/connectionVTP.c 2009-11-23 14:23:33.000000000 +0100
@@ -1714,3 +1714,69 @@
Code < 0 ? -Code : Code,
Code < 0 ? '-' : ' ', *str);
}
+
+void cConnectionVTP::TimerChange(const cTimer *Timer, eTimerChange Change)
+{
+ if (m_DataSocket) {
+ char buf[MAX_RESPONSE_SIZE];
+ if (Change == tcMod) {
+ snprintf(buf, MAX_RESPONSE_SIZE, "MODT %s\0", Timer ? *Timer->ToText(true) : "-");
+ }
+ if (Change == tcAdd) {
+ snprintf(buf, MAX_RESPONSE_SIZE, "ADDT %s\0", Timer ? *Timer->ToText(true) : "-");
+ }
+ if (Change == tcDel) {
+ snprintf(buf, MAX_RESPONSE_SIZE, "DELT %s\0", Timer ? *Timer->ToText(true) : "-");
+ }
+
+ m_DataSocket->SysWrite(buf, strlen(buf));
+ }
+}
+
+#ifdef USE_STATUS_EXTENSION
+void cConnectionVTP::OsdStatusMessage(eMessageType type, const char *Message)
+#else
+void cConnectionVTP::OsdStatusMessage(const char *Message)
+#endif
+{
+ if (m_DataSocket && Message) {
+ char buf[MAX_RESPONSE_SIZE];
+
+ /* Ignore this messages */
+ if (strcasecmp(Message, trVDR("Channel not available!")) == 0) return;
+ else if (strcasecmp(Message, trVDR("Delete timer?")) == 0) return;
+ else if (strcasecmp(Message, trVDR("Delete recording?")) == 0) return;
+ else if (strcasecmp(Message, trVDR("Press any key to cancel shutdown")) == 0) return;
+ else if (strcasecmp(Message, trVDR("Press any key to cancel restart")) == 0) return;
+ else if (strcasecmp(Message, trVDR("Editing - shut down anyway?")) == 0) return;
+ else if (strcasecmp(Message, trVDR("Recording - shut down anyway?")) == 0) return;
+ else if (strcasecmp(Message, trVDR("shut down anyway?")) == 0) return;
+ else if (strcasecmp(Message, trVDR("Recording - restart anyway?")) == 0) return;
+ else if (strcasecmp(Message, trVDR("Editing - restart anyway?")) == 0) return;
+ else if (strcasecmp(Message, trVDR("Delete channel?")) == 0) return;
+ else if (strcasecmp(Message, trVDR("Timer still recording - really delete?")) == 0) return;
+ else if (strcasecmp(Message, trVDR("Delete marks information?")) == 0) return;
+ else if (strcasecmp(Message, trVDR("Delete resume information?")) == 0) return;
+ else if (strcasecmp(Message, trVDR("CAM is in use - really reset?")) == 0) return;
+ else if (strcasecmp(Message, trVDR("Really restart?")) == 0) return;
+ else if (strcasecmp(Message, trVDR("Stop recording?")) == 0) return;
+ else if (strcasecmp(Message, trVDR("Cancel editing?")) == 0) return;
+ else if (strcasecmp(Message, trVDR("Cutter already running - Add to cutting queue?")) == 0) return;
+ else if (strcasecmp(Message, trVDR("No index-file found. Creating may take minutes. Create one?")) == 0) return;
+
+#ifdef USE_STATUS_EXTENSION
+ if (type == mtStatus)
+ snprintf(buf, MAX_RESPONSE_SIZE, "SMSG %s\0", Message);
+ else if (type == mtInfo)
+ snprintf(buf, MAX_RESPONSE_SIZE, "IMSG %s\0", Message);
+ else if (type == mtWarning)
+ snprintf(buf, MAX_RESPONSE_SIZE, "WMSG %s\0", Message);
+ else if (type == mtError)
+ snprintf(buf, MAX_RESPONSE_SIZE, "EMSG %s\0", Message);
+ else
+#endif
+ snprintf(buf, MAX_RESPONSE_SIZE, "IMSG %s\0", Message);
+
+ m_DataSocket->SysWrite(buf, strlen(buf));
+ }
+}
diff -NaurwB streamdev-unpatched/server/connectionVTP.h streamdev/server/connectionVTP.h
--- streamdev-unpatched/server/connectionVTP.h 2009-07-01 12:46:16.000000000 +0200
+++ streamdev/server/connectionVTP.h 2009-11-23 14:23:33.000000000 +0100
@@ -1,6 +1,7 @@
#ifndef VDR_STREAMDEV_SERVERS_CONNECTIONVTP_H
#define VDR_STREAMDEV_SERVERS_CONNECTIONVTP_H
+#include <vdr/status.h>
#include "server/connection.h"
#include "server/recplayer.h"
@@ -12,7 +13,8 @@
class cLSTTHandler;
class cLSTRHandler;
-class cConnectionVTP: public cServerConnection {
+class cConnectionVTP: public cServerConnection
+ , public cStatus {
friend class cLSTEHandler;
#if !defined __GNUC__ || __GNUC__ >= 3
using cServerConnection::Respond;
@@ -41,6 +43,13 @@
template<class cHandler>
bool CmdLSTX(cHandler *&Handler, char *Option);
+ virtual void TimerChange(const cTimer *Timer, eTimerChange Change);
+#ifdef USE_STATUS_EXTENSION
+ virtual void OsdStatusMessage(eMessageType type, const char *Message);
+#else
+ virtual void OsdStatusMessage(const char *Message);
+#endif
+
public:
cConnectionVTP(void);
virtual ~cConnectionVTP();

View File

@ -1,210 +0,0 @@
diff -NaurwB streamdev-unpatched/server/connectionVTP.c streamdev/server/connectionVTP.c
--- streamdev-unpatched/server/connectionVTP.c 2009-10-13 08:38:47.000000000 +0200
+++ streamdev/server/connectionVTP.c 2009-11-22 20:04:07.000000000 +0100
@@ -7,6 +7,8 @@
#include "server/suspend.h"
#include "setup.h"
+#include "../services/femonservice.h"
+
#include <vdr/tools.h>
#include <vdr/videodir.h>
#include <vdr/menu.h>
@@ -710,6 +712,102 @@
return false;
}
+
+// --- cLSTQHandler -----------------------------------------------------------
+
+class cLSTQHandler
+{
+private:
+ enum eStates { Device, Status, Signal, SNR, BER, UNC, Video,
+ Audio, Dolby, EndQuality };
+ cConnectionVTP *m_Client;
+ FemonService_v1_0 m_femon;
+ int m_Errno;
+ int m_Channel;
+ cString m_Error;
+ eStates m_State;
+public:
+ cLSTQHandler(cConnectionVTP *Client, const char *Option);
+ ~cLSTQHandler();
+ bool Next(bool &Last);
+};
+
+cLSTQHandler::cLSTQHandler(cConnectionVTP *Client, const char *Option):
+ m_Client(Client),
+ m_Errno(0),
+ m_State(Device),
+ m_Channel(-1)
+{
+// if (*Option) {
+// if (isnumber(Option)) {
+// m_Channel = atoi(Option);
+// }
+// }
+
+ cPlugin *p;
+ p = cPluginManager::CallFirstService("FemonService-v1.0", &m_femon);
+ if (!p) {
+ m_Errno = 550;
+ m_Error = cString::sprintf("No support for Signal Quality found");
+ }
+}
+
+cLSTQHandler::~cLSTQHandler()
+{
+}
+
+bool cLSTQHandler::Next(bool &Last)
+{
+ if (*m_Error != NULL) {
+ Last = true;
+ cString str(m_Error);
+ m_Error = NULL;
+ return m_Client->Respond(m_Errno, "%s", *str);
+ }
+
+ Last = false;
+ switch (m_State) {
+ case Device:
+ m_State = Status;
+ if (*m_femon.fe_name != NULL)
+ return m_Client->Respond(-215, "Device : %s", *m_femon.fe_name);
+ else
+ return m_Client->Respond(-215, "Device : ");
+ case Status:
+ m_State = Signal;
+ if (*m_femon.fe_status != NULL)
+ return m_Client->Respond(-215, "Status : %s", *m_femon.fe_status);
+ else
+ return m_Client->Respond(-215, "Status : ");
+ case Signal:
+ m_State = SNR;
+ return m_Client->Respond(-215, "Signal : %04X (%2d%%)", m_femon.fe_signal, m_femon.fe_signal / 655);
+ case SNR:
+ m_State = BER;
+ return m_Client->Respond(-215, "SNR : %04X (%2d%%)", m_femon.fe_snr, m_femon.fe_snr / 655);
+ case BER:
+ m_State = UNC;
+ return m_Client->Respond(-215, "BER : %08X", m_femon.fe_ber);
+ case UNC:
+ m_State = Video;
+ return m_Client->Respond(-215, "UNC : %08X", m_femon.fe_unc);
+ case Video:
+ m_State = Audio;
+ return m_Client->Respond(-215, "Video : %.2f Mbit/s", m_femon.video_bitrate);
+ case Audio:
+ m_State = Dolby;
+ return m_Client->Respond(-215, "Audio : %.0f kbit/s", m_femon.audio_bitrate);
+ case Dolby:
+ m_State = EndQuality;
+ return m_Client->Respond(-215, "Dolby : %.0f kbit/s", m_femon.dolby_bitrate);
+ case EndQuality:
+ Last = true;
+ return m_Client->Respond(215, "End of quality information");
+ }
+ return false;
+}
+
+
// --- cConnectionVTP ---------------------------------------------------------
cConnectionVTP::cConnectionVTP(void):
@@ -727,7 +825,8 @@
m_LSTEHandler(NULL),
m_LSTCHandler(NULL),
m_LSTTHandler(NULL),
- m_LSTRHandler(NULL)
+ m_LSTRHandler(NULL),
+ m_LSTQHandler(NULL)
{
}
@@ -745,6 +844,7 @@
delete m_LSTCHandler;
delete m_LSTEHandler;
delete m_LSTRHandler;
+ delete m_LSTQHandler;
delete m_RecPlayer;
}
@@ -801,6 +901,7 @@
else if (strcasecmp(Cmd, "LSTR") == 0) return CmdLSTR(param);
else if (strcasecmp(Cmd, "LSTT") == 0) return CmdLSTT(param);
else if (strcasecmp(Cmd, "LSTC") == 0) return CmdLSTC(param);
+ else if (strcasecmp(Cmd, "LSTQ") == 0) return CmdLSTQ(param);
if (param == NULL) {
esyslog("ERROR: streamdev: this seriously shouldn't happen at %s:%d",
@@ -1268,6 +1369,11 @@
return CmdLSTX(m_LSTRHandler, Option);
}
+bool cConnectionVTP::CmdLSTQ(char *Option)
+{
+ return CmdLSTX(m_LSTQHandler, Option);
+}
+
// Functions adopted from SVDRP
#define INIT_WRAPPER() bool _res
#define Reply(c,m...) _res = Respond(c,m)
diff -NaurwB streamdev-unpatched/server/connectionVTP.h streamdev/server/connectionVTP.h
--- streamdev-unpatched/server/connectionVTP.h 2009-07-01 12:46:16.000000000 +0200
+++ streamdev/server/connectionVTP.h 2009-11-22 16:08:51.000000000 +0100
@@ -11,6 +11,7 @@
class cLSTCHandler;
class cLSTTHandler;
class cLSTRHandler;
+class cLSTQHandler;
class cConnectionVTP: public cServerConnection {
friend class cLSTEHandler;
@@ -36,6 +37,7 @@
cLSTCHandler *m_LSTCHandler;
cLSTTHandler *m_LSTTHandler;
cLSTRHandler *m_LSTRHandler;
+ cLSTQHandler *m_LSTQHandler;
protected:
template<class cHandler>
@@ -72,6 +74,7 @@
bool CmdLSTC(char *Opts);
bool CmdLSTT(char *Opts);
bool CmdLSTR(char *Opts);
+ bool CmdLSTQ(char *Opts);
// Commands adopted from SVDRP
bool CmdSTAT(const char *Option);
diff -NaurwB streamdev-unpatched/services/femonservice.h streamdev/services/femonservice.h
--- streamdev-unpatched/services/femonservice.h 1970-01-01 01:00:00.000000000 +0100
+++ streamdev/services/femonservice.h 2009-10-01 03:20:00.000000000 +0200
@@ -0,0 +1,26 @@
+/*
+ * Frontend Status Monitor plugin for the Video Disk Recorder
+ *
+ * See the README file for copyright information and how to reach the author.
+ *
+ */
+
+#ifndef __FEMONSERVICE_H
+#define __FEMONSERVICE_H
+
+#include <linux/dvb/frontend.h>
+
+struct FemonService_v1_0 {
+ cString fe_name;
+ cString fe_status;
+ uint16_t fe_snr;
+ uint16_t fe_signal;
+ uint32_t fe_ber;
+ uint32_t fe_unc;
+ double video_bitrate;
+ double audio_bitrate;
+ double dolby_bitrate;
+ };
+
+#endif //__FEMONSERVICE_H
+

View File

@ -1,2 +0,0 @@
http://poc.ginf.hu/vdr-streamdev-20100124.tar.bz2

View File

@ -1,43 +0,0 @@
#!/bin/sh
. config/options
$SCRIPTS/build toolchain
$SCRIPTS/unpack linux
$SCRIPTS/build jpeg
$SCRIPTS/build freetype
$SCRIPTS/build fontconfig
$SCRIPTS/build libiconv
$SCRIPTS/build gettext
ACTIVE_EXTENSIONS="liemikuutio dolbyinrec gotox"
for plugin in $VDR_PLUGINS; do
VDR_EXTENSIONS=
if [ -r $PACKAGES/vdr-$plugin/config/vdr ]; then
. $PACKAGES/vdr-$plugin/config/vdr
ACTIVE_EXTENSIONS="$ACTIVE_EXTENSIONS $VDR_EXTENSIONS"
fi
done
cd $BUILD/$1*
cat > Make.config <<EOF
PLUGINLIBDIR=/usr/lib/vdr
VIDEODIR=/storage/Videos
CONFDIR=/storage/.config/vdr
LOCDIR=/usr/share/locale
INCLUDES += -I`ls -d ../freetype-*/include`
LIBS += -liconv -lintl
EOF
for ext in $ACTIVE_EXTENSIONS; do
EXTNAME=`echo $ext | tr a-z A-Z`
echo "$EXTNAME=1" >> Make.config
VDR_DEFINES="$VDR_DEFINES -DUSE_$EXTNAME"
done
[ -n "$VDR_DEFINES" ] && echo "DEFINES += $VDR_DEFINES" >> Make.config
make
# to build extra plugins
make include-dir

View File

@ -1,65 +0,0 @@
m1;Digi:362:M256:C:6900:151=2:160=hun:170:0:5:1:7:0
m1 HD;Magyar Televízió:378000:M256:C:6900:1001=27:1002=hun;1004=hun:1003:0:300:1:9:0
m2;m2:370:M256:C:6900:100=2:101=eng:8040:0:6:1:2:0
m2 HD;Magyar Televizio:402000:M256:C:6900:1100=27:1101=hun;1102=hun:111:0:301:1:5:0
RTL Klub;Digi:370:M256:C:6900:8102=2:6021=hun:5020:0:15:1:2:0
TV 2;Digi:370:M256:C:6900:8104=2:6041=hun,6043=hun:5040:0:20:1:2:0
DunaTV;AH-EDP:370:M256:C:6900:96=2:97=hun:98:0:30:1:2:0
DunaTV HD;Duna Televizio:410000:M256:C:6900:2001=27:2002=hun:2013:0:302:1:8:0
Duna II autonómia;Duna Televizio:378:M256:C:6900:80=2:81=hun:82:0:200:1:9:0
Viasat3:402:M256:C:6900:1931=2:1932:1936:0:10:1:5:0
4! storytv;Telespazio Hungary:370:M256:C:6900:1792=2:1793=hun:1796:0:50:1:2:0
Cool;UPC Direct:362:M256:C:6900:451=2:460=hun:0:0:60:1:7:0
Film+;UPC Direct:362:M256:C:6900:751=2:760=hun:0:0:65:1:7:0
HBO 2;RCS:378:M256:C:6900:593=2:826=hun,3005=cze:0:68:2:1:9:0
AXN;Eutelsat:386:M256:C:6900:510=2:501=hun:0:0:55:1:3:0
Hallmark:386:M256:C:6900:1260=2:1220:0:0:70:1:3:0
Movies 24:386:M256:C:6900:1110=2:1100:0:0:75:1:3:0
TV Paprika;UPC Direct:370:M256:C:6900:351=2:360=hun,361=cze:370:1:90:1:2:0
National Geographic;UPC Direct:354:M256:C:6900:351=2:360=hun,362=eng:0:0:165:1:6:0
Nat Geo Wild;DMC:386:M256:C:6900:3201=2:3220=hun:0:1:170:1:3:0
Discovery Channel:386:M256:C:6900:34=2:1120:0:0:135:1:3:0
Viasat History;viasat:354:M256:C:6900:6491=2:6494=hun,6495=eng:0:0:190:1:6:0
Viasat Explorer:362:M256:C:6900:6051=2:6052=hun,6056=rus:0:0:185:1:7:0
Animal Planet:386:M256:C:6900:1160=2:1123:0:0:160:1:3:0
Investigation Discovery:410:M256:C:6900:1360=2:1319=hun:0:0:155:1:8:0
Spektrum:410:M256:C:6900:610=2:600=hun:628:0:175:1:8:0
Eurosport;Eutelsat:354:M256:C:6900:2577=2:2584=hun:2578:1:205:1:6:0
Eurosport 2;EUROSPORT:354:M256:C:6900:1001=2:1102=hun:0:1:210:1:6:0
Sport1;Digi:386:M256:C:6900:8106=2:6061=hun,6063=ROX:5060:0:215:1:3:0
Sport2;Digi:386:M256:C:6900:8103=2:6031=hun,6032=JUV:8040:0:220:1:3:0
DigiSport;Digi:402:M256:C:6900:8091=2:6091=hun:8040:0:25:1:5:0
DigiSport HD;Digi:402000:M256:C:6900:3211=27:3212=hun:0:0:26:1:5:0
H!T Music Channel;DIGI_hu:354:M256:C:6900:650=2:662=hun:0:0:115:1:6:0
Music Channel;DIGI_hu:354:M256:C:6900:200=2:212=eng:0:0:120:1:6:0
MusicMix/SuperOne;IMC:402:M256:C:6900:308+8190=2:256=eng:0:0:125:1:5:0
Nóta TV;IMC:410:M256:C:6900:4131+4387=2:4129=eng:0:0:110:1:8:0
Cartoon Network/TCM;UPC Direct:354:M256:C:6900:101=2:110=hun:120:0:95:1:6:0
Minimax;Telespazio Hungary:362:M256:C:6900:8176=2:8177=hun:772:100,929:105:1:7:0
Disney Channel;UPC Direct:410:M256:C:6900:301=2:310=hun:0:0:100:1:8:0
Zone Romantica;Arqiva:354:M256:C:6900:133=2:135=hun:0:0:80:1:6:0
Magyar ATV:362:M256:C:6900:100=2:101:110:1:35:1:7:0
Echo TV;UPC Direct:410:M256:C:6900:101=2:110=hun:0:0:45:1:8:0
­r TV;hírTV:362:M256:C:6900:200=2:201:210:1:40:1:7:0
RTL;RTL World:362:M256:C:6900:163=2:104=deu:105:0:230:1:7:0
3sat;ZDFvision:410:M256:C:6900:210=2:220=deu:230:0:245:1:8:0
VOX;RTL World:354:M256:C:6900:167=2:136=deu:71:0:235:1:6:0
Pro7;ProSiebenSat.1:354:M256:C:6900:511=2:512=deu:52:0:240:1:6:0
Rai Uno;CANALSATELLITE:354:M256:C:6900:289=2:290=ita:291:0:250:1:6:0
TV5;CANALSATELLITE:410:M256:C:6900:164=2:112=fra:60:0:255:1:8:0
TVE;CANALSATELLITE:410:M256:C:6900:58=2:59:0:0:260:1:8:0
Sky News;SES ASTRA:410:M256:C:6900:1290+6290=2:2290=eng:5290:0:265:1:8:0
HBO;RCS:378:M256:C:6900:596=2:829=hun:0:1:1:1:9:0
HBO Comedy;RCS:378:M256:C:6900:4044=2:1893=hun,4045=rom,5000=cze:0:10:3:1:9:0
Cinemax;RCS:378:M256:C:6900:523=2:673=hun,789=eng,3004=cze:0:1801,1802,1880:4:1:9:0
MR1-Kossuth;AH-EDP:370:M256:C:6900:0:99=hun:0:0:7211:1:2:0
MR2-Petofi;AH-EDP:370:M256:C:6900:0:32=hun:0:0:7212:1:2:0
MR4/MR5;AH-EDP:370:M256:C:6900:0:33=hun:0:0:7219:1:2:0
MR3 Bartok;Magyar Radio:370:M256:C:6900:0:901=hun:0:0:15531:1:2:0
Zone Reality;DMC:394000:M256:C:6900:2301=2:2310=hun:0:0:85:1:4:0
PV TV;RCS:394000:M256:C:6900:4004=2:787=rom,999=eng,2008=bul,7000=hun:0:0:130:1:4:0
Discovery Science:394000:M256:C:6900:1960=2:1921:0:0:140:1:4:0
Discovery Travel & Living:394000:M256:C:6900:1860=2:1821:0:0:145:1:4:0
Discovery World:394000:M256:C:6900:1060=2:1021:0:0:150:1:4:0
Travel Channel;Arqiva:394000:M256:C:6900:2001=2:2002=hun+cze:0:0:180:1:4:0
SportKlub;Digi:394000:M256:C:6900:8000=2:8001=sve:8040:0:225:1:4:0

View File

@ -1,73 +0,0 @@
# DiSEqC configuration for VDR
#
# Format:
#
# satellite slof polarization lof command...
#
# satellite: one of the 'S' codes defined in sources.conf
# slof: switch frequency of LNB; the first entry with
# an slof greater than the actual transponder
# frequency will be used
# polarization: V = vertical, H = horizontal, L = Left circular, R = Right circular
# lof: the local oscillator frequency to subtract from
# the actual transponder frequency
# command:
# t tone off
# T tone on
# v voltage low (13V)
# V voltage high (18V)
# A mini A
# B mini B
# Wnn wait nn milliseconds (nn may be any positive integer number)
# [xx ...] hex code sequence (max. 6)
#
# The 'command...' part is optional.
#
# Examples:
# Full DiSEqC sequence:
S19.2E 11700 V 9750 t v W15 [E0 10 38 F0] W15 A W15 t
S19.2E 99999 V 10600 t v W15 [E0 10 38 F1] W15 A W15 T
S19.2E 11700 H 9750 t V W15 [E0 10 38 F2] W15 A W15 t
S19.2E 99999 H 10600 t V W15 [E0 10 38 F3] W15 A W15 T
S13.0E 11700 V 9750 t v W15 [E0 10 38 F4] W15 B W15 t
S13.0E 99999 V 10600 t v W15 [E0 10 38 F5] W15 B W15 T
S13.0E 11700 H 9750 t V W15 [E0 10 38 F6] W15 B W15 t
S13.0E 99999 H 10600 t V W15 [E0 10 38 F7] W15 B W15 T
# Optimized for mini DiSEqC (aka toneburst):
#
# S19.2E 11700 V 9750 t v W15 A W15 t
# S19.2E 99999 V 10600 t v W15 A W15 T
# S19.2E 11700 H 9750 t V W15 A W15 t
# S19.2E 99999 H 10600 t V W15 A W15 T
#
# S13.0E 11700 V 9750 t v W15 B W15 t
# S13.0E 99999 V 10600 t v W15 B W15 T
# S13.0E 11700 H 9750 t V W15 B W15 t
# S13.0E 99999 H 10600 t V W15 B W15 T
#
# Optimized for full DiSEqC:
#
# S19.2E 11700 V 9750 [E0 10 38 F0]
# S19.2E 99999 V 10600 [E0 10 38 F1]
# S19.2E 11700 H 9750 [E0 10 38 F2]
# S19.2E 99999 H 10600 [E0 10 38 F3]
#
# S13.0E 11700 V 9750 [E0 10 38 F4]
# S13.0E 99999 V 10600 [E0 10 38 F5]
# S13.0E 11700 H 9750 [E0 10 38 F6]
# S13.0E 99999 H 10600 [E0 10 38 F7]
#
# DisiCon-4 Single Cable Network:
#
# horizontal: 11.704 - 12.205 GHz (1. IF: 1144 - 1645 MHz) - LOF 1 (10,56 GHz)
# horizontal: 12.676 - 12.709 GHz (1. IF: 2116 - 2148 MHz) - LOF 1 (10,56 GHz)
# vertical: 12.035 - 12.107 GHz (1. IF: 955 - 1027 MHz) - LOF 3 (11,08 GHz)
# vertical: 12.464 - 12.716 GHz (1. IF: 1744 - 1996 MHz) - LOF 2 (10,72 GHz)
#
# S19.2E 99999 H 10560 t v
# S19.2E 12110 V 11080 t v
# S19.2E 99999 V 10720 t v

View File

@ -1,13 +0,0 @@
# Remote control key macros for VDR
#
# Format:
#
# macrokey key1 key2 key3...
# macrokey @plugin key1 key2 key3...
#
# See man vdr(5)
Red Recordings
Green Schedule
Yellow Info
Blue Timers

View File

@ -1,13 +0,0 @@
#
# svdrphosts This file describes a number of host addresses that
# are allowed to connect to the SVDRP port of the Video
# Disk Recorder (VDR) running on this system.
# Syntax:
#
# IP-Address[/Netmask]
#
127.0.0.1 # always accept localhost
#192.168.100.0/24 # any host on the local net
#204.152.189.113 # a specific host
#0.0.0.0/0 # any host on any net (USE THIS WITH CARE!)

View File

@ -1,12 +0,0 @@
# Enable wakeup support (no/nvram/acpi)
WAKEUP="no"
# Mainboard type (only for nvram); keep empty for autodetection. See the file
# nvram-wakeup-boards.txt in the DOCS directory of the GeeXboX sources
# for a list of the allowed values.
BOARD_TYPE=
# Wakeup the system in regular intervals
REGULAR_DAYS=0 # 0=disabled, 1=each day, 2=each 2'nd day, 3=...
REGULAR_TIME=01:00 # HH:MM

View File

@ -1,27 +0,0 @@
#!/bin/sh
#
# configure and launch VDR
#
# runlevels: openelec, debug
(
echo "### Starting VDR ###"
PLUGINS=""
for file in /storage/.config/vdr/plugins.d/*; do
# plugins are enabled by default
PLUGIN=""
OPTIONS=""
INITCMD=""
ENABLED=yes
. $file
[ "$ENABLED" = yes ] && PLUGINS="$PLUGINS -P'$PLUGIN $OPTIONS'"
[ -n "$INITCMD" ] && eval $INITCMD
done
VDRCMD="vdr -g /tmp -s /usr/bin/vdrshutdown --vfat --no-kbd $PLUGINS > /tmp/vdr.out 2>&1"
# start VDR
runvdr "$VDRCMD"
)&

View File

@ -1,37 +0,0 @@
#!/bin/sh
. config/options
$SCRIPTS/install jpeg
$SCRIPTS/install freetype
$SCRIPTS/install libiconv
# $SCRIPTS/install nvram-wakeup
PKG_DIR=`find $PACKAGES -type d -name $1`
mkdir -p $INSTALL/usr/bin
cp $PKG_BUILD/vdr $INSTALL/usr/bin
cp $PKG_DIR/scripts/* $INSTALL/usr/bin
mkdir -p $INSTALL/usr/lib/vdr
for loc in $INCLUDED_LOCALES; do
LOCALE=`echo $loc|cut -f1 -d.`
if [ -d $PKG_BUILD/locale/$LOCALE ]; then
mkdir -p $INSTALL/usr/share/locale/$LOCALE
cp -a $PKG_BUILD/locale/$LOCALE/* $INSTALL/usr/share/locale/$LOCALE/
fi
done
# mkdir -p $INSTALL/etc
# cp $PACKAGES/$1/config/wakeup $INSTALL/etc
mkdir -p $INSTALL/usr/config/vdr
mkdir -p $INSTALL/usr/config/vdr/plugins
mkdir -p $INSTALL/usr/config/vdr/plugins.d
cp -a $PKG_DIR/config/*.conf $INSTALL/usr/config/vdr
[ "$SERVICES" = yes ] && echo '0.0.0.0/0' >> $INSTALL/usr/config/vdr/svdrphosts.conf
$SCRIPTS/install vdr-streamdev

View File

@ -1,402 +0,0 @@
diff -rupN vdr-1.7.11/config.c vdr-1.7.11.gotox_patched/config.c
--- vdr-1.7.11/config.c 2009-12-05 16:30:30.000000000 +0100
+++ vdr-1.7.11.gotox_patched/config.c 2010-01-06 23:57:02.650640016 +0100
@@ -231,6 +231,11 @@ cSetup::cSetup(void)
LnbFrequLo = 9750;
LnbFrequHi = 10600;
DiSEqC = 0;
+ UseGotox = 0;
+ GotoxSpeed = 100;
+ GotoxRepeat = 0;
+ GotoxSN = 0; GotoxLat = 613; GotoxEW = 1; GotoxLong = 236; // Somewhere at Tampere, Finland :^)
+ GotoxPrevSource = 0;
SetSystemTime = 0;
TimeSource = 0;
TimeTransponder = 0;
@@ -418,6 +423,14 @@ bool cSetup::Parse(const char *Name, con
else if (!strcasecmp(Name, "LnbFrequLo")) LnbFrequLo = atoi(Value);
else if (!strcasecmp(Name, "LnbFrequHi")) LnbFrequHi = atoi(Value);
else if (!strcasecmp(Name, "DiSEqC")) DiSEqC = atoi(Value);
+ else if (!strcasecmp(Name, "UseGotox")) UseGotox = atoi(Value);
+ else if (!strcasecmp(Name, "GotoxSpeed")) GotoxSpeed = atoi(Value);
+ else if (!strcasecmp(Name, "GotoxRepeat")) GotoxRepeat = atoi(Value);
+ else if (!strcasecmp(Name, "GotoxSN")) GotoxSN = atoi(Value);
+ else if (!strcasecmp(Name, "GotoxLat")) GotoxLat = atoi(Value);
+ else if (!strcasecmp(Name, "GotoxEW")) GotoxEW = atoi(Value);
+ else if (!strcasecmp(Name, "GotoxLong")) GotoxLong = atoi(Value);
+ else if (!strcasecmp(Name, "GotoxPrevSource")) GotoxPrevSource = atoi(Value);
else if (!strcasecmp(Name, "SetSystemTime")) SetSystemTime = atoi(Value);
else if (!strcasecmp(Name, "TimeSource")) TimeSource = cSource::FromString(Value);
else if (!strcasecmp(Name, "TimeTransponder")) TimeTransponder = atoi(Value);
@@ -510,6 +523,14 @@ bool cSetup::Save(void)
Store("LnbFrequLo", LnbFrequLo);
Store("LnbFrequHi", LnbFrequHi);
Store("DiSEqC", DiSEqC);
+ Store("UseGotox", UseGotox);
+ Store("GotoxSpeed", GotoxSpeed);
+ Store("GotoxRepeat", GotoxRepeat);
+ Store("GotoxSN", GotoxSN);
+ Store("GotoxLat", GotoxLat);
+ Store("GotoxEW", GotoxEW);
+ Store("GotoxLong", GotoxLong);
+ Store("GotoxPrevSource", GotoxPrevSource);
Store("SetSystemTime", SetSystemTime);
Store("TimeSource", cSource::ToString(TimeSource));
Store("TimeTransponder", TimeTransponder);
diff -rupN vdr-1.7.11/config.h vdr-1.7.11.gotox_patched/config.h
--- vdr-1.7.11/config.h 2009-11-22 20:55:04.000000000 +0100
+++ vdr-1.7.11.gotox_patched/config.h 2010-01-06 23:57:02.650640016 +0100
@@ -215,6 +215,14 @@ public:
int LnbFrequLo;
int LnbFrequHi;
int DiSEqC;
+ int GotoxRepeat;
+ int GotoxSN;
+ int GotoxEW;
+ int GotoxSpeed;
+ int GotoxLat;
+ int GotoxLong;
+ int UseGotox;
+ int GotoxPrevSource;
int SetSystemTime;
int TimeSource;
int TimeTransponder;
diff -rupN vdr-1.7.11/diseqc.c vdr-1.7.11.gotox_patched/diseqc.c
--- vdr-1.7.11/diseqc.c 2009-12-05 16:57:02.000000000 +0100
+++ vdr-1.7.11.gotox_patched/diseqc.c 2010-01-06 23:57:02.650640016 +0100
@@ -114,6 +114,7 @@ cDiseqc::eDiseqcActions cDiseqc::Execute
case 'V': return daVoltage18;
case 'A': return daMiniA;
case 'B': return daMiniB;
+ case 'G': return daGotoX;
case 'W': *CurrentAction = Wait(*CurrentAction); break;
case '[': *CurrentAction = Codes(*CurrentAction); return *CurrentAction ? daCodes : daNone;
default: return daNone;
diff -rupN vdr-1.7.11/diseqc.h vdr-1.7.11.gotox_patched/diseqc.h
--- vdr-1.7.11/diseqc.h 2002-12-07 14:54:02.000000000 +0100
+++ vdr-1.7.11.gotox_patched/diseqc.h 2010-01-06 23:57:02.650640016 +0100
@@ -22,6 +22,7 @@ public:
daVoltage18,
daMiniA,
daMiniB,
+ daGotoX,
daCodes,
};
enum { MaxDiseqcCodes = 6 };
diff -rupN vdr-1.7.11/dvbdevice.c vdr-1.7.11.gotox_patched/dvbdevice.c
--- vdr-1.7.11/dvbdevice.c 2010-01-04 15:06:24.000000000 +0100
+++ vdr-1.7.11.gotox_patched/dvbdevice.c 2010-01-06 23:57:39.170642833 +0100
@@ -14,9 +14,11 @@
#include <linux/dvb/frontend.h>
#include <sys/ioctl.h>
#include <sys/mman.h>
+#include <math.h>
#include "channels.h"
#include "diseqc.h"
#include "dvbci.h"
+#include "skins.h"
#define DVBS_TUNE_TIMEOUT 9000 //ms
#define DVBS_LOCK_TIMEOUT 2000 //ms
@@ -149,6 +151,95 @@ static unsigned int FrequencyToHz(unsign
return f;
}
+void HandleGotox(int fd_frontend, int new_source)
+{
+
+ int gotoXTable[10] = { 0x00, 0x02, 0x03, 0x05, 0x06, 0x08, 0x0A, 0x0B, 0x0D, 0x0E };
+ int satlong;
+ int satprev;
+ float waitseconds = 0;
+
+ if (Setup.UseGotox == 0)
+ return;
+
+ // Check if zapped into new source position?
+ if (new_source != Setup.GotoxPrevSource) {
+ satlong = (new_source & ~0xC800);
+ satprev = (Setup.GotoxPrevSource & ~0xC800);
+ if ((new_source & 0xC000) != 0x8000)
+ return; // Fail
+ if (new_source & 0x0800)
+ satlong = satlong * (-1);
+ if (Setup.GotoxPrevSource & 0x0800)
+ satprev = satprev * (-1);
+ if (Setup.GotoxSpeed > 0) {
+ waitseconds = fabs(satlong-satprev)/(float)(Setup.GotoxSpeed);
+ if (waitseconds < 0.0) waitseconds = 0.0; // Should not happen but ...
+ if (waitseconds > 60.0) waitseconds = 60.0; // Limit wait time to 60s
+ }
+ int Long=Setup.GotoxEW ? -Setup.GotoxLong : Setup.GotoxLong;
+ int Lat=Setup.GotoxSN ? -Setup.GotoxLat : Setup.GotoxLat;
+ double azimuth=M_PI+atan(tan((satlong-Long)*M_PI/1800)/sin(Lat*M_PI/1800));
+ double x=acos(cos((satlong-Long)*M_PI/1800)*cos(Lat*M_PI/1800));
+ double elevation=atan((cos(x)-0.1513)/sin(x));
+ double SatHourangle=180+atan((-cos(elevation)*sin(azimuth))/(sin(elevation)*cos(Lat*M_PI/1800)
+ -cos(elevation)*sin(Lat*M_PI/1800)*cos(azimuth)))*180/M_PI;
+ int tmp=(int)(fabs(180-SatHourangle)*10);
+ tmp=(tmp/10)*0x10 + gotoXTable[ tmp % 10 ];
+ int p2=(tmp%0x0100);
+ int p1=(tmp/0x0100);
+ if (SatHourangle < 180)
+ p1 |= 0xe0;
+ else
+ p1 |= 0xd0;
+
+ dsyslog("DiSEqC GotoX %d (%d) -> %d (%d), wait time %4.1fs",
+ satprev, Setup.GotoxPrevSource, satlong, new_source, waitseconds);
+
+#if 1
+ // Set high LNB voltage and tone off, then wait > 15ms
+ CHECK(ioctl(fd_frontend, FE_SET_VOLTAGE, SEC_VOLTAGE_18));
+ CHECK(ioctl(fd_frontend, FE_SET_TONE, SEC_TONE_OFF));
+ usleep(20000);
+
+ // Send 1st GotoX command, then wait > 15ms
+ uchar gotox_bytes[5] = { 0xe0, 0x31, 0x6e, p1, p2};
+ struct dvb_diseqc_master_cmd gotox_cmd;
+ memcpy(gotox_cmd.msg, gotox_bytes, 5);
+ gotox_cmd.msg_len = 5;
+ CHECK(ioctl(fd_frontend, FE_DISEQC_SEND_MASTER_CMD, &gotox_cmd));
+ usleep(20000);
+
+ // Send repeated GotoX command, then wait > 15ms
+ if (Setup.GotoxRepeat) {
+ gotox_bytes[0] = 0xe1;
+ memcpy(gotox_cmd.msg, gotox_bytes, 5);
+ CHECK(ioctl(fd_frontend, FE_DISEQC_SEND_MASTER_CMD, &gotox_cmd));
+ usleep(20000);
+ }
+
+ {
+ char mess_move[60];
+ snprintf(mess_move,sizeof(mess_move),"Moving dish to %d.%d%s - %ds", \
+ (new_source & 0x0800)?-satlong/10:satlong/10, \
+ (new_source & 0x0800)?-satlong%10:satlong%10, \
+ (new_source & 0x0800)?"E":"W", (int)waitseconds);
+ // Wait for dish movement and display message approx. for that time
+ Skins.QueueMessage(mtWarning, mess_move, int(1 + waitseconds - Setup.ChannelInfoTime), 0);
+ while (waitseconds > 0.0) {
+ usleep(100000); // 100ms
+ waitseconds = waitseconds - 100e-3;
+ }
+ }
+
+#endif
+
+ Setup.GotoxPrevSource = new_source;
+ dsyslog("DiSEqC GotoX done.");
+ }
+}
+
+
bool cDvbTuner::SetFrontend(void)
{
#define MAXFRONTENDCMDS 16
@@ -187,6 +278,7 @@ bool cDvbTuner::SetFrontend(void)
case cDiseqc::daVoltage18: CHECK(ioctl(fd_frontend, FE_SET_VOLTAGE, SEC_VOLTAGE_18)); break;
case cDiseqc::daMiniA: CHECK(ioctl(fd_frontend, FE_DISEQC_SEND_BURST, SEC_MINI_A)); break;
case cDiseqc::daMiniB: CHECK(ioctl(fd_frontend, FE_DISEQC_SEND_BURST, SEC_MINI_B)); break;
+ case cDiseqc::daGotoX: HandleGotox(fd_frontend, channel.Source()); break;
case cDiseqc::daCodes: {
int n = 0;
uchar *codes = diseqc->Codes(n);
@@ -211,6 +303,10 @@ bool cDvbTuner::SetFrontend(void)
}
}
else {
+ // Send GotoX DiSEqC command if activated in vdr setup. Then wait with high LNB voltage
+ // estimated time for dish movement
+ HandleGotox(fd_frontend, channel.Source());
+
int tone = SEC_TONE_OFF;
if (frequency < (unsigned int)Setup.LnbSLOF) {
frequency -= Setup.LnbFrequLo;
diff -rupN vdr-1.7.11/menu.c vdr-1.7.11.gotox_patched/menu.c
--- vdr-1.7.11/menu.c 2009-12-06 12:29:05.000000000 +0100
+++ vdr-1.7.11.gotox_patched/menu.c 2010-01-06 23:57:02.662652058 +0100
@@ -2541,8 +2541,14 @@ void cMenuSetupLNB::Setup(void)
Add(new cMenuEditIntItem( tr("Setup.LNB$SLOF (MHz)"), &data.LnbSLOF));
Add(new cMenuEditIntItem( tr("Setup.LNB$Low LNB frequency (MHz)"), &data.LnbFrequLo));
Add(new cMenuEditIntItem( tr("Setup.LNB$High LNB frequency (MHz)"), &data.LnbFrequHi));
- }
-
+ }
+ Add(new cMenuEditBoolItem(tr("Setup.LNB$Use GotoX dish positioning"), &data.UseGotox));
+ if (data.UseGotox) {
+ Add(new cMenuEditBoolItem(tr("Setup.LNB$Repeat GotoX commands"), &data.GotoxRepeat));
+ Add(new cMenuEditIntpItem(tr("Setup.LNB$Latitude"), &data.GotoxLat,0,900,&data.GotoxSN,tr("North"),tr("South")));
+ Add(new cMenuEditIntpItem(tr("Setup.LNB$Longitude"), &data.GotoxLong,0,1800,&data.GotoxEW,tr("West"),tr("East")));
+ Add(new cMenuEditIntdItem(tr("Setup.LNB$Rotor speed (deg/s)"), &data.GotoxSpeed, 1, 100));
+ }
SetCurrent(Get(current));
Display();
}
@@ -2550,10 +2556,15 @@ void cMenuSetupLNB::Setup(void)
eOSState cMenuSetupLNB::ProcessKey(eKeys Key)
{
int oldDiSEqC = data.DiSEqC;
+ int oldUseGotox = data.UseGotox;
eOSState state = cMenuSetupBase::ProcessKey(Key);
if (Key != kNone && data.DiSEqC != oldDiSEqC)
Setup();
+
+ if (Key != kNone && data.UseGotox != oldUseGotox)
+ Setup();
+
return state;
}
diff -rupN vdr-1.7.11/menuitems.c vdr-1.7.11.gotox_patched/menuitems.c
--- vdr-1.7.11/menuitems.c 2009-12-06 12:31:20.000000000 +0100
+++ vdr-1.7.11.gotox_patched/menuitems.c 2010-01-06 23:57:02.662652058 +0100
@@ -1106,3 +1106,121 @@ void cMenuSetupPage::SetupStore(const ch
if (plugin)
plugin->SetupStore(Name, Value);
}
+
+// cMenuEditIntpItem & cMenuEditIntdItem for GotoX function
+
+void cMenuEditIntpItem::Set(void)
+{
+ char buf[16];
+ snprintf(buf, sizeof(buf), "%d.%d %s", *value/10, *value % 10, *value2 ? trueString : falseString);
+ SetValue(buf);
+}
+
+void cMenuEditIntdItem::Set(void)
+{
+ char buf[16];
+ snprintf(buf, sizeof(buf), "%d.%d", *value/10, *value % 10);
+ SetValue(buf);
+}
+
+
+cMenuEditIntpItem::cMenuEditIntpItem(const char *Name, int *Value, int Min, int Max,int *Value2, const char *FalseString,const char *TrueString):cMenuEditIntItem(Name, Value, Min, Max)
+{
+ value = Value;
+ value2= Value2;
+ trueString = TrueString;
+ falseString = FalseString;
+ min = Min;
+ max = Max;
+ Set();
+}
+
+cMenuEditIntdItem::cMenuEditIntdItem(const char *Name, int *Value, int Min, int Max):cMenuEditIntItem(Name, Value, Min, Max)
+{
+ value = Value;
+ min = Min;
+ max = Max;
+ Set();
+}
+
+eOSState cMenuEditIntpItem::ProcessKey(eKeys Key)
+{
+ eOSState state = cMenuEditItem::ProcessKey(Key);
+ if (state == osUnknown)
+ {
+ int newValue = *value;
+ int newValue2= *value2;
+ Key = NORMALKEY(Key);
+ switch (Key) {
+ case kNone : break;
+ case k0...k9:
+ if (fresh)
+ {
+ *value = 0;
+ fresh = false;
+ }
+ newValue = *value * 10 + (Key - k0);
+ break;
+ case kLeft :
+ newValue2 = 0;
+ fresh = true;
+ break;
+ case kRight :
+ newValue2 = 1;
+ fresh = true;
+ break;
+ default :
+ if (*value < min) { *value = min; Set(); }
+ if (*value > max) { *value = max; Set(); }
+ return state;
+ }
+ if ((!fresh || min <= newValue) && newValue <= max)
+ {
+ *value = newValue;
+ *value2 = newValue2;
+ Set();
+ }
+ state = osContinue;
+ }
+ return state;
+}
+
+eOSState cMenuEditIntdItem::ProcessKey(eKeys Key)
+{
+ eOSState state = cMenuEditItem::ProcessKey(Key);
+ if (state == osUnknown)
+ {
+ int newValue = *value;
+ Key = NORMALKEY(Key);
+ switch (Key) {
+ case kNone : break;
+ case k0...k9:
+ if (fresh)
+ {
+ *value = 0;
+ fresh = false;
+ }
+ newValue = *value * 10 + (Key - k0);
+ break;
+ case kLeft :
+ newValue = *value - 1;
+ fresh = true;
+ break;
+ case kRight :
+ newValue = *value + 1;
+ fresh = true;
+ break;
+ default :
+ if (*value < min) { *value = min; Set(); }
+ if (*value > max) { *value = max; Set(); }
+ return state;
+ }
+ if ((!fresh || min <= newValue) && newValue <= max)
+ {
+ *value = newValue;
+ Set();
+ }
+ state = osContinue;
+ }
+ return state;
+}
diff -rupN vdr-1.7.11/menuitems.h vdr-1.7.11.gotox_patched/menuitems.h
--- vdr-1.7.11/menuitems.h 2009-05-03 14:50:34.000000000 +0200
+++ vdr-1.7.11.gotox_patched/menuitems.h 2010-01-06 23:57:02.666651684 +0100
@@ -199,4 +199,22 @@ public:
void SetPlugin(cPlugin *Plugin);
};
+class cMenuEditIntpItem : public cMenuEditIntItem {
+protected:
+ virtual void Set(void);
+ const char *falseString, *trueString;
+ int *value2;
+public:
+ cMenuEditIntpItem(const char *Name, int *Value, int Min = 0, int Max = INT_MAX, int *Value2=0, const char *FalseString = "", const char *TrueSting = NULL);
+ virtual eOSState ProcessKey(eKeys Key);
+};
+
+class cMenuEditIntdItem : public cMenuEditIntItem {
+protected:
+ virtual void Set(void);
+public:
+ cMenuEditIntdItem(const char *Name, int *Value, int Min = 0, int Max = INT_MAX);
+ virtual eOSState ProcessKey(eKeys Key);
+};
+
#endif //__MENUITEMS_H

View File

@ -1,54 +0,0 @@
diff -Naur vdr-1.7.5a/Makefile vdr-1.7.5b/Makefile
--- vdr-1.7.5a/Makefile 2009-04-14 13:46:01.000000000 +0200
+++ vdr-1.7.5b/Makefile 2009-04-14 13:51:40.000000000 +0200
@@ -20,7 +20,7 @@
MANDIR = $(PREFIX)/share/man
BINDIR = $(PREFIX)/bin
LOCDIR = ./locale
-LIBS = -ljpeg -lpthread -ldl -lcap -lrt -lfreetype -lfontconfig
+LIBS = -ljpeg -lpthread -ldl -lrt -lfreetype -lfontconfig
INCLUDES = -I/usr/include/freetype2
PLUGINDIR= ./PLUGINS
diff -Naur vdr-1.7.5a/vdr.c vdr-1.7.5b/vdr.c
--- vdr-1.7.5a/vdr.c 2009-04-14 13:45:27.000000000 +0200
+++ vdr-1.7.5b/vdr.c 2009-04-14 13:53:53.000000000 +0200
@@ -32,7 +32,6 @@
#include <pwd.h>
#include <signal.h>
#include <stdlib.h>
-#include <sys/capability.h>
#include <sys/prctl.h>
#include <termios.h>
#include <unistd.h>
@@ -114,28 +113,13 @@
static bool DropCaps(void)
{
- // drop all capabilities except selected ones
- cap_t caps = cap_from_text("= cap_sys_nice,cap_sys_time=ep");
- if (!caps) {
- fprintf(stderr, "vdr: cap_from_text failed: %s\n", strerror(errno));
- return false;
- }
- if (cap_set_proc(caps) == -1) {
- fprintf(stderr, "vdr: cap_set_proc failed: %s\n", strerror(errno));
- cap_free(caps);
- return false;
- }
- cap_free(caps);
+ // capabilites support removed
return true;
}
static bool SetKeepCaps(bool On)
{
- // set keeping capabilities during setuid() on/off
- if (prctl(PR_SET_KEEPCAPS, On ? 1 : 0, 0, 0, 0) != 0) {
- fprintf(stderr, "vdr: prctl failed\n");
- return false;
- }
+ // capabilites support removed
return true;
}

View File

@ -1,39 +0,0 @@
diff -Naur vdr-1.7.7/config.c vdr-1.7.7a/config.c
--- vdr-1.7.7/config.c 2009-05-17 14:38:41.000000000 +0200
+++ vdr-1.7.7a/config.c 2009-05-17 14:39:52.000000000 +0200
@@ -367,7 +367,7 @@
DelTimeshiftRec = 0;
#endif /* DELTIMESHIFTREC */
MinEventTimeout = 30;
- MinUserInactivity = 300;
+ MinUserInactivity = 0;
NextWakeupTime = 0;
MultiSpeedMode = 0;
ShowReplayMode = 0;
@@ -736,7 +736,6 @@
else if (!strcasecmp(Name, "DelTimeshiftRec")) DelTimeshiftRec = atoi(Value);
#endif /* DELTIMESHIFTREC */
else if (!strcasecmp(Name, "MinEventTimeout")) MinEventTimeout = atoi(Value);
- else if (!strcasecmp(Name, "MinUserInactivity")) MinUserInactivity = atoi(Value);
else if (!strcasecmp(Name, "NextWakeupTime")) NextWakeupTime = atoi(Value);
else if (!strcasecmp(Name, "MultiSpeedMode")) MultiSpeedMode = atoi(Value);
else if (!strcasecmp(Name, "ShowReplayMode")) ShowReplayMode = atoi(Value);
@@ -974,7 +973,6 @@
Store("DelTimeshiftRec", DelTimeshiftRec);
#endif /* DELTIMESHIFTREC */
Store("MinEventTimeout", MinEventTimeout);
- Store("MinUserInactivity", MinUserInactivity);
Store("NextWakeupTime", NextWakeupTime);
#ifdef USE_DDEPGENTRY
Store("DoubleEpgAction", DoubleEpgAction);
diff -Naur vdr-1.7.7/menu.c vdr-1.7.7a/menu.c
--- vdr-1.7.7/menu.c 2009-05-17 14:38:41.000000000 +0200
+++ vdr-1.7.7a/menu.c 2009-05-17 14:39:06.000000000 +0200
@@ -3831,7 +3831,6 @@
Clear();
#endif /* VOLCTRL */
Add(new cMenuEditIntItem( tr("Setup.Miscellaneous$Min. event timeout (min)"), &data.MinEventTimeout));
- Add(new cMenuEditIntItem( tr("Setup.Miscellaneous$Min. user inactivity (min)"), &data.MinUserInactivity));
Add(new cMenuEditIntItem( tr("Setup.Miscellaneous$SVDRP timeout (s)"), &data.SVDRPTimeout));
Add(new cMenuEditIntItem( tr("Setup.Miscellaneous$Zap timeout (s)"), &data.ZapTimeout));
Add(new cMenuEditIntItem( tr("Setup.Miscellaneous$Channel entry timeout (ms)"), &data.ChannelEntryTimeout, 0));

View File

@ -1,12 +0,0 @@
diff -Naur vdr-1.7.9/Makefile vdr-1.7.9a/Makefile
--- vdr-1.7.9/Makefile 2009-10-03 08:53:31.000000000 +0200
+++ vdr-1.7.9a/Makefile 2009-10-03 08:53:59.000000000 +0200
@@ -21,7 +21,7 @@
BINDIR = $(PREFIX)/bin
LOCDIR = ./locale
LIBS = -ljpeg -lpthread -ldl -lrt -lfreetype -lfontconfig
-INCLUDES = -I/usr/include/freetype2
+INCLUDES =
PLUGINDIR= ./PLUGINS
PLUGINLIBDIR= $(PLUGINDIR)/lib

View File

@ -1,46 +0,0 @@
diff -NaurwB vdr-1.7.7/epg.c vdr-1.7.7-patched/epg.c
--- vdr-1.7.7/epg.c 2009-06-13 01:01:25.000000000 +0200
+++ vdr-1.7.7-patched/epg.c 2009-11-07 20:40:34.000000000 +0100
@@ -630,6 +630,17 @@
fprintf(f, "%sX %s\n", Prefix, *p->ToString());
}
}
+#ifdef USE_PARENTALRATING
+ if (!isempty(GetContentsString())) {
+ for (int i = 0; i < MAXEVCONTENTS; i++) {
+ if (!isempty(GetContentsString(i))) {
+ strreplace(description, '\n', '|');
+ fprintf(f, "%sG %i %i %s\n",Prefix, Contents(i) & 0xF0, Contents(i) & 0x0F, (const char *)GetContentsString(i));
+ strreplace(description, '|', '\n');
+ }
+ }
+ }
+#endif /* PARENTALRATING */
if (vps)
fprintf(f, "%sV %ld\n", Prefix, vps);
if (!InfoOnly)
@@ -697,6 +708,24 @@
}
}
break;
+#ifdef USE_PARENTALRATING
+ case 'G': if (Event) {
+ unsigned int ContentID = 0;
+ unsigned int ContentSubID = 0;
+ int n = sscanf(t, "%u %u", &ContentID, &ContentSubID);
+ if (n == 2) {
+ if (ContentID != 0) {
+ for (int i = 0; i < MAXEVCONTENTS; i++) {
+ if (Event->Contents(i) == 0) {
+ Event->contents[i] = ContentID | ContentSubID;
+ break;
+ }
+ }
+ }
+ }
+ }
+ break;
+#endif /* PARENTALRATING */
case 'e': if (Event && !Event->Title())
Event->SetTitle(tr("No title"));
Event = NULL;

View File

@ -1,12 +0,0 @@
#!/bin/sh
VDRCMD=$1
[ -r /etc/locale ] && export LANG=`cat /etc/locale`
export DISPLAY=":0"
trap 'killall -q -TERM vdr; exit 0' 15
while true; do
eval "$VDRCMD"
done

View File

@ -1,69 +0,0 @@
#!/bin/sh
. /etc/wakeup
do_shutdown()
{
sleep 5
}
do_reboot()
{
sleep 5
# reboot
}
osdmsg()
{
sleep 2
echo "MESG $1" | nc localhost 2001
}
grep -q LOCAL /etc/adjtime && HWCLOCK_LOCAL_TIME="-l"
TIMER=$1
[ -z "$TIMER" ] && TIMER=`/usr/bin/getwakeup $HWCLOCK_LOCAL_TIME`
[ -z "$TIMER" ] && TIMER=0
[ -z "$WAKEUP" -o "$WAKEUP" = no -o -z "$TIMER" ] && do_shutdown
if [ $REGULAR_DAYS -gt 0 ]; then
REGULAR_TIMER=$((`date -d "$REGULAR_TIME" +%s` + $REGULAR_DAYS * 24 * 60 * 60))
# when no vdr timer is set or vdr timer starts later than regular timer:
if [ $TIMER -eq 0 ] || [ $TIMER -gt 0 -a $REGULAR_TIMER -lt $TIMER ]; then
TIMER=$REGULAR_TIMER
fi
fi
if [ "$WAKEUP" = nvram -a -x /usr/bin/nvram-wakeup ]; then
if [ -r /etc/nvram-wakeup.conf ]; then
/usr/bin/nvram-wakeup -C /etc/nvram-wakeup.conf -ls $TIMER
elif [ -n "$BOARD_TYPE" ]; then
/usr/bin/nvram-wakeup -I $BOARD_TYPE -ls $TIMER
else
/usr/bin/nvram-wakeup -ls $TIMER
fi
case $? in
0) # everything is ok
do_shutdown
;;
#FIXME: for boards that need nvram-wakeup and reboot, this won't work anyway with geexbox at the moment
#maybe this should be removed after all
1) # we need to reboot
do_reboot
;;
*) # something went wrong
osdmsg "nvram-wakeup: cannot set time, shutdown aborted!"
;;
esac
elif [ "$WAKEUP" = acpi -a -e /sys/class/rtc/rtc0/wakealarm ]; then
echo 0 >/sys/class/rtc/rtc0/wakealarm
echo $TIMER >/sys/class/rtc/rtc0/wakealarm
#some boards need to have this run twice
echo $TIMER >/sys/class/rtc/rtc0/wakealarm
do_shutdown
else
do_shutdown
fi

View File

@ -1 +0,0 @@
ftp://ftp.tvdr.de/vdr/Developer/vdr-1.7.11.tar.bz2

View File

@ -22,6 +22,4 @@ make PREFIX=/usr \
IDSDIR="/usr/share" \ IDSDIR="/usr/share" \
DESTDIR=$SYSROOT_PREFIX install-lib DESTDIR=$SYSROOT_PREFIX install-lib
./update-pciids.sh ./update-pciids.sh || cp $ROOT/$PKG_DIR/pci.ids .
#cp $ROOT/$PKG_DIR/pci.ids .

View File

@ -3,8 +3,7 @@
. config/options . config/options
$SCRIPTS/install linux $SCRIPTS/install linux
$SCRIPTS/install libXinerama
require_eglibc $1
PKG_DIR=`find $PACKAGES -type d -name $1` PKG_DIR=`find $PACKAGES -type d -name $1`
VER=`ls $BUILD/linux*/modules/lib/modules` VER=`ls $BUILD/linux*/modules/lib/modules`

View File

@ -4,6 +4,8 @@
XORG_SRC="$PKG_BUILD/hw/xfree86" XORG_SRC="$PKG_BUILD/hw/xfree86"
get_graphicdrivers
$SCRIPTS/build toolchain $SCRIPTS/build toolchain
$SCRIPTS/build xf86driproto $SCRIPTS/build xf86driproto
@ -29,7 +31,7 @@ $SCRIPTS/build fontsproto
$SCRIPTS/build xf86bigfontproto $SCRIPTS/build xf86bigfontproto
$SCRIPTS/build udev $SCRIPTS/build udev
if test "$XINERAMA_SUPPORT" = "yes" ; then if [ "$XINERAMA_SUPPORT" = "yes" ]; then
$SCRIPTS/build libXinerama $SCRIPTS/build libXinerama
XORG_XINERAMA="--enable-xinerama" XORG_XINERAMA="--enable-xinerama"
else else

View File

@ -2,6 +2,8 @@
. config/options . config/options
get_graphicdrivers
$SCRIPTS/install libpciaccess $SCRIPTS/install libpciaccess
$SCRIPTS/install freetype $SCRIPTS/install freetype
$SCRIPTS/install openssl $SCRIPTS/install openssl
@ -70,8 +72,6 @@ mkdir -p $INSTALL/etc/X11/xorg.conf.d
$SCRIPTS/install xf86-input-synaptics $SCRIPTS/install xf86-input-synaptics
$SCRIPTS/install xf86-input-wacom $SCRIPTS/install xf86-input-wacom
get_graphicdrivers
for drv in $XORG_DRIVERS; do for drv in $XORG_DRIVERS; do
$SCRIPTS/install xf86-video-$drv $SCRIPTS/install xf86-video-$drv
done done

View File

@ -42,8 +42,8 @@
# use a TZ environment string # use a TZ environment string
TIMEZONE="" TIMEZONE=""
# Mediacenter to use (xbmc / xbmc-pvr) # Mediacenter to use (xbmc / no)
MEDIACENTER="xbmc-pvr" MEDIACENTER="xbmc"
# Skins to install (Vision2) # Skins to install (Vision2)
SKINS="Vision2" SKINS="Vision2"

View File

@ -42,8 +42,8 @@
# use a TZ environment string # use a TZ environment string
TIMEZONE="" TIMEZONE=""
# Mediacenter to use (xbmc / xbmc-pvr) # Mediacenter to use (xbmc / no)
MEDIACENTER="xbmc-pvr" MEDIACENTER="xbmc"
# Skins to install (Vision2) # Skins to install (Vision2)
SKINS="Vision2" SKINS="Vision2"

View File

@ -42,8 +42,8 @@
# use a TZ environment string # use a TZ environment string
TIMEZONE="" TIMEZONE=""
# Mediacenter to use (xbmc / xbmc-pvr) # Mediacenter to use (xbmc / no)
MEDIACENTER="xbmc-pvr" MEDIACENTER="xbmc"
# Skins to install (Vision2) # Skins to install (Vision2)
SKINS="Vision2" SKINS="Vision2"