summaryrefslogtreecommitdiffstats
path: root/libmpdemux/demux_rtp_internal.h
diff options
context:
space:
mode:
authorrsf <rsf@b3059339-0415-0410-9bf9-f77b7e298cf2>2003-03-11 19:08:31 +0000
committerrsf <rsf@b3059339-0415-0410-9bf9-f77b7e298cf2>2003-03-11 19:08:31 +0000
commit555b3f61fed249553250b4264260623127ade64e (patch)
treebd3617095c7de546efc8915c2ae820f8db81a599 /libmpdemux/demux_rtp_internal.h
parentc9dd54daf92bb9a9aa71e832840cb1e1f38e6f41 (diff)
downloadmpv-555b3f61fed249553250b4264260623127ade64e.tar.bz2
mpv-555b3f61fed249553250b4264260623127ade64e.tar.xz
Improved RTP packet buffering, by relying on the underlying OS's UDP
socket buffering. Improve A/V sync by dropping packets when one stream gets too far behind the other. Now tries to figure out the video frame rate automatically (if "-fps" is not used). Added support for MPEG-4 Elementary Stream video and MPEG-4 Generic audio RTP streams. git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@9566 b3059339-0415-0410-9bf9-f77b7e298cf2
Diffstat (limited to 'libmpdemux/demux_rtp_internal.h')
-rw-r--r--libmpdemux/demux_rtp_internal.h15
1 files changed, 12 insertions, 3 deletions
diff --git a/libmpdemux/demux_rtp_internal.h b/libmpdemux/demux_rtp_internal.h
index e9499bdb0f..cae40f1754 100644
--- a/libmpdemux/demux_rtp_internal.h
+++ b/libmpdemux/demux_rtp_internal.h
@@ -16,6 +16,10 @@ extern "C" {
#include <liveMedia.hh>
#endif
+#if (LIVEMEDIA_LIBRARY_VERSION_INT < 1046649600)
+#error Please upgrade to version 2003.03.03 or later of the "LIVE.COM Streaming Media" libraries - available from <www.live.com/liveMedia/>
+#endif
+
// Codec-specific initialization routines:
void rtpCodecInitialize_video(demuxer_t* demuxer,
MediaSubsession* subsession, unsigned& flags);
@@ -23,14 +27,19 @@ void rtpCodecInitialize_audio(demuxer_t* demuxer,
MediaSubsession* subsession, unsigned& flags);
// Flags that may be set by the above routines:
-#define RTPSTATE_IS_MPEG 0x1 // is an MPEG audio, video or transport stream
+#define RTPSTATE_IS_MPEG12_VIDEO 0x1 // is a MPEG-1 or 2 video stream
// A routine to wait for the first packet of a RTP stream to arrive.
// (For some RTP payload formats, codecs cannot be fully initialized until
// we've started receiving data.)
-Boolean awaitRTPPacket(demuxer_t* demuxer, unsigned streamType,
- unsigned char*& packetData, unsigned& packetDataLen);
+Boolean awaitRTPPacket(demuxer_t* demuxer, demux_stream_t* ds,
+ unsigned char*& packetData, unsigned& packetDataLen,
+ float& pts);
// "streamType": 0 => video; 1 => audio
// This routine returns False if the input stream has closed
+// A routine for adding our own data to an incoming RTP data stream:
+Boolean insertRTPData(demuxer_t* demuxer, demux_stream_t* ds,
+ unsigned char* data, unsigned dataLen);
+
#endif