summaryrefslogtreecommitdiff
path: root/server/livestreamer.h
diff options
context:
space:
mode:
authorschmirl <schmirl>2007-04-24 11:13:05 +0000
committerschmirl <schmirl>2007-04-24 11:13:05 +0000
commit52bf110aa9108dee206463c33a03bf55c3be3534 (patch)
treeda7fdd0d5802d6777529f201f27e0dbe2c72d955 /server/livestreamer.h
parent2e7fe3c3376ace5f5b6f913ccba6182fdf7b310a (diff)
downloadvdr-plugin-streamdev-52bf110aa9108dee206463c33a03bf55c3be3534.tar.gz
vdr-plugin-streamdev-52bf110aa9108dee206463c33a03bf55c3be3534.tar.bz2
server_ts-pat-pmt-filter.patch by Petri Hintukainen
- Add PAT, PMT and PCR to HTTP TS streams - Dynamically add and remove all related pids (of channel) to TS stream -> DVB/teletect subtitles work in clients -> VLC can be used as client -> HDTV (MPEG4 / H.264) streaming is possible -> Client can select audio and subtitle tracks on the fly without re-connection -> Client can display "real" track names / languages - Add new member function to set all pids in one shot -> Receiver is not deleted, created and re-attached separately for every pid (this causes discontinous start and is anyway unnecessarily) Modified Files: server/livestreamer.c server/livestreamer.h
Diffstat (limited to 'server/livestreamer.h')
-rw-r--r--server/livestreamer.h6
1 files changed, 6 insertions, 0 deletions
diff --git a/server/livestreamer.h b/server/livestreamer.h
index 1ad2bc2..d3c7f5f 100644
--- a/server/livestreamer.h
+++ b/server/livestreamer.h
@@ -12,6 +12,7 @@ class cTS2PSRemux;
class cTS2ESRemux;
class cExternRemux;
class cRemux;
+class cStreamdevPatFilter;
class cStreamdevLiveReceiver;
// --- cStreamdevLiveStreamer -------------------------------------------------
@@ -25,17 +26,22 @@ private:
const cChannel *m_Channel;
cDevice *m_Device;
cStreamdevLiveReceiver *m_Receiver;
+ cStreamdevPatFilter *m_PatFilter;
cRemux *m_PESRemux;
cTS2ESRemux *m_ESRemux;
cTS2PSRemux *m_PSRemux;
cExternRemux *m_ExtRemux;
+ void StartReceiver(void);
+ bool HasPid(int Pid);
+
public:
cStreamdevLiveStreamer(int Priority);
virtual ~cStreamdevLiveStreamer();
void SetDevice(cDevice *Device) { m_Device = Device; }
bool SetPid(int Pid, bool On);
+ bool SetPids(int Pid, const int *Pids1 = NULL, const int *Pids2 = NULL, const int *Pids3 = NULL);
bool SetChannel(const cChannel *Channel, eStreamType StreamType, int Apid = 0);
bool SetFilter(u_short Pid, u_char Tid, u_char Mask, bool On);