mirror of
https://github.com/VDR4Arch/vdr.git
synced 2023-10-10 13:36:52 +02:00
Now always using stream id 0xE0 for the video stream
This commit is contained in:
parent
b28336340d
commit
f418ef02f8
@ -978,6 +978,8 @@ Reinhard Nissl <rnissl@gmx.de>
|
|||||||
for fixing cDvbSpuBitmap::putPixel()
|
for fixing cDvbSpuBitmap::putPixel()
|
||||||
for implementing cAudioRepacker in remux.c
|
for implementing cAudioRepacker in remux.c
|
||||||
for modifying handling of audio packets for radio channels 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>
|
Richard Robson <richard_robson@beeb.net>
|
||||||
for reporting freezing replay if a timer starts while in Transfer Mode from the
|
for reporting freezing replay if a timer starts while in Transfer Mode from the
|
||||||
|
2
HISTORY
2
HISTORY
@ -3754,3 +3754,5 @@ Video Disk Recorder Revision History
|
|||||||
this one).
|
this one).
|
||||||
- Fixed appending sequence end code in cDvbPlayer::Goto() (thanks to Reinhard Nissl).
|
- Fixed appending sequence end code in cDvbPlayer::Goto() (thanks to Reinhard Nissl).
|
||||||
- Fixed syncing in cRepacker (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).
|
||||||
|
16
remux.c
16
remux.c
@ -11,7 +11,7 @@
|
|||||||
* The cRepacker family's code was originally written by Reinhard Nissl <rnissl@gmx.de>,
|
* 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.
|
* 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"
|
#include "remux.h"
|
||||||
@ -1265,7 +1265,7 @@ private:
|
|||||||
int count;
|
int count;
|
||||||
uint8_t *buf;
|
uint8_t *buf;
|
||||||
uint8_t cid;
|
uint8_t cid;
|
||||||
uint8_t audioCid;
|
uint8_t rewriteCid;
|
||||||
uint8_t subStreamId;
|
uint8_t subStreamId;
|
||||||
int plength;
|
int plength;
|
||||||
uint8_t plen[2];
|
uint8_t plen[2];
|
||||||
@ -1289,7 +1289,7 @@ private:
|
|||||||
void write_ipack(const uint8_t *Data, int Count);
|
void write_ipack(const uint8_t *Data, int Count);
|
||||||
void instant_repack(const uint8_t *Buf, int Count);
|
void instant_repack(const uint8_t *Buf, int Count);
|
||||||
public:
|
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();
|
~cTS2PES();
|
||||||
int Pid(void) { return pid; }
|
int Pid(void) { return pid; }
|
||||||
void ts_to_pes(const uint8_t *Buf); // don't need count (=188)
|
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 };
|
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;
|
pid = Pid;
|
||||||
resultBuffer = ResultBuffer;
|
resultBuffer = ResultBuffer;
|
||||||
size = Size;
|
size = Size;
|
||||||
audioCid = AudioCid;
|
rewriteCid = RewriteCid;
|
||||||
subStreamId = SubStreamId;
|
subStreamId = SubStreamId;
|
||||||
repacker = Repacker;
|
repacker = Repacker;
|
||||||
if (repacker) {
|
if (repacker) {
|
||||||
@ -1365,7 +1365,7 @@ void cTS2PES::send_ipack(void)
|
|||||||
{
|
{
|
||||||
if (count <= ((mpeg == 2) ? 9 : 7)) // skip empty packets
|
if (count <= ((mpeg == 2) ? 9 : 7)) // skip empty packets
|
||||||
return;
|
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[4] = (uint8_t)(((count - 6) & 0xFF00) >> 8);
|
||||||
buf[5] = (uint8_t)((count - 6) & 0x00FF);
|
buf[5] = (uint8_t)((count - 6) & 0x00FF);
|
||||||
store(buf, count);
|
store(buf, count);
|
||||||
@ -1681,9 +1681,9 @@ cRemux::cRemux(int VPid, const int *APids, const int *DPids, const int *SPids, b
|
|||||||
if (VPid)
|
if (VPid)
|
||||||
#define TEST_cVideoRepacker
|
#define TEST_cVideoRepacker
|
||||||
#ifdef 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
|
#else
|
||||||
ts2pes[numTracks++] = new cTS2PES(VPid, resultBuffer, IPACKS);
|
ts2pes[numTracks++] = new cTS2PES(VPid, resultBuffer, IPACKS, 0xE0);
|
||||||
#endif
|
#endif
|
||||||
if (APids) {
|
if (APids) {
|
||||||
int n = 0;
|
int n = 0;
|
||||||
|
Loading…
Reference in New Issue
Block a user