Mercurial > mplayer.hg
annotate libmpdemux/demux_rtp_internal.h @ 36189:71360817b772
Discard parts that we do not actually care about instead of
reading them in.
Since more than one character can match, this could read
beyond the target variable.
Based on patch by wm4 (nfxjfg googlemail.com).
author | reimar |
---|---|
date | Sat, 25 May 2013 12:06:55 +0000 |
parents | 4614728cab25 |
children |
rev | line source |
---|---|
29238
d643e4643313
Add standard license header to all files in libmpdemux.
diego
parents:
27341
diff
changeset
|
1 /* |
d643e4643313
Add standard license header to all files in libmpdemux.
diego
parents:
27341
diff
changeset
|
2 * This file is part of MPlayer. |
d643e4643313
Add standard license header to all files in libmpdemux.
diego
parents:
27341
diff
changeset
|
3 * |
d643e4643313
Add standard license header to all files in libmpdemux.
diego
parents:
27341
diff
changeset
|
4 * MPlayer is free software; you can redistribute it and/or modify |
d643e4643313
Add standard license header to all files in libmpdemux.
diego
parents:
27341
diff
changeset
|
5 * it under the terms of the GNU General Public License as published by |
d643e4643313
Add standard license header to all files in libmpdemux.
diego
parents:
27341
diff
changeset
|
6 * the Free Software Foundation; either version 2 of the License, or |
d643e4643313
Add standard license header to all files in libmpdemux.
diego
parents:
27341
diff
changeset
|
7 * (at your option) any later version. |
d643e4643313
Add standard license header to all files in libmpdemux.
diego
parents:
27341
diff
changeset
|
8 * |
d643e4643313
Add standard license header to all files in libmpdemux.
diego
parents:
27341
diff
changeset
|
9 * MPlayer is distributed in the hope that it will be useful, |
d643e4643313
Add standard license header to all files in libmpdemux.
diego
parents:
27341
diff
changeset
|
10 * but WITHOUT ANY WARRANTY; without even the implied warranty of |
d643e4643313
Add standard license header to all files in libmpdemux.
diego
parents:
27341
diff
changeset
|
11 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
d643e4643313
Add standard license header to all files in libmpdemux.
diego
parents:
27341
diff
changeset
|
12 * GNU General Public License for more details. |
d643e4643313
Add standard license header to all files in libmpdemux.
diego
parents:
27341
diff
changeset
|
13 * |
d643e4643313
Add standard license header to all files in libmpdemux.
diego
parents:
27341
diff
changeset
|
14 * You should have received a copy of the GNU General Public License along |
d643e4643313
Add standard license header to all files in libmpdemux.
diego
parents:
27341
diff
changeset
|
15 * with MPlayer; if not, write to the Free Software Foundation, Inc., |
d643e4643313
Add standard license header to all files in libmpdemux.
diego
parents:
27341
diff
changeset
|
16 * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. |
d643e4643313
Add standard license header to all files in libmpdemux.
diego
parents:
27341
diff
changeset
|
17 */ |
d643e4643313
Add standard license header to all files in libmpdemux.
diego
parents:
27341
diff
changeset
|
18 |
26029 | 19 #ifndef MPLAYER_DEMUX_RTP_INTERNAL_H |
20 #define MPLAYER_DEMUX_RTP_INTERNAL_H | |
9250 | 21 |
22 #include <stdlib.h> | |
23 | |
32084 | 24 #include "config.h" |
25 | |
9250 | 26 extern "C" { |
27 #include "demuxer.h" | |
32142
4614728cab25
build system: Merge all FFmpeg library checks into a single FFmpeg check.
diego
parents:
32084
diff
changeset
|
28 #ifdef CONFIG_FFMPEG |
22852 | 29 #include "libavcodec/avcodec.h" |
30 #endif | |
9250 | 31 } |
32 | |
33 #ifndef _LIVEMEDIA_HH | |
12530
773ad7374436
MinGW compilation fix, idea and approval by Sascha Sommer
diego
parents:
11754
diff
changeset
|
34 #undef STREAM_SEEK |
9250 | 35 #include <liveMedia.hh> |
36 #endif | |
37 | |
38 // Codec-specific initialization routines: | |
39 void rtpCodecInitialize_video(demuxer_t* demuxer, | |
40 MediaSubsession* subsession, unsigned& flags); | |
41 void rtpCodecInitialize_audio(demuxer_t* demuxer, | |
42 MediaSubsession* subsession, unsigned& flags); | |
43 | |
44 // Flags that may be set by the above routines: | |
9565
e74916774667
Improved RTP packet buffering, by relying on the underlying OS's UDP
rsf
parents:
9250
diff
changeset
|
45 #define RTPSTATE_IS_MPEG12_VIDEO 0x1 // is a MPEG-1 or 2 video stream |
10476
1bc3ac054b08
Added support for checking whether a RTP demuxer had combined audio+video data.
rsf
parents:
9565
diff
changeset
|
46 #define RTPSTATE_IS_MULTIPLEXED 0x2 // is a combined audio+video stream |
9250 | 47 |
48 // A routine to wait for the first packet of a RTP stream to arrive. | |
49 // (For some RTP payload formats, codecs cannot be fully initialized until | |
50 // we've started receiving data.) | |
9565
e74916774667
Improved RTP packet buffering, by relying on the underlying OS's UDP
rsf
parents:
9250
diff
changeset
|
51 Boolean awaitRTPPacket(demuxer_t* demuxer, demux_stream_t* ds, |
e74916774667
Improved RTP packet buffering, by relying on the underlying OS's UDP
rsf
parents:
9250
diff
changeset
|
52 unsigned char*& packetData, unsigned& packetDataLen, |
e74916774667
Improved RTP packet buffering, by relying on the underlying OS's UDP
rsf
parents:
9250
diff
changeset
|
53 float& pts); |
9250 | 54 // "streamType": 0 => video; 1 => audio |
55 // This routine returns False if the input stream has closed | |
56 | |
26029 | 57 #endif /* MPLAYER_DEMUX_RTP_INTERNAL_H */ |