summaryrefslogtreecommitdiff
path: root/remux/ts2ps.h
blob: 63ce99272fc30a45683096701e5430107b370532 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
#ifndef VDR_STREAMDEV_TS2PESREMUX_H
#define VDR_STREAMDEV_TS2PESREMUX_H

#include "remux/tsremux.h"
#include "server/streamer.h"

#ifndef MAXTRACKS
#define MAXTRACKS 64
#endif

namespace Streamdev {

class cTS2PS;

class cTS2PSRemux: public cTSRemux {
private:
	int                m_NumTracks;
	cTS2PS            *m_Remux[MAXTRACKS];
	cStreamdevBuffer  *m_ResultBuffer;
	int                m_ResultSkipped;
	int                m_Skipped;
	bool               m_Synced;
	bool               m_IsRadio;
	
public:
	cTS2PSRemux(int VPid, const int *Apids, const int *Dpids, const int *Spids);
	virtual ~cTS2PSRemux();

	int Put(const uchar *Data, int Count);
	uchar *Get(int &Count);
	void Del(int Count) { m_ResultBuffer->Del(Count); }
};

} // namespace Streamdev

#endif // VDR_STREAMDEV_TS2PESREMUX_H