updated transtreamproxy and removed filestreamproxy.
authorkos <kos@dev3>
Tue, 5 Nov 2013 12:38:05 +0000 (21:38 +0900)
committerkos <kos@dev3>
Tue, 5 Nov 2013 12:38:05 +0000 (21:38 +0900)
recipes/enigma2/enigma2-plugin-extensions-openwebif.bb
recipes/enigma2/enigma2-plugin-extensions-openwebif/openwebif-transcoding-support.patch [new file with mode: 0644]
recipes/enigma2/enigma2-transtreamproxy.bb
recipes/enigma2/enigma2-transtreamproxy/transcoding.patch [deleted file]
recipes/enigma2/enigma2.bb
recipes/tasks/task-vuplus-enigma2.bb

index 5eec6e4..bebaba5 100644 (file)
@@ -9,11 +9,12 @@ RDEPENDS_${PN} = "python-cheetah python-json python-unixadmin python-misc python
 inherit gitpkgv
 PV = "0.1+git${SRCPV}"
 PKGV = "0.1+git${GITPKGV}"
-PR = "r0.83"
+PR = "r0.84"
 
 require openplugins.inc
 
 SRC_URI = " git://github.com/E2OpenPlugins/e2openplugin-${MODULE}.git;protocol=git " 
+SRC_URI += " file://openwebif-transcoding-support.patch;patch=1;pnum=1 "
 
 # Just a quick hack to "compile" it
 do_compile() {
diff --git a/recipes/enigma2/enigma2-plugin-extensions-openwebif/openwebif-transcoding-support.patch b/recipes/enigma2/enigma2-plugin-extensions-openwebif/openwebif-transcoding-support.patch
new file mode 100644 (file)
index 0000000..6786fdd
--- /dev/null
@@ -0,0 +1,35 @@
+diff --git a/plugin/controllers/models/stream.py b/plugin/controllers/models/stream.py
+index 9c6df86..e267010 100644
+--- a/plugin/controllers/models/stream.py
++++ b/plugin/controllers/models/stream.py
+@@ -49,7 +49,7 @@ def getStream(session, request, m3ufile):
+       if model in ("solo2","duo2"):
+               if "device" in request.args :
+                       if request.args["device"][0] == "phone" :
+-                              portNumber = 8002;
++                              portNumber = 8002
+       if "port" in request.args:
+               portNumber = request.args["port"][0]
+       response = "#EXTM3U \n#EXTVLCOPT--http-reconnect=true \n%shttp://%s:%s/%s\n" % (progopt,request.getRequestHostname(), portNumber, sRef)
+@@ -81,7 +81,7 @@ def getTS(self, request):
+               if model in ("solo2","duo2"):
+                       if "device" in request.args :
+                               if request.args["device"][0] == "phone" :
+-                                      portNumber = 8003;
++                                      portNumber = 8002
+               if "port" in request.args:
+                       portNumber = request.args["port"][0]
+               response = "#EXTM3U\n#EXTVLCOPT--http-reconnect=true \n%shttp://%s:%s/file?file=%s\n" % (progopt,request.getRequestHostname(), portNumber, quote(filename))
+diff --git a/plugin/controllers/views/ajax/movies.tmpl b/plugin/controllers/views/ajax/movies.tmpl
+index a0fdf85..9028c7f 100755
+--- a/plugin/controllers/views/ajax/movies.tmpl
++++ b/plugin/controllers/views/ajax/movies.tmpl
+@@ -56,7 +56,7 @@
+                                                       <img align="top" src="../images/ico_stream.png" title="Stream $movie.eventname" border="0">\r
+                                               </a>\r
+                                               <a href="#" onclick="jumper8003('$quote($movie.filename)');">\r
+-                                                      <img align="top" src="../images/ico_stream.png" title="Stream(8003) $movie.eventname" border="0">\r
++                                                      <img align="top" src="../images/ico_stream.png" title="Stream Port 8002 $movie.eventname" border="0">\r
+                                               </a>\r
+                                               #else\r
+                                               <a target="_blank" href='/web/ts.m3u?file=$quote($movie.filename)'>\r
index f76f138..98048cb 100644 (file)
@@ -1,20 +1,19 @@
 DESCRIPTION = "streamproxy manages streaming data to a Mobile device using enigma2"
+PRIORITY = "required"
+LICENSE = "GPLv3"
+LIC_FILES_CHKSUM = "file://COPYING;md5=d32239bcb673463ab874e80d47fae504"
 
-SRCDATE = "20101014"
-PV = "1.0cvs${SRCDATE}"
-PR = "r1"
+PR = "r3"
+SRCREV="aab1af78d7c8152e5f3e8eafc61496898184df9f"
 
-SRC_URI = "cvs://anonymous@cvs.schwerkraft.elitedvb.net/cvsroot/streamproxy;module=enigma2-streamproxy;method=pserver \
-       file://transcoding.patch;patch=1;pnum=1 \
-       "
-       
+SRC_URI = "git://code.vuplus.com/git/filestreamproxy.git;protocol=git;branch=transtreamproxy;tag=${SRCREV}"
 
 inherit autotools
 
-S = "${WORKDIR}/enigma2-streamproxy"
+S = "${WORKDIR}/git"
 
 do_install() {
        install -d ${D}/usr/bin
-       install -m 0755 ${S}/src/streamproxy      ${D}/usr/bin/transtreamproxy
+       install -m 0755 ${S}/src/transtreamproxy ${D}/usr/bin/transtreamproxy
 }
 
diff --git a/recipes/enigma2/enigma2-transtreamproxy/transcoding.patch b/recipes/enigma2/enigma2-transtreamproxy/transcoding.patch
deleted file mode 100644 (file)
index e730924..0000000
+++ /dev/null
@@ -1,336 +0,0 @@
-diff --git a/src/streamproxy.c b/src/streamproxy.c
-index 03d1fac..f999982 100644
---- a/src/streamproxy.c
-+++ b/src/streamproxy.c
-@@ -8,6 +8,7 @@
- #include <sys/ioctl.h>
- #include <linux/dvb/dmx.h>
- #include <linux/dvb/version.h>
-+#include <errno.h>
- #define MAX_PIDS 32
- #define MAX_LINE_LENGTH 512
-@@ -41,6 +42,25 @@ char *reason = "";
- int active_pids[MAX_PIDS];
-+int g_video_pid = 0;
-+int g_audio_pid = 0;
-+int g_pcr_pid = 0;
-+int g_pmt_pid = 0;
-+
-+struct proc_dmx_pid
-+{
-+      char *proc_path;
-+      char *str_match;        
-+      int pid;
-+};
-+
-+struct proc_dmx_pid proc_dmx_setup[] = {
-+      {"/proc/stb/encoder/0/video_pid", "video", 0},
-+      {"/proc/stb/encoder/0/audio_pid", "audio", 0},
-+      {"/proc/stb/encoder/0/pcr_pid", "pcr", 0},
-+      {"/proc/stb/encoder/0/pmt_pid", "pmt", 0},
-+};
-+
- int handle_upstream(void);
- int handle_upstream_line(void);
-@@ -70,7 +90,8 @@ int main(int argc, char **argv)
-       int i;
-       for (i=0; i<MAX_PIDS; ++i)
-               active_pids[i] = -1;
--      
-+
-+                      
-       while (1)
-       {
-               char option[MAX_LINE_LENGTH];
-@@ -102,9 +123,14 @@ int main(int argc, char **argv)
-               goto bad_gateway;
-       }
-+      memset(upstream_request, 0, 256);
-+      
-       snprintf(upstream_request, sizeof(upstream_request), "GET /web/stream?StreamService=%s HTTP/1.0\r\n%s\r\n", service_ref, authorization);
-+
-+      
-       if (write(upstream, upstream_request, strlen(upstream_request)) != strlen(upstream_request))
-               goto bad_gateway;
-+
-       
-       while (1)
-       {
-@@ -116,22 +142,33 @@ int main(int argc, char **argv)
-                       FD_SET(demux_fd, &r);
-               
-               if (select(5, &r, 0, 0, 0) < 0)
-+              {
-                       break;
-+              }
-               if (FD_ISSET(0, &r)) /* check for client disconnect */
-                       if (read(0, request, sizeof(request)) <= 0)
-+                      {
-                               break;
-+                      }
-               
-                               /* handle enigma responses */
-               if (FD_ISSET(upstream, &r))
-                       if (handle_upstream())
-+                      {
-                               break;
-+                      }
-               if (demux_fd > 0 && FD_ISSET(demux_fd, &r))
-               {
-                       static unsigned char buffer[BSIZE];
-                       int r = read(demux_fd, buffer, BSIZE);
--                      if (r < 0)
--                              break;
-+                      if (r < 0 )
-+                      {
-+                              if(errno == EOVERFLOW)
-+                                      continue;
-+                              else
-+                                      break;
-+                      }
-                       write(1, buffer, r);
-               }
-       }
-@@ -153,6 +190,7 @@ bad_gateway:
- int handle_upstream(void)
- {
-       char buffer[MAX_LINE_LENGTH];
-+      memset(buffer, 0, MAX_LINE_LENGTH);
-       int n = read(upstream, buffer, MAX_LINE_LENGTH);
-       if (n == 0)
-               return 1;
-@@ -165,6 +203,7 @@ int handle_upstream(void)
-       
-       char *c = buffer;
-       
-+      
-       while (n)
-       {
-               char *next_line;
-@@ -203,6 +242,9 @@ int handle_upstream(void)
- int handle_upstream_line(void)
- {
-+      int i;
-+      const char *str;
-+
-       switch (upstream_state)
-       {
-       case 0:
-@@ -229,104 +271,137 @@ int handle_upstream_line(void)
-               if (response_line[0] == '+') {
-                                       /* parse (and possibly open) demux */
-                       int demux = atoi(response_line + 1);
--                      
-+                      {
-+                              FILE *f = fopen("/proc/stb/encoder/0/demux", "w");
-+                              if(f)
-+                              {
-+                                      fprintf(f, "%d\n", demux);
-+                                      fclose(f);
-+                              }
-+                      }
--                                      /* parse new pids */
--                      const char *p = strchr(response_line, ':');
--                      int old_active_pids[MAX_PIDS];
--                      
--                      memcpy(old_active_pids, active_pids, sizeof(active_pids));
--                      
--                      int nr_pids = 0, i, j;
--                      while (p)
-+                      for(i = 0 ; i < sizeof(proc_dmx_setup)/sizeof(proc_dmx_setup[0]) ; i++)
-                       {
--                              ++p;
--                              int pid = strtoul(p, 0, 0x10);
--                              p = strchr(p, ',');
-+                              str = strstr(response_line, proc_dmx_setup[i].str_match);
-+                              if(str)
-+                              {
-+                                      while(*str != ',') str--;
-+                                      proc_dmx_setup[i].pid = strtoul(str+1, 0, 0x10);                        
-+                                      FILE *f = fopen(proc_dmx_setup[i].proc_path, "w");
-+                                      if(f)
-+                                      {
-+                                              fprintf(f, "%d\n", proc_dmx_setup[i].pid);
-+                                              fclose(f);
-+                                      }
-+                              }
-                               
--                                      /* do not add pids twice */
--                              for (i = 0; i < nr_pids; ++i)
--                                      if (active_pids[i] == pid)
--                                              break;
-+                      }
--                              if (i != nr_pids)
--                                      continue;
--                              active_pids[nr_pids++] = pid;
-+                      if(proc_dmx_setup[3].pid && ( (g_video_pid != proc_dmx_setup[0].pid) || (g_audio_pid != proc_dmx_setup[1].pid) || (g_pcr_pid != proc_dmx_setup[2].pid)) )
-+                      {
-+                              g_video_pid = proc_dmx_setup[0].pid;
-+                              g_audio_pid = proc_dmx_setup[1].pid;
-+                              g_pcr_pid = proc_dmx_setup[2].pid;
-+
-+
-+                              /* parse new pids */
-+                              const char *p = strchr(response_line, ':');
-+                              int old_active_pids[MAX_PIDS];
-                               
--                              if (nr_pids == MAX_PIDS)
--                                      break;
--                      }
--                      
--                      for (i = nr_pids; i < MAX_PIDS; ++i)
--                              active_pids[i] = -1;
-+                              memcpy(old_active_pids, active_pids, sizeof(active_pids));
-                               
--                                      /* check for added pids */
--                      for (i = 0; i < nr_pids; ++i)
--                      {
--                              for (j = 0; j < MAX_PIDS; ++j)
--                                      if (active_pids[i] == old_active_pids[j])
-+                              int nr_pids = 0, i, j;
-+                              while (p)
-+                              {
-+                                      ++p;
-+                                      int pid = strtoul(p, 0, 0x10);
-+                                      p = strchr(p, ',');
-+                                      
-+                                              /* do not add pids twice */
-+                                      for (i = 0; i < nr_pids; ++i)
-+                                              if (active_pids[i] == pid)
-+                                                      break;
-+
-+                                      if (i != nr_pids)
-+                                              continue;
-+
-+                                      active_pids[nr_pids++] = pid;
-+                                      
-+                                      if (nr_pids == MAX_PIDS)
-                                               break;
--                              if (j == MAX_PIDS) {
--                                      if (demux_fd < 0) {
--                                              struct dmx_pes_filter_params flt; 
--                                              char demuxfn[32];
--                                              sprintf(demuxfn, "/dev/dvb/adapter0/demux%d", demux);
--                                              demux_fd = open(demuxfn, O_RDWR | O_NONBLOCK);
-+                              }
-+                              
-+                              for (i = nr_pids; i < MAX_PIDS; ++i)
-+                                      active_pids[i] = -1;
-+                                      
-+                                              /* check for added pids */
-+                              for (i = 0; i < nr_pids; ++i)
-+                              {
-+                                      for (j = 0; j < MAX_PIDS; ++j)
-+                                              if (active_pids[i] == old_active_pids[j])
-+                                                      break;
-+                                      if (j == MAX_PIDS) {
-                                               if (demux_fd < 0) {
--                                                      reason = "DEMUX OPEN FAILED";
--                                                      return 2;
--                                              }
-+                                                      struct dmx_pes_filter_params flt; 
-+                                                      char demuxfn[32];
-+                                                      sprintf(demuxfn, "/dev/dvb/adapter0/demux%d", demux);
-+                                                      demux_fd = open(demuxfn, O_RDWR | O_NONBLOCK);
-+                                                      if (demux_fd < 0) {
-+                                                              reason = "DEMUX OPEN FAILED";
-+                                                              return 2;
-+                                                      }
--                                              ioctl(demux_fd, DMX_SET_BUFFER_SIZE, 1024*1024);
-+                                                      ioctl(demux_fd, DMX_SET_BUFFER_SIZE, 1024*1024);
--                                              flt.pid = active_pids[i];
--                                              flt.input = DMX_IN_FRONTEND;
-+                                                      flt.pid = active_pids[i];
-+                                                      flt.input = DMX_IN_FRONTEND;
- #if DVB_API_VERSION > 3
--                                              flt.output = DMX_OUT_TSDEMUX_TAP;
--                                              flt.pes_type = DMX_PES_OTHER;
-+                                                      flt.output = DMX_OUT_TSDEMUX_TAP;
-+                                                      flt.pes_type = DMX_PES_OTHER;
- #else
--                                              flt.output = DMX_OUT_TAP;
--                                              flt.pes_type = DMX_TAP_TS;
-+                                                      flt.output = DMX_OUT_TAP;
-+                                                      flt.pes_type = DMX_TAP_TS;
- #endif
--                                              flt.flags = DMX_IMMEDIATE_START;
-+                                                      flt.flags = DMX_IMMEDIATE_START;
--                                              if (ioctl(demux_fd, DMX_SET_PES_FILTER, &flt) < 0) {
--                                                      reason = "DEMUX PES FILTER SET FAILED";
--                                                      return 2;
-+                                                      if (ioctl(demux_fd, DMX_SET_PES_FILTER, &flt) < 0) {
-+                                                              reason = "DEMUX PES FILTER SET FAILED";
-+                                                              return 2;
-+                                                      }
-                                               }
--                                      }
--                                      else {
--                                              uint16_t pid = active_pids[i];
--                                              int ret;
-+                                              else {
-+                                                      uint16_t pid = active_pids[i];
-+                                                      int ret;
- #if DVB_API_VERSION > 3
--                                              ret = ioctl(demux_fd, DMX_ADD_PID, &pid);
-+                                                      ret = ioctl(demux_fd, DMX_ADD_PID, &pid);
- #else
--                                              ret = ioctl(demux_fd, DMX_ADD_PID, pid);
-+                                                      ret = ioctl(demux_fd, DMX_ADD_PID, pid);
- #endif
--                                              if (ret < 0) {
--                                                      reason = "DMX_ADD_PID FAILED";
--                                                      return 2;
-+                                                      if (ret < 0) {
-+                                                              reason = "DMX_ADD_PID FAILED";
-+                                                              return 2;
-+                                                      }
-                                               }
-                                       }
-                               }
--                      }
--                      
--                                      /* check for removed pids */
--                      for (i = 0; i < MAX_PIDS; ++i)
--                      {
--                              if (old_active_pids[i] == -1)
--                                      continue;
--                              for (j = 0; j < nr_pids; ++j)
--                                      if (old_active_pids[i] == active_pids[j])
--                                              break;
--                              if (j == nr_pids) {
-+                              
-+                                              /* check for removed pids */
-+                              for (i = 0; i < MAX_PIDS; ++i)
-+                              {
-+                                      if (old_active_pids[i] == -1)
-+                                              continue;
-+                                      for (j = 0; j < nr_pids; ++j)
-+                                              if (old_active_pids[i] == active_pids[j])
-+                                                      break;
-+                                      if (j == nr_pids) {
- #if DVB_API_VERSION > 3
--                                      uint16_t pid = old_active_pids[i];
--                                      ioctl(demux_fd, DMX_REMOVE_PID, &pid);
-+                                              uint16_t pid = old_active_pids[i];
-+                                              ioctl(demux_fd, DMX_REMOVE_PID, &pid);
- #else
--                                      ioctl(demux_fd, DMX_REMOVE_PID, old_active_pids[i]);
-+                                              ioctl(demux_fd, DMX_REMOVE_PID, old_active_pids[i]);
- #endif
-+                                      }
-                               }
-                       }
-                       if (upstream_state == 2) {
index 1304384..1b46da7 100644 (file)
@@ -79,7 +79,7 @@ RDEPENDS_enigma2-plugin-systemplugins-devicemanager = "util-linux-ng-blkid ntfs-
 RDEPENDS_enigma2-plugin-systemplugins-netdrive = "curlftpfs kernel-module-fuse libfuse2"
 
 PN = "enigma2"
-PR = "r105"
+PR = "r106"
 
 SRCDATE = "20110922"
 SRCREV = "5e19a3f8a5e8ce8a4e2cb2b601a1b8ef3554e4be"
index b9a7da1..87a338f 100644 (file)
@@ -1,7 +1,7 @@
 DESCRIPTION = "Vuplus: E2 Task for the Vuplus Distribution"
 SECTION = "vuplus/base"
 LICENSE = "MIT"
-PR = "r30"
+PR = "r31"
 
 inherit task
 
@@ -81,7 +81,6 @@ RDEPENDS_task-vuplus-enigma2_append_vuduo2 = "\
   enigma2-plugin-systemplugins-blindscan \
   enigma2-transtreamproxy \
   enigma2-plugin-systemplugins-wolsetup \
-  enigma2-filestreamproxy \
 "
 
 RDEPENDS_task-vuplus-enigma2_append_vusolo2 = "\
@@ -94,7 +93,6 @@ RDEPENDS_task-vuplus-enigma2_append_vusolo2 = "\
   enigma2-plugin-systemplugins-autoshutdown \
   enigma2-plugin-systemplugins-transcodingsetup \
   enigma2-transtreamproxy \
-  enigma2-filestreamproxy \
 "
 
 RDEPENDS_task-vuplus-enigma2_append_vuuno = "\