1 #ifndef DEMUX_RTP_INTERNAL_H
2 #define DEMUX_RTP_INTERNAL_H
8 #include "stream/stream.h"
13 #ifdef USE_LIBAVCODEC_SO
14 #include <ffmpeg/avcodec.h>
15 #elif defined(USE_LIBAVCODEC)
16 #include "libavcodec/avcodec.h"
22 #include <liveMedia.hh>
25 // Codec-specific initialization routines:
26 void rtpCodecInitialize_video(demuxer_t
* demuxer
,
27 MediaSubsession
* subsession
, unsigned& flags
);
28 void rtpCodecInitialize_audio(demuxer_t
* demuxer
,
29 MediaSubsession
* subsession
, unsigned& flags
);
31 // Flags that may be set by the above routines:
32 #define RTPSTATE_IS_MPEG12_VIDEO 0x1 // is a MPEG-1 or 2 video stream
33 #define RTPSTATE_IS_MULTIPLEXED 0x2 // is a combined audio+video stream
35 // A routine to wait for the first packet of a RTP stream to arrive.
36 // (For some RTP payload formats, codecs cannot be fully initialized until
37 // we've started receiving data.)
38 Boolean
awaitRTPPacket(demuxer_t
* demuxer
, demux_stream_t
* ds
,
39 unsigned char*& packetData
, unsigned& packetDataLen
,
41 // "streamType": 0 => video; 1 => audio
42 // This routine returns False if the input stream has closed