21 #ifndef _MP3_ADU_INTERLEAVING_HH
22 #define _MP3_ADU_INTERLEAVING_HH
24 #ifndef _FRAMED_FILTER_HH
29 #define MAX_CYCLE_SIZE 256
55 char const* inputSourceName);
57 unsigned numBytesRead,
58 unsigned numTruncatedBytes,
59 struct timeval presentationTime,
60 unsigned durationInMicroseconds);
62 struct timeval presentationTime,
63 unsigned durationInMicroseconds) = 0;
86 struct timeval presentationTime,
87 unsigned durationInMicroseconds);
117 struct timeval presentationTime,
118 unsigned durationInMicroseconds);
FramedSource * inputSource() const
unsigned char lookupInverseCycle(unsigned char index) const
Interleaving(unsigned cycleSize, unsigned char const *cycleArray)
unsigned cycleSize() const
unsigned char fInverseCycle[MAX_CYCLE_SIZE]
static MP3ADUdeinterleaver * createNew(UsageEnvironment &env, FramedSource *inputSource)
virtual ~MP3ADUdeinterleaver()
virtual void afterGettingFrame(unsigned numBytesRead, struct timeval presentationTime, unsigned durationInMicroseconds)
MP3ADUdeinterleaver(UsageEnvironment &env, FramedSource *inputSource)
void releaseOutgoingFrame()
virtual void doGetNextFrame()
class DeinterleavingFrames * fFrames
virtual void afterGettingFrame(unsigned numBytesRead, struct timeval presentationTime, unsigned durationInMicroseconds)=0
static void afterGettingFrame(void *clientData, unsigned numBytesRead, unsigned numTruncatedBytes, struct timeval presentationTime, unsigned durationInMicroseconds)
static FramedSource * getInputSource(UsageEnvironment &env, char const *inputSourceName)
MP3ADUinterleaverBase(UsageEnvironment &env, FramedSource *inputSource)
virtual ~MP3ADUinterleaverBase()
virtual ~MP3ADUinterleaver()
void releaseOutgoingFrame()
unsigned char fPositionOfNextIncomingFrame
static MP3ADUinterleaver * createNew(UsageEnvironment &env, Interleaving const &interleaving, FramedSource *inputSource)
Interleaving const fInterleaving
virtual void afterGettingFrame(unsigned numBytesRead, struct timeval presentationTime, unsigned durationInMicroseconds)
MP3ADUinterleaver(UsageEnvironment &env, Interleaving const &interleaving, FramedSource *inputSource)
class InterleavingFrames * fFrames
virtual void doGetNextFrame()