diff options
author | ghost <andreas.monzner@multimedia-labs.de> | 2008-11-25 22:43:17 +0100 |
---|---|---|
committer | ghost <andreas.monzner@multimedia-labs.de> | 2008-11-25 22:43:17 +0100 |
commit | a202f569dc394f444eefeb5d8aaf701a08f692f3 (patch) | |
tree | a2bb3fbc0d212234129b1f5af4385b21c0269a90 | |
parent | 66ce1b5dd5995928bbac96f8935d2509de92dc02 (diff) | |
download | openembedded-a202f569dc394f444eefeb5d8aaf701a08f692f3.tar.gz |
tuxbox-tuxtxt-32bpp.bb, tuxbox-libtuxtxt.bb: allow different demux devices
-rw-r--r-- | packages/tuxbox/files/libtuxtxt_allow_different_demux.diff | 42 | ||||
-rw-r--r-- | packages/tuxbox/tuxbox-libtuxtxt.bb | 7 | ||||
-rw-r--r-- | packages/tuxbox/tuxbox-tuxtxt-32bpp.bb | 5 | ||||
-rw-r--r-- | packages/tuxbox/tuxbox-tuxtxt-32bpp/allow_different_demux.diff | 109 |
4 files changed, 158 insertions, 5 deletions
diff --git a/packages/tuxbox/files/libtuxtxt_allow_different_demux.diff b/packages/tuxbox/files/libtuxtxt_allow_different_demux.diff new file mode 100644 index 0000000000..6736417ca2 --- /dev/null +++ b/packages/tuxbox/files/libtuxtxt_allow_different_demux.diff @@ -0,0 +1,42 @@ +diff -Naur libs-org/libtuxtxt/libtuxtxt.c libs/libtuxtxt/libtuxtxt.c +--- libs-org/libtuxtxt/libtuxtxt.c 2008-11-25 21:47:38.000000000 +0100 ++++ libs/libtuxtxt/libtuxtxt.c 2008-11-25 22:27:04.000000000 +0100 +@@ -49,6 +49,13 @@ + tuxtxt_cache.vtxtpid = -1; + tuxtxt_cache.thread_id = 0; + tuxtxt_cache.dmx = -1; ++ ++#if HAVE_DVB_API_VERSION < 3 ++ strcpy(tuxtxt_cache.demux, "/dev/dvb/card0/demux0"); ++#else ++ strcpy(tuxtxt_cache.demux, "/dev/dvb/adapter0/demux0"); ++#endif ++ + return 1;//tuxtxt_init_demuxer(); + } + +diff -Naur libs-org/libtuxtxt/tuxtxt_def.h libs/libtuxtxt/tuxtxt_def.h +--- libs-org/libtuxtxt/tuxtxt_def.h 2008-11-25 21:47:38.000000000 +0100 ++++ libs/libtuxtxt/tuxtxt_def.h 2008-11-25 22:25:23.000000000 +0100 +@@ -14,12 +14,11 @@ + #define pes_type pesType + #define dmx_sct_filter_params dmxSctFilterParams + #include <ost/dmx.h> +- #define DMX "/dev/dvb/card0/demux0" + #else + #include <linux/dvb/dmx.h> +- #define DMX "/dev/dvb/adapter0/demux0" + #endif + ++#define DMX tuxtxt_cache.demux + + #define FLOFSIZE 4 + +@@ -108,6 +107,7 @@ + short flofpages[0x900][FLOFSIZE]; + unsigned char adip[0x900][13]; + unsigned char subpagetable[0x900]; ++ char demux[64]; + int dmx; + int vtxtpid; + int cached_pages, page, subpage, pageupdate,page_receiving, current_page[9], current_subpage[9]; diff --git a/packages/tuxbox/tuxbox-libtuxtxt.bb b/packages/tuxbox/tuxbox-libtuxtxt.bb index 0aa0a953a7..07688be8e7 100644 --- a/packages/tuxbox/tuxbox-libtuxtxt.bb +++ b/packages/tuxbox/tuxbox-libtuxtxt.bb @@ -4,8 +4,9 @@ MAINTAINER = "Felix Domke <tmbinc@elitdvb.net>" SRC_URI = "cvs://anoncvs@cvs.tuxbox.org/cvs/tuxbox;module=apps/tuxbox/libs;method=ext \ file://acinclude.m4" -SRC_URI_append_dm7025 = " file://libtuxtxt_bugfix.patch;patch=1" -SRC_URI_append_dm800 = " file://libtuxtxt_bugfix.patch;patch=1" +SRC_URI_append_dm7025 = " file://libtuxtxt_bugfix.patch;patch=1 file://libtuxtxt_allow_different_demux.diff;patch=1" +SRC_URI_append_dm800 = " file://libtuxtxt_bugfix.patch;patch=1 file://libtuxtxt_allow_different_demux.diff;patch=1" +SRC_URI_append_dm8000 = " file://libtuxtxt_bugfix.patch;patch=1 file://libtuxtxt_allow_different_demux.diff;patch=1" SRCDATE_dm600pvr = "20070307" SRCDATE_dm500plus = "20070307" @@ -15,7 +16,7 @@ SRCDATE_dm8000 = "20050912" SRCDATE_dm7020 = "20070307" PN = "libtuxtxt" -PR = "r1" +PR = "r2" PV = "0.0+cvs${SRCDATE}" S = "${WORKDIR}/libs" diff --git a/packages/tuxbox/tuxbox-tuxtxt-32bpp.bb b/packages/tuxbox/tuxbox-tuxtxt-32bpp.bb index fd3220684a..d3122b2f1b 100644 --- a/packages/tuxbox/tuxbox-tuxtxt-32bpp.bb +++ b/packages/tuxbox/tuxbox-tuxtxt-32bpp.bb @@ -9,13 +9,14 @@ SRC_URI = "cvs://anoncvs@cvs.tuxbox.org/cvs/tuxbox;module=apps/tuxbox/plugins/tu file://add_e2_plugin.diff;patch=1;pnum=1 \ file://tuxtxt-resize_video_patch-7025.diff;patch=1;pnum=1 \ file://add_advanced_rc.diff;patch=1;pnum=1 \ - file://resize_framebuffer.diff;patch=1;pnum=1" + file://resize_framebuffer.diff;patch=1;pnum=1 \ + file://allow_different_demux.diff;patch=1;pnum=1" FILES_${PN} = "/usr/bin /usr/share/fonts /usr/lib/enigma2/python/Plugins/Extensions/Tuxtxt /etc/tuxtxt" SRCDATE = "20060112" PV = "0.0+cvs${SRCDATE}" -PR = "r8" +PR = "r9" S = "${WORKDIR}/tuxtxt" diff --git a/packages/tuxbox/tuxbox-tuxtxt-32bpp/allow_different_demux.diff b/packages/tuxbox/tuxbox-tuxtxt-32bpp/allow_different_demux.diff new file mode 100644 index 0000000000..7af567247c --- /dev/null +++ b/packages/tuxbox/tuxbox-tuxtxt-32bpp/allow_different_demux.diff @@ -0,0 +1,109 @@ +diff -Naur tuxtxt_org/python/plugin.py tuxtxt/python/plugin.py +--- tuxtxt_org/python/plugin.py 2008-11-25 22:34:34.000000000 +0100 ++++ tuxtxt/python/plugin.py 2008-11-25 22:24:59.000000000 +0100 +@@ -7,24 +7,28 @@ + <screen position="1,1" size="1,1" title="TuxTXT" > + </screen>""" + +- def __init__(self, session, args = None): +- self.skin = ShellStarter.skin ++ def __init__(self, session, args = None): ++ self.skin = ShellStarter.skin + Screen.__init__(self, session) + self.container=eConsoleAppContainer() + self.container.appClosed.append(self.finished) + self.runapp() +- ++ + def runapp(self): + service = self.session.nav.getCurrentService() +- if service is not None: +- self.info = service.info() +- else: +- self.info = None ++ info = service and service.info() ++ txtpid = info and "%d" %(info.getInfo(iServiceInformation.sTXTPID)) or "" ++ ++ stream = service and service.stream() ++ demux = stream and stream.getStreamingData() ++ demux = demux.get("demux", -1) ++ demux = demux > -1 and "%d" %(demux) or "" + + eDBoxLCD.getInstance().lock() + eRCInput.getInstance().lock() + fbClass.getInstance().lock() +- if self.container.execute("/usr/bin/tuxtxt "+self.getValue(iServiceInformation.sTXTPID)): ++ ++ if self.container.execute("/usr/bin/tuxtxt " + demux + " " + txtpid): + self.finished(-1) + + def finished(self,retval): +@@ -33,15 +37,6 @@ + eDBoxLCD.getInstance().unlock() + self.close() + +- def getValue(self, what): +- if self.info is None: +- return "" +- +- v = "%d" % (self.info.getInfo(what)) +- +- return v +- +- + def main(session, **kwargs): + session.open(ShellStarter) + +diff -Naur tuxtxt_org/tuxtxt.c tuxtxt/tuxtxt.c +--- tuxtxt_org/tuxtxt.c 2008-11-25 18:29:04.000000000 +0100 ++++ tuxtxt/tuxtxt.c 2008-11-25 22:24:17.000000000 +0100 +@@ -1490,27 +1490,39 @@ + char cvs_revision[] = "$Revision: 1.95 $"; + + int cnt=0, rc_num=0; +-#if !TUXTXT_CFG_STANDALONE +- int initialized = tuxtxt_init(); +- if ( initialized ) +- tuxtxt_cache.page = 0x100; +-#endif + + /* show versioninfo */ + sscanf(cvs_revision, "%*s %s", versioninfo); + printf("TuxTxt %s\n", versioninfo); + printf("for 32bpp framebuffer\n"); + ++#if !TUXTXT_CFG_STANDALONE ++ int initialized = tuxtxt_init(); ++ if ( initialized ) ++ tuxtxt_cache.page = 0x100; ++#endif ++ + /* get params */ +- if (argc==1) ++ if (argc < 2) + { +- printf("\nUSAGE: tuxtxt vtpid\n"); +- printf("No PID given, so scanning for PIDs ...\n\n"); +- tuxtxt_cache.vtxtpid=0; ++ printf("\nUSAGE: tuxtxt demux [vtpid]\n"); ++ printf("No Demux given... abort!!\n"); ++ return -1; + } + else + { +- tuxtxt_cache.vtxtpid = atoi(argv[1]); ++ if (argc==2) ++ { ++ printf("No PID given, so scanning for PIDs ...\n\n"); ++ tuxtxt_cache.vtxtpid=0; ++ } ++ else ++ tuxtxt_cache.vtxtpid = atoi(argv[2]); ++#if HAVE_DVB_API_VERSION < 3 ++ snprintf(tuxtxt_cache.demux, 64, "/dev/dvb/card0/demux%c", argv[1][0]); ++#else ++ snprintf(tuxtxt_cache.demux, 64, "/dev/dvb/adapter0/demux%c", argv[1][0]); ++#endif + } + + /* open Framebuffer */ |