diff options
author | Klaus Schmidinger <vdr@tvdr.de> | 2005-08-28 21:49:34 +0200 |
---|---|---|
committer | Klaus Schmidinger <vdr@tvdr.de> | 2005-08-28 21:49:34 +0200 |
commit | f418ef02f8436730415ccff84ef54f27f3186b4d (patch) | |
tree | 7f33fa1a2d789619777332921b9cfc841f5671eb | |
parent | b28336340d8bb7cde1b9929014a99794493f31a0 (diff) | |
download | vdr-f418ef02f8436730415ccff84ef54f27f3186b4d.tar.gz vdr-f418ef02f8436730415ccff84ef54f27f3186b4d.tar.bz2 |
Now always using stream id 0xE0 for the video stream
-rw-r--r-- | CONTRIBUTORS | 2 | ||||
-rw-r--r-- | HISTORY | 2 | ||||
-rw-r--r-- | remux.c | 16 |
3 files changed, 12 insertions, 8 deletions
diff --git a/CONTRIBUTORS b/CONTRIBUTORS index f094b506..bf2df2fd 100644 --- a/CONTRIBUTORS +++ b/CONTRIBUTORS @@ -978,6 +978,8 @@ Reinhard Nissl <rnissl@gmx.de> for fixing cDvbSpuBitmap::putPixel() for implementing cAudioRepacker in remux.c for modifying handling of audio packets for radio channels in remux.c + for suggesting to always use stream id 0xE0 for the video stream, to avoid problems + with post processing tools that choke on different ids Richard Robson <richard_robson@beeb.net> for reporting freezing replay if a timer starts while in Transfer Mode from the @@ -3754,3 +3754,5 @@ Video Disk Recorder Revision History this one). - Fixed appending sequence end code in cDvbPlayer::Goto() (thanks to Reinhard Nissl). - Fixed syncing in cRepacker (thanks to Reinhard Nissl). +- Now always using stream id 0xE0 for the video stream, to avoid problems with + post processing tools that choke on different ids (suggested by Reinhard Nissl). @@ -11,7 +11,7 @@ * The cRepacker family's code was originally written by Reinhard Nissl <rnissl@gmx.de>, * and adapted to the VDR coding style by Klaus.Schmidinger@cadsoft.de. * - * $Id: remux.c 1.44 2005/08/28 21:24:34 kls Exp $ + * $Id: remux.c 1.45 2005/08/28 21:44:51 kls Exp $ */ #include "remux.h" @@ -1265,7 +1265,7 @@ private: int count; uint8_t *buf; uint8_t cid; - uint8_t audioCid; + uint8_t rewriteCid; uint8_t subStreamId; int plength; uint8_t plen[2]; @@ -1289,7 +1289,7 @@ private: void write_ipack(const uint8_t *Data, int Count); void instant_repack(const uint8_t *Buf, int Count); public: - cTS2PES(int Pid, cRingBufferLinear *ResultBuffer, int Size, uint8_t AudioCid = 0x00, uint8_t SubStreamId = 0x00, cRepacker *Repacker = NULL); + cTS2PES(int Pid, cRingBufferLinear *ResultBuffer, int Size, uint8_t RewriteCid = 0x00, uint8_t SubStreamId = 0x00, cRepacker *Repacker = NULL); ~cTS2PES(); int Pid(void) { return pid; } void ts_to_pes(const uint8_t *Buf); // don't need count (=188) @@ -1298,12 +1298,12 @@ public: uint8_t cTS2PES::headr[] = { 0x00, 0x00, 0x01 }; -cTS2PES::cTS2PES(int Pid, cRingBufferLinear *ResultBuffer, int Size, uint8_t AudioCid, uint8_t SubStreamId, cRepacker *Repacker) +cTS2PES::cTS2PES(int Pid, cRingBufferLinear *ResultBuffer, int Size, uint8_t RewriteCid, uint8_t SubStreamId, cRepacker *Repacker) { pid = Pid; resultBuffer = ResultBuffer; size = Size; - audioCid = AudioCid; + rewriteCid = RewriteCid; subStreamId = SubStreamId; repacker = Repacker; if (repacker) { @@ -1365,7 +1365,7 @@ void cTS2PES::send_ipack(void) { if (count <= ((mpeg == 2) ? 9 : 7)) // skip empty packets return; - buf[3] = (AUDIO_STREAM_S <= cid && cid <= AUDIO_STREAM_E && audioCid) ? audioCid : cid; + buf[3] = rewriteCid ? rewriteCid : cid; buf[4] = (uint8_t)(((count - 6) & 0xFF00) >> 8); buf[5] = (uint8_t)((count - 6) & 0x00FF); store(buf, count); @@ -1681,9 +1681,9 @@ cRemux::cRemux(int VPid, const int *APids, const int *DPids, const int *SPids, b if (VPid) #define TEST_cVideoRepacker #ifdef TEST_cVideoRepacker - ts2pes[numTracks++] = new cTS2PES(VPid, resultBuffer, IPACKS, 0x00, 0x00, new cVideoRepacker); + ts2pes[numTracks++] = new cTS2PES(VPid, resultBuffer, IPACKS, 0xE0, 0x00, new cVideoRepacker); #else - ts2pes[numTracks++] = new cTS2PES(VPid, resultBuffer, IPACKS); + ts2pes[numTracks++] = new cTS2PES(VPid, resultBuffer, IPACKS, 0xE0); #endif if (APids) { int n = 0; |