diff options
author | schmirl <schmirl> | 2007-04-24 11:13:05 +0000 |
---|---|---|
committer | schmirl <schmirl> | 2007-04-24 11:13:05 +0000 |
commit | 52bf110aa9108dee206463c33a03bf55c3be3534 (patch) | |
tree | da7fdd0d5802d6777529f201f27e0dbe2c72d955 /server/livestreamer.h | |
parent | 2e7fe3c3376ace5f5b6f913ccba6182fdf7b310a (diff) | |
download | vdr-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.h | 6 |
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); |