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

index 37833fe..a344976 100644 (file)
@@ -9,10 +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.79"
+PR = "r0.80"
 
 require openplugins.inc
 
+SRC_URI += " file://openwebif-transcoding-support.patch;apply=yes;striplevel=1 "
+
 # Just a quick hack to "compile" it
 do_compile() {
        cheetah-compile -R --nobackup ${S}/plugin
diff --git a/meta-openvuplus/recipes-vuplus/e2openplugins/files/openwebif-transcoding-support.patch b/meta-openvuplus/recipes-vuplus/e2openplugins/files/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 cbe06f6..b6c56a8 100644 (file)
@@ -1,19 +1,23 @@
 SUMMARY = "streamproxy manages streaming data to a Mobile device using enigma2"
-LICENSE = "GPLv2"
-LIC_FILES_CHKSUM = "file://COPYING;md5=59530bdf33659b29e73d4adb9f9f6552"
-SRCREV = "37a3f198a22d90cdfebf07cf56409cf93a4e74ba"
-PR = "r5"
+PRIORITY = "required"
+LICENSE = "GPLv3"
+LIC_FILES_CHKSUM = "file://COPYING;md5=d32239bcb673463ab874e80d47fae504"
 
-SRC_URI = " \
-           file://transcoding.patch;patch=1;pnum=1 \
-"
+inherit gitpkgv
 
-SCHWERKRAFT_PROJECT = "streamproxy"
+PR = "r6"
 
-inherit autotools schwerkraft-git
+PV = "0.1+git${SRCPV}"
+PKGV = "0.1+git${GITPKGV}"
+SRCREV_pn-${PN} ?= "${AUTOREV}"
+
+SRC_URI = "git://code.vuplus.com/git/filestreamproxy.git;protocol=git;branch=transtreamproxy"
+
+inherit autotools
+
+S = "${WORKDIR}/git"
 
 do_install() {
-        install -d ${D}/usr/bin
-        install -m 0755 ${S}/src/streamproxy      ${D}/usr/bin/transtreamproxy
+       install -d ${D}/usr/bin
+       install -m 0755 ${S}/src/transtreamproxy ${D}/usr/bin/transtreamproxy
 }
-
diff --git a/meta-openvuplus/recipes-vuplus/enigma2/enigma2-transtreamproxy/transcoding.patch b/meta-openvuplus/recipes-vuplus/enigma2/enigma2-transtreamproxy/transcoding.patch
deleted file mode 100755 (executable)
index 0dc464a..0000000
+++ /dev/null
@@ -1,284 +0,0 @@
-diff --git a/src/streamproxy.c b/src/streamproxy.c
-index 3f82412..321d9c9 100644
---- a/src/streamproxy.c
-+++ b/src/streamproxy.c
-@@ -42,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);
-@@ -81,6 +100,7 @@ int main(int argc, char **argv)
-       int i;
-       for (i=0; i<MAX_PIDS; ++i)
-               active_pids[i] = -1;
-+
-       
-       while (1)
-       {
-@@ -113,6 +133,8 @@ 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%s\r\n", service_ref, xff_header, authorization);
-       if (write(upstream, upstream_request, strlen(upstream_request)) != strlen(upstream_request))
-@@ -168,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;
-@@ -180,6 +203,7 @@ int handle_upstream(void)
-       
-       char *c = buffer;
-       
-+      
-       while (n)
-       {
-               char *next_line;
-@@ -218,6 +242,9 @@ int handle_upstream(void)
- int handle_upstream_line(void)
- {
-+      int i;
-+      const char *str;
-+
-       switch (upstream_state)
-       {
-       case 0:
-@@ -244,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 01d6ba3..f8b16e2 100644 (file)
@@ -88,7 +88,7 @@ RDEPENDS_enigma2-plugin-systemplugins-backupsuitehdd = "mtd-utils-mkfs.ubifs mtd
 RDEPENDS_enigma2-plugin-systemplugins-backupsuiteusb = "enigma2-plugin-extensions-backupsuitehdd"
 
 PN = "enigma2"
-PR = "r43"
+PR = "r44"
 
 SRCDATE = "20121128"
 #SRCDATE is NOT used by git to checkout a specific revision
index debd7c0..065333d 100644 (file)
@@ -63,7 +63,7 @@ RDEPENDS_${PN} += " \
   ${@base_contains("VUPLUS_FEATURES", "dlna", "enigma2-plugin-extensions-dlnaserver enigma2-plugin-extensions-dlnabrowser", "", d)} \
   ${@base_contains("VUPLUS_FEATURES", "3gmodem", "enigma2-plugin-systemplugins-3gmodemmanager", "", d)} \
   ${@base_contains("VUPLUS_FEATURES", "autoshutdown", "enigma2-plugin-systemplugins-autoshutdown", "", d)} \
-  ${@base_contains("VUPLUS_FEATURES", "transcoding", "enigma2-plugin-systemplugins-transcodingsetup enigma2-transtreamproxy enigma2-filestreamproxy", "", d)} \
+  ${@base_contains("VUPLUS_FEATURES", "transcoding", "enigma2-plugin-systemplugins-transcodingsetup enigma2-transtreamproxy", "", d)} \
   ${@base_contains("VUPLUS_FEATURES", "wol", "enigma2-plugin-systemplugins-wolsetup", "", d)} \
   ${@base_conditional("MACHINE", "vuduo2", "duo2lcd4linux lcd4linuxsupport", "", d)} \
   ${@base_conditional("MACHINE", "vuduo2", "vuplus-checkvfd", "", d)} \