[arch-commits] Commit in plex-home-theater/trunk (PKGBUILD plex-libcec-2.2.0.patch)

Maxime Gauduin alucryd at archlinux.org
Tue Nov 4 18:03:19 UTC 2014


    Date: Tuesday, November 4, 2014 @ 19:03:19
  Author: alucryd
Revision: 121861

libcec rebuild: plex-home-theater 1.2.2-5

Added:
  plex-home-theater/trunk/plex-libcec-2.2.0.patch
Modified:
  plex-home-theater/trunk/PKGBUILD

-------------------------+
 PKGBUILD                |    9 ++-
 plex-libcec-2.2.0.patch |  114 ++++++++++++++++++++++++++++++++++++++++++++++
 2 files changed, 120 insertions(+), 3 deletions(-)

Modified: PKGBUILD
===================================================================
--- PKGBUILD	2014-11-04 17:35:38 UTC (rev 121860)
+++ PKGBUILD	2014-11-04 18:03:19 UTC (rev 121861)
@@ -4,7 +4,7 @@
 
 pkgname=plex-home-theater
 pkgver=1.2.2
-pkgrel=4
+pkgrel=5
 pkgdesc='Plex Home Theater'
 arch=('i686' 'x86_64')
 url='http://www.plexapp.com/'
@@ -20,17 +20,20 @@
             'libcec: Pulse-Eight USB-CEC adapter support'
             'pulseaudio: PulseAudio support')
 source=("https://github.com/plexinc/plex-home-theater-public/archive/pht-v${pkgver}.tar.gz"
+        'plex-ffmpeg-compat.patch'
+        'plex-libcec-2.2.0.patch'
         'plex-lirc-socket.patch'
-        'plex-ffmpeg-compat.patch'
         'plexhometheater.sh')
 sha256sums=('5df5b2bfb5d02566c151e93be6a7217ca72b9e7800e6216dabf1759d920f3d2f'
+            '5b370e4dec6998130df46ad6bd5ca6258e3a040dd6c6cc4085c335dc3d6050bd'
+            '13032e8da35b0abdd22109f9ee34c63e43e0f9863fe81d4fa503c05ede23a212'
             '630070125ad5239163d89fed5bf7f83abf4a411ac3e24aa2e41f99c5c3c8fb7f'
-            '5b370e4dec6998130df46ad6bd5ca6258e3a040dd6c6cc4085c335dc3d6050bd'
             'dc6bd394c07a2ececbb2f8c53cb54afd5d78f7c00a0b34acab3e71217da085fb')
 
 prepare() {
   cd plex-home-theater-public-pht-v${pkgver}
 
+  patch -Np1 -i ../plex-libcec-2.2.0.patch
   patch -Np1 -i ../plex-lirc-socket.patch
   patch -Np1 -i ../plex-ffmpeg-compat.patch
 }

Added: plex-libcec-2.2.0.patch
===================================================================
--- plex-libcec-2.2.0.patch	                        (rev 0)
+++ plex-libcec-2.2.0.patch	2014-11-04 18:03:19 UTC (rev 121861)
@@ -0,0 +1,114 @@
+From e62cdd0c9ae9818c5c35c6b6b57ba8ff322ca052 Mon Sep 17 00:00:00 2001
+From: Maxime Gauduin <alucryd at gmail.com>
+Date: Tue, 4 Nov 2014 17:07:10 +0100
+Subject: [PATCH] libCEC 2.2.0 fixes
+
+---
+ project/BuildDependencies/scripts/0_package.list  |  1 +
+ project/BuildDependencies/scripts/libcec_d.bat    | 15 ---------------
+ project/BuildDependencies/scripts/libcec_d.txt    |  2 +-
+ system/peripherals.xml                            |  2 +-
+ xbmc/peripherals/bus/virtual/PeripheralBusCEC.cpp |  2 ++
+ xbmc/peripherals/devices/PeripheralCecAdapter.cpp | 11 ++++++++---
+ 6 files changed, 13 insertions(+), 20 deletions(-)
+ delete mode 100644 project/BuildDependencies/scripts/libcec_d.bat
+
+diff --git a/project/BuildDependencies/scripts/0_package.list b/project/BuildDependencies/scripts/0_package.list
+index d2a00aa..6f441f3 100644
+--- a/project/BuildDependencies/scripts/0_package.list
++++ b/project/BuildDependencies/scripts/0_package.list
+@@ -11,4 +11,5 @@ libnfs-1.6.0-win32
+ libshairplay-d689c6-win32
+ libjpeg-turbo-1.2.0-win32
+ libbluray-0.2.3-win32
++libcec-2.2.0-win32-1
+ taglib-1.8beta-win32
+diff --git a/project/BuildDependencies/scripts/libcec_d.bat b/project/BuildDependencies/scripts/libcec_d.bat
+deleted file mode 100644
+index 0b41b8a..0000000
+--- a/project/BuildDependencies/scripts/libcec_d.bat
++++ /dev/null
+@@ -1,15 +0,0 @@
+- at ECHO OFF
+-
+-SET LOC_PATH=%CD%
+-SET FILES=%LOC_PATH%\libcec_d.txt
+-
+-CALL dlextract.bat libcec %FILES%
+-
+-cd %TMP_PATH%
+-
+-mkdir "%CUR_PATH%\include\libcec"
+-xcopy libcec\include\* "%CUR_PATH%\include\libcec\." /E /Q /I /Y
+-
+-copy libcec\libcec.dll "%XBMC_PATH%\system\."
+-
+-cd %LOC_PATH%
+diff --git a/project/BuildDependencies/scripts/libcec_d.txt b/project/BuildDependencies/scripts/libcec_d.txt
+index 065ce3a..3d0265e 100644
+--- a/project/BuildDependencies/scripts/libcec_d.txt
++++ b/project/BuildDependencies/scripts/libcec_d.txt
+@@ -1,3 +1,3 @@
+ ; filename                        source of the file
+ 
+-libcec-2.1.1.zip                  http://mirrors.xbmc.org/build-deps/win32/
++libcec-2.2.0-win32.zip            http://mirrors.xbmc.org/build-deps/win32/
+diff --git a/system/peripherals.xml b/system/peripherals.xml
+index 68205df..ea0bb17 100644
+--- a/system/peripherals.xml
++++ b/system/peripherals.xml
+@@ -28,7 +28,7 @@
+     <setting key="device_type" type="int" value="1" configurable="0" />
+     <setting key="wake_devices_advanced" type="string" value="" configurable="0" />
+     <setting key="standby_devices_advanced" type="string" value="" configurable="0" />
+-    <setting key="double_tap_timeout_ms" type="int" min="0" value="2000" configurable="0" />
++    <setting key="double_tap_timeout_ms" type="int" min="0" value="300" configurable="0" />
+   </peripheral>
+ 
+   <peripheral vendor_product="2548:1001,2548:1002" bus="usb" name="Pulse-Eight CEC Adapter" mapTo="cec">
+diff --git a/xbmc/peripherals/bus/virtual/PeripheralBusCEC.cpp b/xbmc/peripherals/bus/virtual/PeripheralBusCEC.cpp
+index da169c1..f3c8149 100644
+--- a/xbmc/peripherals/bus/virtual/PeripheralBusCEC.cpp
++++ b/xbmc/peripherals/bus/virtual/PeripheralBusCEC.cpp
+@@ -101,6 +101,8 @@ bool CPeripheralBusCEC::PerformDeviceScan(PeripheralScanResults &results)
+       break;
+     case ADAPTERTYPE_RPI:
+       result.m_mappedBusType = PERIPHERAL_BUS_RPI;
++      // the Pi's adapter cannot be removed, no need to rescan
++      m_bNeedsPolling = false;
+       break;
+     default:
+       break;
+diff --git a/xbmc/peripherals/devices/PeripheralCecAdapter.cpp b/xbmc/peripherals/devices/PeripheralCecAdapter.cpp
+index 056a77e..9823427 100644
+--- a/xbmc/peripherals/devices/PeripheralCecAdapter.cpp
++++ b/xbmc/peripherals/devices/PeripheralCecAdapter.cpp
+@@ -1302,8 +1302,8 @@ void CPeripheralCecAdapter::SetConfigurationFromLibCEC(const CEC::libcec_configu
+ 
+ void CPeripheralCecAdapter::SetConfigurationFromSettings(void)
+ {
+-  // use the same client version as libCEC version
+-  m_configuration.clientVersion = CEC_CLIENT_VERSION_CURRENT;
++  // client version matches the version of libCEC that we originally used the API from
++  m_configuration.clientVersion = CEC_CLIENT_VERSION_2_2_0;
+ 
+   // device name 'XBMC'
+   snprintf(m_configuration.strDeviceName, 13, "%s", GetSettingString("device_name").c_str());
+@@ -1378,8 +1378,13 @@ void CPeripheralCecAdapter::SetConfigurationFromSettings(void)
+   m_configuration.bPowerOffOnStandby = iStandbyAction == 13011 ? 1 : 0;
+   m_configuration.bShutdownOnStandby = iStandbyAction == 13005 ? 1 : 0;
+ 
+-  // double tap prevention timeout in ms
++#if defined(CEC_DOUBLE_TAP_TIMEOUT_MS_OLD)
++  // double tap prevention timeout in ms. libCEC uses 50ms units for this in 2.2.0, so divide by 50
++  m_configuration.iDoubleTapTimeout50Ms = GetSettingInt("double_tap_timeout_ms") / 50;
++#else
++  // backwards compatibility. will be removed once the next major release of libCEC is out
+   m_configuration.iDoubleTapTimeoutMs = GetSettingInt("double_tap_timeout_ms");
++#endif
+ }
+ 
+ void CPeripheralCecAdapter::ReadLogicalAddresses(const CStdString &strString, cec_logical_addresses &addresses)
+-- 
+2.1.3
+



More information about the arch-commits mailing list