hts-tvheadend: enable unloading/loading dvb modules on suspend/resume. Configurable through addon settings.

This commit is contained in:
Gregor Fuis 2012-02-27 20:20:51 +01:00
parent 0e58875ea4
commit 3ef2525313
5 changed files with 22 additions and 1 deletions

View File

@ -1,3 +1,6 @@
2.0.7
- enable unloading/loading dvb modules on suspend/resume
2.0.6
- add possibilty to start / stop addon from addon manager with enable / disable
- add possibility to browse filesystem for xmltv source file

View File

@ -20,7 +20,7 @@
PKG_NAME="hts-tvheadend"
PKG_VERSION="b877800"
PKG_REV="6"
PKG_REV="7"
PKG_ARCH="any"
PKG_LICENSE="GPL"
PKG_SITE="http://www.lonelycoder.com/hts/tvheadend_overview.html"

View File

@ -3,9 +3,12 @@
<!-- HTS TVHEADEND -->
<string id="1000">XMLTV</string>
<string id="1001">DVB</string>
<string id="1011">XMLTV configuration</string>
<string id="1011">XMLTV source type</string>
<string id="1012">XMLTV File location</string>
<string id="1013">XMLTV Web location</string>
<string id="1020">DVB Configuration</string>
<string id="1021">Unload DVB mudules before suspend</string>
</strings>

View File

@ -9,4 +9,9 @@
<setting id="XMLTV_LOCATION_FILE" type="file" label="1012" default="" enable="eq(-1,0)"/>
<setting id="XMLTV_LOCATION_WEB" type="text" label="1013" default="http://" enable="eq(-2,2)"/>
</category>
<category label="1001">
<setting label="1020" type="lsep"/>
<setting type="sep" />
<setting id="REMOVE_MODULES" type="text" label="1021" values="" default=""/>
</category>
</settings>

View File

@ -25,6 +25,10 @@
LOCKDIR="/var/lock/"
LOCKFILE="tvheadend"
ADDON_HOME="$HOME/.xbmc/userdata/addon_data/service.multimedia.hts-tvheadend"
ADDON_SETTINGS="$ADDON_HOME/settings.xml"
REMOVE_MODULES=`grep REMOVE_MODULES $ADDON_SETTINGS | awk '{print $3 }' | sed -e "s,value=,," -e "s,\",,g"`
case "$1" in
hibernate|suspend)
if [ $(pidof tvheadend) ];then
@ -32,11 +36,17 @@ case "$1" in
mkdir -p "$LOCKDIR"
touch "$LOCKDIR/$LOCKFILE"
tvheadend.stop
for module in $REMOVE_MODULES ; do
rmmod -w $module
done
fi
;;
thaw|resume)
if [ -f "$LOCKDIR/$LOCKFILE" ];then
for module in $REMOVE_MODULES ; do
modprobe $module
done
progress "Restarting HTS TVHeadend for wakeup..."
tvheadend.start
rm -rf "$LOCKDIR/$LOCKFILE"