diff --git a/packages/3rdparty/multimedia/vdr-iptv/meta b/packages/3rdparty/multimedia/vdr-iptv/meta index 709e222bae..878c216d7b 100644 --- a/packages/3rdparty/multimedia/vdr-iptv/meta +++ b/packages/3rdparty/multimedia/vdr-iptv/meta @@ -19,7 +19,7 @@ ################################################################################ PKG_NAME="vdr-iptv" -PKG_VERSION="0.4.2" +PKG_VERSION="0.5.0" PKG_REV="1" PKG_ARCH="any" PKG_LICENSE="GPL" diff --git a/packages/3rdparty/multimedia/vdr-plugin-streamdev/build b/packages/3rdparty/multimedia/vdr-plugin-streamdev/build new file mode 100755 index 0000000000..fefe2cad64 --- /dev/null +++ b/packages/3rdparty/multimedia/vdr-plugin-streamdev/build @@ -0,0 +1,29 @@ +#!/bin/sh + +################################################################################ +# This file is part of OpenELEC - http://www.openelec.tv +# Copyright (C) 2009-2012 Stephan Raue (stephan@openelec.tv) +# +# This Program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2, or (at your option) +# any later version. +# +# This Program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with OpenELEC.tv; see the file COPYING. If not, write to +# the Free Software Foundation, 51 Franklin Street, Suite 500, Boston, MA 02110, USA. +# http://www.gnu.org/copyleft/gpl.html +################################################################################ + +. config/options $1 + +VDR_DIR=`basename $BUILD/vdr-[0-9]*` + +cd $PKG_BUILD + PWD=`pwd` + make VDRDIR="$PWD/../$VDR_DIR" LIBDIR="." LOCALEDIR="./locale" diff --git a/packages/3rdparty/multimedia/vdr-plugin-streamdev/install b/packages/3rdparty/multimedia/vdr-plugin-streamdev/install new file mode 100755 index 0000000000..15b9c2c979 --- /dev/null +++ b/packages/3rdparty/multimedia/vdr-plugin-streamdev/install @@ -0,0 +1,26 @@ +#!/bin/sh + +################################################################################ +# This file is part of OpenELEC - http://www.openelec.tv +# Copyright (C) 2009-2012 Stephan Raue (stephan@openelec.tv) +# +# This Program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2, or (at your option) +# any later version. +# +# This Program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with OpenELEC.tv; see the file COPYING. If not, write to +# the Free Software Foundation, 51 Franklin Street, Suite 500, Boston, MA 02110, USA. +# http://www.gnu.org/copyleft/gpl.html +################################################################################ + +. config/options $1 + +mkdir -p $INSTALL/usr/lib/vdr + cp $PKG_BUILD/libvdr-streamdev*.so.* $INSTALL/usr/lib/vdr diff --git a/packages/3rdparty/multimedia/vdr-plugin-streamdev/meta b/packages/3rdparty/multimedia/vdr-plugin-streamdev/meta new file mode 100644 index 0000000000..7ae68b794c --- /dev/null +++ b/packages/3rdparty/multimedia/vdr-plugin-streamdev/meta @@ -0,0 +1,37 @@ +################################################################################ +# This file is part of OpenELEC - http://www.openelec.tv +# Copyright (C) 2009-2012 Stephan Raue (stephan@openelec.tv) +# +# This Program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2, or (at your option) +# any later version. +# +# This Program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with OpenELEC.tv; see the file COPYING. If not, write to +# the Free Software Foundation, 51 Franklin Street, Suite 500, Boston, MA 02110, USA. +# http://www.gnu.org/copyleft/gpl.html +################################################################################ + +PKG_NAME="vdr-plugin-streamdev" +PKG_VERSION="a63f724" +PKG_REV="1" +PKG_ARCH="any" +PKG_LICENSE="GPL" +PKG_SITE="http://projects.vdr-developer.org/projects/show/plg-streamdev" +PKG_URL="$DISTRO_SRC/$PKG_NAME-$PKG_VERSION.tar.xz" +PKG_DEPENDS="vdr openssl" +PKG_BUILD_DEPENDS="toolchain vdr openssl" +PKG_PRIORITY="optional" +PKG_SECTION="multimedia" +PKG_SHORTDESC="TV" +PKG_LONGDESC="TV" + +PKG_IS_ADDON="no" + +PKG_AUTORECONF="no" diff --git a/packages/3rdparty/multimedia/vdr-plugin-streamdev/patches/vdr-plugin-streamdev-a63f724-makefile.patch b/packages/3rdparty/multimedia/vdr-plugin-streamdev/patches/vdr-plugin-streamdev-a63f724-makefile.patch new file mode 100644 index 0000000000..12987a2d40 --- /dev/null +++ b/packages/3rdparty/multimedia/vdr-plugin-streamdev/patches/vdr-plugin-streamdev-a63f724-makefile.patch @@ -0,0 +1,19 @@ +commit 949a46ec2ea06d97a7fcd47adc33153215399ac5 +Author: Stefan Saraev +Date: Sun Mar 4 16:39:58 2012 +0200 + + vdr-streamdev: adjust makefile for openelec + +diff --git a/Makefile b/Makefile +index b375844..231041f 100644 +--- a/Makefile ++++ b/Makefile +@@ -21,8 +21,6 @@ VERSION = $(shell grep 'const char \*VERSION *=' common.c | awk '{ print $$5 }' + + ### The directory environment: + +-VDRDIR = ../../.. +-LIBDIR = ../../lib + TMPDIR = /tmp + + ### The version number of VDR (taken from VDR's "config.h"): diff --git a/packages/3rdparty/multimedia/vdr-plugin-xvdr/meta b/packages/3rdparty/multimedia/vdr-plugin-xvdr/meta index e925066765..a81e1f9f42 100644 --- a/packages/3rdparty/multimedia/vdr-plugin-xvdr/meta +++ b/packages/3rdparty/multimedia/vdr-plugin-xvdr/meta @@ -19,7 +19,7 @@ ################################################################################ PKG_NAME="vdr-plugin-xvdr" -PKG_VERSION="0ac808a" +PKG_VERSION="c98852f" PKG_REV="1" PKG_ARCH="any" PKG_LICENSE="GPL" diff --git a/packages/3rdparty/multimedia/vdr/meta b/packages/3rdparty/multimedia/vdr/meta index 84dabccc63..484838837a 100644 --- a/packages/3rdparty/multimedia/vdr/meta +++ b/packages/3rdparty/multimedia/vdr/meta @@ -20,7 +20,7 @@ ################################################################################ PKG_NAME="vdr" -PKG_VERSION="1.7.24" +PKG_VERSION="1.7.25" PKG_REV="1" PKG_ARCH="any" PKG_LICENSE="GPL" diff --git a/packages/3rdparty/multimedia/vdr/patches/vdr-1.7.24-disable_ca_updates.patch b/packages/3rdparty/multimedia/vdr/patches/vdr-1.7.25-disable_ca_updates.patch similarity index 100% rename from packages/3rdparty/multimedia/vdr/patches/vdr-1.7.24-disable_ca_updates.patch rename to packages/3rdparty/multimedia/vdr/patches/vdr-1.7.25-disable_ca_updates.patch diff --git a/packages/3rdparty/multimedia/vdr/patches/vdr-1.7.24-disable_eitscan.patch b/packages/3rdparty/multimedia/vdr/patches/vdr-1.7.25-disable_eitscan.patch similarity index 100% rename from packages/3rdparty/multimedia/vdr/patches/vdr-1.7.24-disable_eitscan.patch rename to packages/3rdparty/multimedia/vdr/patches/vdr-1.7.25-disable_eitscan.patch diff --git a/packages/3rdparty/multimedia/vdr/patches/vdr-1.7.24-dynamite-subdevice.patch b/packages/3rdparty/multimedia/vdr/patches/vdr-1.7.25-dynamite-subdevice.patch similarity index 89% rename from packages/3rdparty/multimedia/vdr/patches/vdr-1.7.24-dynamite-subdevice.patch rename to packages/3rdparty/multimedia/vdr/patches/vdr-1.7.25-dynamite-subdevice.patch index 8b96cb1a4f..9a4e59b964 100644 --- a/packages/3rdparty/multimedia/vdr/patches/vdr-1.7.24-dynamite-subdevice.patch +++ b/packages/3rdparty/multimedia/vdr/patches/vdr-1.7.25-dynamite-subdevice.patch @@ -1,5 +1,11 @@ +commit 0e0b199ea828148d82b08e0702eb3dc1b49fc5f4 +Author: Stefan Saraev +Date: Sun Mar 4 15:55:17 2012 +0200 + + vdr-dynamite: adjust to 1.7.25 + diff --git a/ci.c b/ci.c -index 59d62ef..6c5face 100644 +index 0135d07..cf21952 100644 --- a/ci.c +++ b/ci.c @@ -1571,6 +1571,8 @@ cCamSlot::cCamSlot(cCiAdapter *CiAdapter) @@ -12,7 +18,7 @@ index 59d62ef..6c5face 100644 DeleteAllConnections(); } diff --git a/ci.h b/ci.h -index 71bbdf9..70303d1 100644 +index 74e0270..d38e2dd 100644 --- a/ci.h +++ b/ci.h @@ -115,6 +115,8 @@ public: @@ -25,10 +31,10 @@ index 71bbdf9..70303d1 100644 class cTPDU; diff --git a/device.c b/device.c -index 0bab66c..60382dd 100644 +index 663f91a..c0810fa 100644 --- a/device.c +++ b/device.c -@@ -72,12 +72,22 @@ cDevice *cDevice::device[MAXDEVICES] = { NULL }; +@@ -70,12 +70,22 @@ cDevice *cDevice::device[MAXDEVICES] = { NULL }; cDevice *cDevice::primaryDevice = NULL; cDevice *cDevice::avoidDevice = NULL; cList cDevice::deviceHooks; @@ -56,7 +62,7 @@ index 0bab66c..60382dd 100644 SetDescription("receiver on device %d", CardIndex() + 1); -@@ -110,10 +120,14 @@ cDevice::cDevice(void) +@@ -106,10 +116,14 @@ cDevice::cDevice(void) for (int i = 0; i < MAXRECEIVERS; i++) receiver[i] = NULL; @@ -74,7 +80,7 @@ index 0bab66c..60382dd 100644 } cDevice::~cDevice() -@@ -122,6 +136,29 @@ cDevice::~cDevice() +@@ -118,6 +132,29 @@ cDevice::~cDevice() DetachAllReceivers(); delete liveSubtitle; delete dvbSubtitleConverter; @@ -104,7 +110,7 @@ index 0bab66c..60382dd 100644 } bool cDevice::WaitForAllDevicesReady(int Timeout) -@@ -160,6 +197,8 @@ int cDevice::NextCardIndex(int n) +@@ -156,6 +193,8 @@ int cDevice::NextCardIndex(int n) int cDevice::DeviceNumber(void) const { @@ -113,7 +119,7 @@ index 0bab66c..60382dd 100644 for (int i = 0; i < numDevices; i++) { if (device[i] == this) return i; -@@ -330,6 +369,8 @@ bool cDevice::HasCi(void) +@@ -326,6 +365,8 @@ bool cDevice::HasCi(void) void cDevice::SetCamSlot(cCamSlot *CamSlot) { @@ -122,7 +128,7 @@ index 0bab66c..60382dd 100644 camSlot = CamSlot; } -@@ -533,6 +574,10 @@ bool cDevice::SetPid(cPidHandle *Handle, int Type, bool On) +@@ -538,6 +579,10 @@ void cDevice::DelLivePids(void) void cDevice::StartSectionHandler(void) { @@ -133,7 +139,7 @@ index 0bab66c..60382dd 100644 if (!sectionHandler) { sectionHandler = new cSectionHandler(this); AttachFilter(eitFilter = new cEitFilter); -@@ -544,6 +589,10 @@ void cDevice::StartSectionHandler(void) +@@ -549,6 +594,10 @@ void cDevice::StartSectionHandler(void) void cDevice::StopSectionHandler(void) { @@ -144,7 +150,7 @@ index 0bab66c..60382dd 100644 if (sectionHandler) { delete nitFilter; delete sdtFilter; -@@ -570,12 +619,17 @@ void cDevice::CloseFilter(int Handle) +@@ -575,12 +624,17 @@ void cDevice::CloseFilter(int Handle) void cDevice::AttachFilter(cFilter *Filter) { @@ -162,7 +168,7 @@ index 0bab66c..60382dd 100644 if (sectionHandler) sectionHandler->Detach(Filter); } -@@ -737,6 +791,7 @@ eSetChannelResult cDevice::SetChannel(const cChannel *Channel, bool LiveView) +@@ -742,6 +796,7 @@ eSetChannelResult cDevice::SetChannel(const cChannel *Channel, bool LiveView) sectionHandler->SetStatus(false); sectionHandler->SetChannel(NULL); } @@ -170,7 +176,7 @@ index 0bab66c..60382dd 100644 // Tell the camSlot about the channel switch and add all PIDs of this // channel to it, for possible later decryption: if (camSlot) -@@ -783,19 +838,27 @@ void cDevice::ForceTransferMode(void) +@@ -788,19 +843,27 @@ void cDevice::ForceTransferMode(void) { if (!cTransferControl::ReceiverDevice()) { cChannel *Channel = Channels.GetByNumber(CurrentChannel()); @@ -199,7 +205,7 @@ index 0bab66c..60382dd 100644 if (Seconds >= 0) occupiedTimeout = time(NULL) + min(Seconds, MAXOCCUPIEDTIMEOUT); } -@@ -1167,7 +1230,10 @@ bool cDevice::Transferring(void) const +@@ -1173,7 +1236,10 @@ bool cDevice::Transferring(void) const bool cDevice::AttachPlayer(cPlayer *Player) { @@ -210,7 +216,7 @@ index 0bab66c..60382dd 100644 if (player) Detach(player); DELETENULL(liveSubtitle); -@@ -1186,6 +1252,8 @@ bool cDevice::AttachPlayer(cPlayer *Player) +@@ -1192,6 +1258,8 @@ bool cDevice::AttachPlayer(cPlayer *Player) void cDevice::Detach(cPlayer *Player) { @@ -219,7 +225,7 @@ index 0bab66c..60382dd 100644 if (Player && player == Player) { cPlayer *p = player; player = NULL; // avoids recursive calls to Detach() -@@ -1205,6 +1273,8 @@ void cDevice::Detach(cPlayer *Player) +@@ -1211,6 +1279,8 @@ void cDevice::Detach(cPlayer *Player) void cDevice::StopReplay(void) { @@ -228,25 +234,25 @@ index 0bab66c..60382dd 100644 if (player) { Detach(player); if (IsPrimaryDevice()) -@@ -1487,6 +1557,8 @@ int cDevice::PlayTs(const uchar *Data, int Length, bool VideoOnly) +@@ -1493,6 +1563,8 @@ int cDevice::PlayTs(const uchar *Data, int Length, bool VideoOnly) int cDevice::Priority(void) const { + if (parentDevice) + return parentDevice->Priority(); - int priority = IsPrimaryDevice() ? Setup.PrimaryLimit - 1 : DEFAULTPRIORITY; - cMutexLock MutexLock(&mutexReceiver); - for (int i = 0; i < MAXRECEIVERS; i++) { -@@ -1503,6 +1575,8 @@ bool cDevice::Ready(void) + int priority = IDLEPRIORITY; + if (IsPrimaryDevice() && !Replaying() && ActualDevice() == PrimaryDevice()) + priority = TRANSFERPRIORITY; // we use the same value here, no matter whether it's actual Transfer Mode or real live viewing +@@ -1511,6 +1583,8 @@ bool cDevice::Ready(void) - bool cDevice::Receiving(bool CheckAny) const + bool cDevice::Receiving(bool Dummy) const { + if (parentDevice) -+ return parentDevice->Receiving(CheckAny); ++ return parentDevice->Receiving(Dummy); cMutexLock MutexLock(&mutexReceiver); for (int i = 0; i < MAXRECEIVERS; i++) { - if (receiver[i] && (CheckAny || receiver[i]->priority >= 0)) // cReceiver with priority < 0 doesn't count -@@ -1583,10 +1657,13 @@ bool cDevice::GetTSPacket(uchar *&Data) + if (receiver[i]) +@@ -1591,10 +1665,13 @@ bool cDevice::GetTSPacket(uchar *&Data) bool cDevice::AttachReceiver(cReceiver *Receiver) { @@ -260,7 +266,7 @@ index 0bab66c..60382dd 100644 // activate the following line if you need it - actually the driver should be fixed! //#define WAIT_FOR_TUNER_LOCK #ifdef WAIT_FOR_TUNER_LOCK -@@ -1625,6 +1702,8 @@ bool cDevice::AttachReceiver(cReceiver *Receiver) +@@ -1633,6 +1710,8 @@ bool cDevice::AttachReceiver(cReceiver *Receiver) void cDevice::Detach(cReceiver *Receiver) { @@ -269,7 +275,7 @@ index 0bab66c..60382dd 100644 if (!Receiver || Receiver->device != this) return; bool receiversLeft = false; -@@ -1650,6 +1729,8 @@ void cDevice::Detach(cReceiver *Receiver) +@@ -1658,6 +1737,8 @@ void cDevice::Detach(cReceiver *Receiver) void cDevice::DetachAll(int Pid) { @@ -278,7 +284,7 @@ index 0bab66c..60382dd 100644 if (Pid) { cMutexLock MutexLock(&mutexReceiver); for (int i = 0; i < MAXRECEIVERS; i++) { -@@ -1662,6 +1743,8 @@ void cDevice::DetachAll(int Pid) +@@ -1670,6 +1751,8 @@ void cDevice::DetachAll(int Pid) void cDevice::DetachAllReceivers(void) { @@ -287,7 +293,7 @@ index 0bab66c..60382dd 100644 cMutexLock MutexLock(&mutexReceiver); for (int i = 0; i < MAXRECEIVERS; i++) Detach(receiver[i]); -@@ -1733,3 +1816,25 @@ uchar *cTSBuffer::Get(void) +@@ -1741,3 +1824,25 @@ uchar *cTSBuffer::Get(void) } return NULL; } @@ -314,10 +320,10 @@ index 0bab66c..60382dd 100644 + DynamicDeviceProbes.Del(this, false); +} diff --git a/device.h b/device.h -index e2ff812..1db0d9d 100644 +index 23aea97..d4968cc 100644 --- a/device.h +++ b/device.h -@@ -164,7 +164,6 @@ private: +@@ -168,7 +168,6 @@ private: static int nextCardIndex; int cardIndex; protected: @@ -325,7 +331,7 @@ index e2ff812..1db0d9d 100644 virtual ~cDevice(); virtual bool Ready(void); ///< Returns true if this device is ready. Devices with conditional -@@ -191,9 +190,6 @@ protected: +@@ -195,9 +194,6 @@ protected: ///< A derived class must call the MakePrimaryDevice() function of its ///< base class. public: @@ -335,7 +341,7 @@ index e2ff812..1db0d9d 100644 int DeviceNumber(void) const; ///< Returns the number of this device (0 ... numDevices). virtual bool HasDecoder(void) const; -@@ -397,9 +393,6 @@ public: +@@ -403,9 +399,6 @@ public: ///< Returns true if this device has a Common Interface. void SetCamSlot(cCamSlot *CamSlot); ///< Sets the given CamSlot to be used with this device. @@ -345,7 +351,7 @@ index e2ff812..1db0d9d 100644 // Image Grab facilities -@@ -555,9 +548,6 @@ private: +@@ -561,9 +554,6 @@ private: cTsToPes tsToPesSubtitle; bool isPlayingVideo; protected: @@ -355,7 +361,7 @@ index e2ff812..1db0d9d 100644 virtual bool CanReplay(void) const; ///< Returns true if this device can currently start a replay session. virtual bool SetPlayMode(ePlayMode PlayMode); -@@ -743,6 +733,38 @@ public: +@@ -748,6 +738,38 @@ public: ///< Detaches all receivers from this device for this pid. virtual void DetachAllReceivers(void); ///< Detaches all receivers from this device. @@ -394,7 +400,7 @@ index e2ff812..1db0d9d 100644 }; /// Derived cDevice classes that can receive channels will have to provide -@@ -766,4 +788,47 @@ public: +@@ -771,4 +793,47 @@ public: uchar *Get(void); }; @@ -584,7 +590,7 @@ index adbe40d..6d117b2 100644 #endif //__DVBCI_H diff --git a/dvbdevice.c b/dvbdevice.c -index 163fce3..fd3f212 100644 +index 1987223..6795dca 100644 --- a/dvbdevice.c +++ b/dvbdevice.c @@ -305,12 +305,16 @@ private: @@ -637,7 +643,7 @@ index 163fce3..fd3f212 100644 } bool cDvbTuner::Bond(cDvbTuner *Tuner) -@@ -497,8 +507,10 @@ bool cDvbTuner::Locked(int TimeoutMs) +@@ -518,8 +528,10 @@ bool cDvbTuner::Locked(int TimeoutMs) return tunerStatus >= tsLocked; } @@ -649,7 +655,7 @@ index 163fce3..fd3f212 100644 cPoller Poller(fd_frontend); if (Poller.Poll(TUNER_POLL_TIMEOUT)) { dvb_frontend_event Event; -@@ -507,7 +519,7 @@ void cDvbTuner::ClearEventQueue(void) const +@@ -528,7 +540,7 @@ void cDvbTuner::ClearEventQueue(void) const } } @@ -658,7 +664,7 @@ index 163fce3..fd3f212 100644 { ClearEventQueue(); while (1) { -@@ -541,7 +553,7 @@ bool cDvbTuner::GetFrontendStatus(fe_status_t &Status) const +@@ -543,7 +555,7 @@ bool cDvbTuner::GetFrontendStatus(fe_status_t &Status) const //#define DEBUG_SIGNALSTRENGTH //#define DEBUG_SIGNALQUALITY @@ -667,7 +673,7 @@ index 163fce3..fd3f212 100644 { ClearEventQueue(); uint16_t Signal; -@@ -568,7 +580,7 @@ int cDvbTuner::GetSignalStrength(void) const +@@ -570,7 +582,7 @@ int cDvbTuner::GetSignalStrength(void) const #define LOCK_THRESHOLD 5 // indicates that all 5 FE_HAS_* flags are set @@ -676,7 +682,7 @@ index 163fce3..fd3f212 100644 { fe_status_t Status; if (GetFrontendStatus(Status)) { -@@ -708,6 +720,8 @@ static int GetRequiredDeliverySystem(const cChannel *Channel, const cDvbTranspon +@@ -710,6 +722,8 @@ static int GetRequiredDeliverySystem(const cChannel *Channel, const cDvbTranspon bool cDvbTuner::SetFrontend(void) { @@ -685,7 +691,7 @@ index 163fce3..fd3f212 100644 #define MAXFRONTENDCMDS 16 #define SETCMD(c, d) { Frontend[CmdSeq.num].cmd = (c);\ Frontend[CmdSeq.num].u.data = (d);\ -@@ -853,9 +867,11 @@ void cDvbTuner::Action(void) +@@ -855,9 +869,11 @@ void cDvbTuner::Action(void) bool LostLock = false; fe_status_t Status = (fe_status_t)0; while (Running()) { @@ -698,9 +704,9 @@ index 163fce3..fd3f212 100644 + Status = NewStatus; + } cMutexLock MutexLock(&mutex); + int WaitTime = 1000; switch (tunerStatus) { - case tsIdle: -@@ -911,6 +927,40 @@ void cDvbTuner::Action(void) +@@ -913,6 +929,40 @@ void cDvbTuner::Action(void) } } @@ -741,7 +747,7 @@ index 163fce3..fd3f212 100644 // --- cDvbSourceParam ------------------------------------------------------- class cDvbSourceParam : public cSourceParam { -@@ -996,7 +1046,8 @@ const char *DeliverySystemNames[] = { +@@ -998,7 +1048,8 @@ const char *DeliverySystemNames[] = { NULL }; @@ -751,7 +757,7 @@ index 163fce3..fd3f212 100644 { adapter = Adapter; frontend = Frontend; -@@ -1015,7 +1066,7 @@ cDvbDevice::cDvbDevice(int Adapter, int Frontend) +@@ -1018,7 +1069,7 @@ cDvbDevice::cDvbDevice(int Adapter, int Frontend) fd_ca = DvbOpen(DEV_DVB_CA, adapter, frontend, O_RDWR); if (fd_ca >= 0) @@ -760,7 +766,7 @@ index 163fce3..fd3f212 100644 // The DVR device (will be opened and closed as needed): -@@ -1123,7 +1176,11 @@ bool cDvbDevice::BondDevices(const char *Bondings) +@@ -1230,7 +1281,11 @@ bool cDvbDevice::BondDevices(const char *Bondings) if (d >= 0) { int ErrorDevice = 0; if (cDevice *Device1 = cDevice::GetDevice(i)) { @@ -772,7 +778,7 @@ index 163fce3..fd3f212 100644 if (cDvbDevice *DvbDevice1 = dynamic_cast(Device1)) { if (cDvbDevice *DvbDevice2 = dynamic_cast(Device2)) { if (!DvbDevice1->Bond(DvbDevice2)) -@@ -1242,7 +1297,10 @@ bool cDvbDevice::BondDevices(const char *Bondings) +@@ -1264,7 +1319,10 @@ bool cDvbDevice::BondDevices(const char *Bondings) void cDvbDevice::UnBondDevices(void) { for (int i = 0; i < cDevice::NumDevices(); i++) { @@ -784,7 +790,7 @@ index 163fce3..fd3f212 100644 d->UnBond(); } } -@@ -1211,6 +1271,26 @@ bool cDvbDevice::BondingOk(const cChannel *Channel, bool ConsiderOccupied) const +@@ -1318,6 +1376,26 @@ bool cDvbDevice::BondingOk(const cChannel *Channel, bool ConsiderOccupied) const return true; } @@ -811,7 +817,7 @@ index 163fce3..fd3f212 100644 bool cDvbDevice::HasCi(void) { return ciAdapter; -@@ -1370,7 +1450,7 @@ bool cDvbDevice::ProvidesChannel(const cChannel *Channel, int Priority, bool *Ne +@@ -1484,7 +1562,7 @@ bool cDvbDevice::ProvidesChannel(const cChannel *Channel, int Priority, bool *Ne bool cDvbDevice::ProvidesEIT(void) const { @@ -821,10 +827,10 @@ index 163fce3..fd3f212 100644 int cDvbDevice::NumProvidedSystems(void) const diff --git a/dvbdevice.h b/dvbdevice.h -index 2072ab2..d9f6e8d 100644 +index 85b0d9c..2dcb319 100644 --- a/dvbdevice.h +++ b/dvbdevice.h -@@ -102,7 +102,7 @@ class cDvbTuner; +@@ -107,7 +107,7 @@ class cDvbTuner; /// The cDvbDevice implements a DVB device which can be accessed through the Linux DVB driver API. class cDvbDevice : public cDevice { @@ -833,7 +839,7 @@ index 2072ab2..d9f6e8d 100644 static cString DvbName(const char *Name, int Adapter, int Frontend); static int DvbOpen(const char *Name, int Adapter, int Frontend, int Mode, bool ReportError = false); private: -@@ -132,11 +132,13 @@ private: +@@ -133,11 +133,13 @@ private: mutable bool needsDetachBondedReceivers; bool QueryDeliverySystems(int fd_frontend); public: diff --git a/packages/addons/service/multimedia/vdr-addon/addon b/packages/addons/service/multimedia/vdr-addon/addon index 71b3c8177e..8fb417a754 100755 --- a/packages/addons/service/multimedia/vdr-addon/addon +++ b/packages/addons/service/multimedia/vdr-addon/addon @@ -43,6 +43,8 @@ mkdir -p $ADDON_BUILD/$PKG_ADDON_ID/plugin cp -PR $BUILD/vdr-plugin-dvbapi-*/libvdr*.so.* $ADDON_BUILD/$PKG_ADDON_ID/plugin cp -PR $BUILD/vdr-sc-*/libvdr*.so.* $ADDON_BUILD/$PKG_ADDON_ID/plugin cp -PR $BUILD/vdr-sc-*/systems/*/libsc*.so.* $ADDON_BUILD/$PKG_ADDON_ID/plugin + cp -PR $BUILD/vdr-plugin-streamdev-*/server/libvdr*.so.* $ADDON_BUILD/$PKG_ADDON_ID/plugin + cp -PR $BUILD/vdr-plugin-streamdev-*/client/libvdr*.so.* $ADDON_BUILD/$PKG_ADDON_ID/plugin # ENABLED_PLUGINS="cardclient constcw sc-conax sc-cryptoworks sc-irdeto sc-nagra sc-seca sc-viaccess sc-videoguard2" # for plugin in $ENABLED_PLUGINS; do @@ -59,3 +61,6 @@ mkdir -p $ADDON_BUILD/$PKG_ADDON_ID/bin mkdir -p $ADDON_BUILD/$PKG_ADDON_ID/lib cp -P $BUILD/attr-[0-9]*/libattr/.libs/*.so* $ADDON_BUILD/$PKG_ADDON_ID/lib cp -P $BUILD/libcap-[0-9]*/libcap/*.so* $ADDON_BUILD/$PKG_ADDON_ID/lib + +mkdir -p $ADDON_BUILD/$PKG_ADDON_ID/config/plugins/streamdev-server + cp -PR $BUILD/vdr-plugin-streamdev-*/streamdev-server/streamdevhosts.conf $ADDON_BUILD/$PKG_ADDON_ID/config/plugins/streamdev-server diff --git a/packages/addons/service/multimedia/vdr-addon/changelog.txt b/packages/addons/service/multimedia/vdr-addon/changelog.txt index f7725c4b77..8cebc000f1 100644 --- a/packages/addons/service/multimedia/vdr-addon/changelog.txt +++ b/packages/addons/service/multimedia/vdr-addon/changelog.txt @@ -1,3 +1,9 @@ +2.0.8 +- update to vdr-1.7.25 +- update to vdr-plugin-xvdr-c98852f +- add streamdev-client / server plugin +- update to vdr-iptv-0.5.0 + 2.0.7 - add possibilty to start / stop addon from addon manager with enable / disable diff --git a/packages/addons/service/multimedia/vdr-addon/meta b/packages/addons/service/multimedia/vdr-addon/meta index 5ec37a89cb..81b903b8bb 100755 --- a/packages/addons/service/multimedia/vdr-addon/meta +++ b/packages/addons/service/multimedia/vdr-addon/meta @@ -21,13 +21,13 @@ PKG_NAME="vdr-addon" PKG_VERSION="2.0" -PKG_REV="7" +PKG_REV="8" PKG_ARCH="any" PKG_LICENSE="GPL" PKG_SITE="http://www.openelec.tv" PKG_URL="" PKG_DEPENDS="" -PKG_BUILD_DEPENDS="toolchain attr libcap vdr vdr-plugin-xvdr vdr-iptv vdr-wirbelscan vdr-sc vdr-plugin-dvbapi vdr-dynamite w_scan" +PKG_BUILD_DEPENDS="toolchain attr libcap vdr vdr-plugin-xvdr vdr-iptv vdr-wirbelscan vdr-sc vdr-plugin-dvbapi vdr-dynamite w_scan vdr-plugin-streamdev" PKG_PRIORITY="optional" PKG_SECTION="service.multimedia" PKG_SHORTDESC="vdr: A powerful DVB TV application" diff --git a/tools/mkpkg/mkpkg_vdr-plugin-streamdev b/tools/mkpkg/mkpkg_vdr-plugin-streamdev new file mode 100755 index 0000000000..f925e05045 --- /dev/null +++ b/tools/mkpkg/mkpkg_vdr-plugin-streamdev @@ -0,0 +1,46 @@ +#!/bin/sh +################################################################################ +# This file is part of OpenELEC - http://www.openelec.tv +# Copyright (C) 2009-2012 Stephan Raue (stephan@openelec.tv) +# +# This Program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2, or (at your option) +# any later version. +# +# This Program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with OpenELEC.tv; see the file COPYING. If not, write to +# the Free Software Foundation, 51 Franklin Street, Suite 500, Boston, MA 02110, USA. +# http://www.gnu.org/copyleft/gpl.html +################################################################################ + +PKG_NAME="vdr-plugin-streamdev" +PKG_REPO="git://projects.vdr-developer.org/vdr-plugin-streamdev.git" + +echo "getting sources..." + if [ ! -d $PKG_NAME.git ]; then + git clone $PKG_REPO $PKG_NAME.git + fi + + cd $PKG_NAME.git + git pull + GIT_REV=`git log -n1 --format=%h` + cd .. + +echo "copying sources..." + rm -rf $PKG_NAME-$GIT_REV + cp -R $PKG_NAME.git $PKG_NAME-$GIT_REV + +echo "cleaning sources..." + rm -rf $PKG_NAME-$GIT_REV/.git + +echo "packing sources..." + tar cvJf $PKG_NAME-$GIT_REV.tar.xz $PKG_NAME-$GIT_REV + +echo "remove temporary sourcedir..." + rm -rf $PKG_NAME-$GIT_REV