Support Quad PiP.
authorhschang <chang@dev3>
Mon, 21 Aug 2017 07:34:20 +0000 (16:34 +0900)
committerhschang <chang@dev3>
Mon, 21 Aug 2017 07:34:20 +0000 (16:34 +0900)
12 files changed:
meta-bsp/conf/machine/vusolo4k.conf
meta-bsp/conf/machine/vuultimo4k.conf
meta-bsp/conf/machine/vuuno4k.conf
meta-bsp/recipes-vuplus/enigma2/enigma2.bbappend
meta-bsp/recipes-vuplus/enigma2/enigma2/enigma2_vuplus_remove_pvr_action.patch
meta-openvuplus/recipes-vuplus/e2openplugins/enigma2-plugin-extensions-openwebif.bb
meta-openvuplus/recipes-vuplus/e2openplugins/files/openwebif_block_in_qpip.patch [new file with mode: 0644]
meta-openvuplus/recipes-vuplus/enigma2/enigma2-plugins.bb
meta-openvuplus/recipes-vuplus/enigma2/enigma2-plugins/enigma2_plugins_setqpipmode.patch [new file with mode: 0644]
meta-openvuplus/recipes-vuplus/enigma2/enigma2.bb
meta-openvuplus/recipes-vuplus/packagegroups/packagegroup-vuplus-enigma2.bb
meta-openvuplus/recipes-vuplus/vuplus-skin/vuplus-skins.bb

index 3fda704..32f6b64 100644 (file)
@@ -23,6 +23,7 @@ VUPLUS_FEATURES += "minitv"
 VUPLUS_FEATURES += "chromiumos"
 VUPLUS_FEATURES += "fcc"
 VUPLUS_FEATURES += "scrambledplayback"
+VUPLUS_FEATURES += "quadpip"
 
 IMAGE_UNPACK_PATH = "vuplus/solo4k"
 MKFS_UBI_MAX_ERASE_BLK_COUNT = "4096"
index f9a53fd..c147232 100644 (file)
@@ -25,6 +25,7 @@ VUPLUS_FEATURES += "fcc"
 VUPLUS_FEATURES += "wowl"
 VUPLUS_FEATURES += "bluetooth"
 VUPLUS_FEATURES += "scrambledplayback"
+VUPLUS_FEATURES += "quadpip"
 
 IMAGE_UNPACK_PATH = "vuplus/ultimo4k"
 MKFS_UBI_MAX_ERASE_BLK_COUNT = "4096"
index 6412d5e..8cb52c7 100644 (file)
@@ -21,6 +21,7 @@ VUPLUS_FEATURES += "uianimation"
 VUPLUS_FEATURES += "kodi"
 VUPLUS_FEATURES += "chromiumos"
 VUPLUS_FEATURES += "fcc"
+VUPLUS_FEATURES += "quadpip"
 
 IMAGE_UNPACK_PATH = "vuplus/uno4k"
 MKFS_UBI_MAX_ERASE_BLK_COUNT = "4096"
index 1e89f62..807e480 100644 (file)
@@ -1,6 +1,6 @@
 FILESEXTRAPATHS_prepend := "${THISDIR}/${PN}:"
 
-PR .= "-bsp12"
+PR .= "-bsp13"
 
 SRC_URI_append_vusolo = " \
        file://enigma2_vuplus_misc.patch \
index 47f9fa7..60a05ae 100644 (file)
@@ -81,15 +81,15 @@ index 8e42c57..99b0a92 100755
                        <item level="1" text="Show positioner movement">config.usage.showdish</item>
                        <item level="1" text="Enable multiple bouquets">config.usage.multibouquet</item>
 diff --git a/lib/python/Components/SystemInfo.py b/lib/python/Components/SystemInfo.py
-index 6fcab1d..85f7f64 100755
+index a1f0d6f..b7d7119 100755
 --- a/lib/python/Components/SystemInfo.py
 +++ b/lib/python/Components/SystemInfo.py
-@@ -32,4 +32,4 @@ SystemInfo["DeepstandbySupport"] = HardwareInfo().get_device_name() != "dm800"
- SystemInfo["HdmiInSupport"] = HardwareInfo().get_vu_device_name() == "ultimo4k"
- SystemInfo["WOWLSupport"] = HardwareInfo().get_vu_device_name() == "ultimo4k"
+@@ -34,4 +34,5 @@ SystemInfo["WOWLSupport"] = HardwareInfo().get_vu_device_name() == "ultimo4k"
  SystemInfo["ScrambledPlayback"] = HardwareInfo().get_vu_device_name() in ("solo4k", "ultimo4k")
--
+ SystemInfo["FastChannelChange"] =  fileExists("/proc/stb/frontend/fbc/fcc")
+ SystemInfo["MiniTV"] = fileExists("/proc/stb/lcd/live_enable")
 +SystemInfo["PVRSupport"] = HardwareInfo().get_vu_device_name() not in ["solose", "zero", "uno4k"]
 diff --git a/lib/python/Screens/InfoBarGenerics.py b/lib/python/Screens/InfoBarGenerics.py
 index cebebf5..89e146e 100755
 --- a/lib/python/Screens/InfoBarGenerics.py
index 3f84aaf..3671b9f 100644 (file)
@@ -12,11 +12,12 @@ SRCREV_pn-${PN}="d84307958746e6a597b43defe5bd1cb78fd745c8"
 inherit gitpkgv
 PV = "1+git${SRCPV}"
 PKGV = "1+git${GITPKGV}"
-PR = "r3"
+PR = "r4"
 
 require openplugins-distutils.inc
 
 SRC_URI += " file://openwebif_solo4k.patch;striplevel=1 "
+SRC_URI += " file://openwebif_block_in_qpip.patch"
 
 # Just a quick hack to "compile" it
 do_compile() {
diff --git a/meta-openvuplus/recipes-vuplus/e2openplugins/files/openwebif_block_in_qpip.patch b/meta-openvuplus/recipes-vuplus/e2openplugins/files/openwebif_block_in_qpip.patch
new file mode 100644 (file)
index 0000000..6794280
--- /dev/null
@@ -0,0 +1,37 @@
+diff --git a/plugin/controllers/models/control.py b/plugin/controllers/models/control.py
+old mode 100644
+new mode 100755
+index 1045d44..4a564bb
+--- a/plugin/controllers/models/control.py
++++ b/plugin/controllers/models/control.py
+@@ -13,6 +13,17 @@ from enigma import eServiceReference, eActionMap, eServiceCenter
+ from urllib import unquote
+ from services import getProtection
+ from Screens.InfoBar import InfoBar, MoviePlayer
++import os
++
++ENABLE_QPIP_PROCPATH = "/proc/stb/video/decodermode"
++def checkIsQPiP():
++      if os.access(ENABLE_QPIP_PROCPATH, os.F_OK):
++              fd = open(ENABLE_QPIP_PROCPATH,"r")
++              data = fd.read()
++              fd.close()
++
++              return data.strip() == "mosaic"
++      return False
+ def zapInServiceList(service):
+       InfoBar_Instance = InfoBar.instance
+@@ -60,6 +71,12 @@ def zapInServiceList(service):
+       servicelist.zap()
+ def zapService(session, id, title = ""):
++      if checkIsQPiP():
++              return {
++                      "result": False,
++                      "message": "Can not zap service in quad PiP mode."
++              }
++
+       # Must NOT unquote id here, breaks zap to streams
+       service = eServiceReference(id)
index 3aad601..38ed869 100755 (executable)
@@ -11,7 +11,7 @@ SRCREV="c8fc96e8e51e1ef71e1709f9dd6f733007f9463e"
 SRCDATE="20110215"
 BRANCH="master"
 PV = "experimental-git${SRCDATE}"
-PR = "r13"
+PR = "r14"
 
 FILESEXTRAPATHS_prepend := "${THISDIR}/${PN}:"
 
@@ -40,6 +40,7 @@ SRC_URI_append_vuplus = " \
        file://dreamboxwebtv.png \
        file://favicon.ico \
        file://Makefile.am \
+       file://enigma2_plugins_setqpipmode.patch \
 "
 
 FILES_${PN} += " /usr/share/enigma2 /usr/share/fonts "
diff --git a/meta-openvuplus/recipes-vuplus/enigma2/enigma2-plugins/enigma2_plugins_setqpipmode.patch b/meta-openvuplus/recipes-vuplus/enigma2/enigma2-plugins/enigma2_plugins_setqpipmode.patch
new file mode 100644 (file)
index 0000000..834936a
--- /dev/null
@@ -0,0 +1,36 @@
+diff --git a/merlinmusicplayer/src/merlinmp3player/merlinmp3player.h b/merlinmusicplayer/src/merlinmp3player/merlinmp3player.h
+index 693cbbb..d72d4d4 100644
+--- a/merlinmusicplayer/src/merlinmp3player/merlinmp3player.h
++++ b/merlinmusicplayer/src/merlinmp3player/merlinmp3player.h
+@@ -65,6 +65,7 @@ public:
+       RESULT stream(ePtr<iStreamableService> &ptr) { ptr = 0; return -1; };
+       RESULT streamed(ePtr<iStreamedService> &ptr) { ptr = 0; return -1; };
+       RESULT keys(ePtr<iServiceKeys> &ptr) { ptr = 0; return -1; };
++      void setQpipMode(bool value, bool audio) { } 
+               // iPausableService
+       RESULT pause();
+diff --git a/partnerbox/src/servicewebts/servicewebts.h b/partnerbox/src/servicewebts/servicewebts.h
+index 27464a4..8142197 100644
+--- a/partnerbox/src/servicewebts/servicewebts.h
++++ b/partnerbox/src/servicewebts/servicewebts.h
+@@ -105,6 +105,7 @@ public:
+       RESULT stream(ePtr<iStreamableService> &ptr) { ptr = 0; return -1; };
+       RESULT streamed(ePtr<iStreamedService> &ptr) { ptr = 0; return -1; };
+       RESULT keys(ePtr<iServiceKeys> &ptr) { ptr = 0; return -1; };
++      void setQpipMode(bool value, bool audio) { }
+       // iPausableService
+       RESULT pause();
+diff --git a/vlcplayer/src/servicets/servicets.h b/vlcplayer/src/servicets/servicets.h
+index 5b0b65a..83710b5 100644
+--- a/vlcplayer/src/servicets/servicets.h
++++ b/vlcplayer/src/servicets/servicets.h
+@@ -80,6 +80,7 @@ public:
+       RESULT stream(ePtr<iStreamableService> &ptr) { ptr = 0; return -1; };
+       RESULT streamed(ePtr<iStreamedService> &ptr) { ptr = 0; return -1; };
+       RESULT keys(ePtr<iServiceKeys> &ptr) { ptr = 0; return -1; };
++      void setQpipMode(bool value, bool audio) { }
+       // iPausableService
+       RESULT pause();
index 2e28219..5743b68 100644 (file)
@@ -231,7 +231,7 @@ DEPENDS += "${@base_contains("VUPLUS_FEATURES", "uianimation", "libgles libvugle
 RDEPENDS_${PN}_append_vuplus += "${@base_contains("VUPLUS_FEATURES", "uianimation", "libvugles2" , "", d)}"
 
 PN = "enigma2"
-PR = "r155"
+PR = "r156"
 
 inherit gitpkgv pythonnative
 
index 2a74516..6245312 100644 (file)
@@ -2,7 +2,7 @@ SUMMARY = "Enigma2 set of packages for Vuplus"
 SECTION = "vuplus/base"
 LICENSE = "GPLv2"
 LIC_FILES_CHKSUM = "file://${COREBASE}/meta/files/common-licenses/GPL-2.0;md5=801f80980d171dd6425610833a22dbe6"
-PR = "r20"
+PR = "r21"
 
 PACKAGE_ARCH = "${MACHINE_ARCH}"
 
@@ -80,6 +80,7 @@ RDEPENDS_${PN} += " \
   ${@base_contains("VUPLUS_FEATURES", "bluetooth", "enigma2-plugin-extensions-witaispeechtotext", "", d)} \
   ${@base_conditional("MACHINE", "vuultimo4k", "enigma2-plugin-systemplugins-ultimo4kmisccontrol", "", d)} \
   ${@base_contains("VUPLUS_FEATURES", "scrambledplayback", "enigma2-plugin-systemplugins-pvrdescrambleconvert", "", d)} \
+  ${@base_contains("VUPLUS_FEATURES", "quadpip", "enigma2-plugin-extensions-quadpip", "", d)} \
 "
 
 PACKAGE_ARCH = "${MACHINE_ARCH}"
index 07a3db4..e5f6e30 100644 (file)
@@ -3,7 +3,7 @@ LICENSE = "GPLv2"
 LIC_FILES_CHKSUM = "file://${COREBASE}/meta/files/common-licenses/GPL-2.0;md5=801f80980d171dd6425610833a22dbe6"
 
 PV = "1.0"
-PR = "r5"
+PR = "r6"
 
 RDEPENDS_${PN} = "enigma2"