annotate rtp.h @ 6205:1327f1008940 libavformat

Allow remuxing of explicitly signalled AAC files into ADTS. The ADTS output files are not explicitly signaled because the format does not support explicit signalling.
author alexc
date Thu, 01 Jul 2010 14:49:32 +0000
parents 536e5527c1e0
children 3aa7765383b5
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
0
05318cf2e886 renamed libav to libavformat
bellard
parents:
diff changeset
1 /*
05318cf2e886 renamed libav to libavformat
bellard
parents:
diff changeset
2 * RTP definitions
4251
77e0c7511d41 cosmetics: Remove pointless period after copyright statement non-sentences.
diego
parents: 4101
diff changeset
3 * Copyright (c) 2002 Fabrice Bellard
0
05318cf2e886 renamed libav to libavformat
bellard
parents:
diff changeset
4 *
1358
0899bfe4105c Change license headers to say 'FFmpeg' instead of 'this program/this library'
diego
parents: 1167
diff changeset
5 * This file is part of FFmpeg.
0899bfe4105c Change license headers to say 'FFmpeg' instead of 'this program/this library'
diego
parents: 1167
diff changeset
6 *
0899bfe4105c Change license headers to say 'FFmpeg' instead of 'this program/this library'
diego
parents: 1167
diff changeset
7 * FFmpeg is free software; you can redistribute it and/or
0
05318cf2e886 renamed libav to libavformat
bellard
parents:
diff changeset
8 * modify it under the terms of the GNU Lesser General Public
05318cf2e886 renamed libav to libavformat
bellard
parents:
diff changeset
9 * License as published by the Free Software Foundation; either
1358
0899bfe4105c Change license headers to say 'FFmpeg' instead of 'this program/this library'
diego
parents: 1167
diff changeset
10 * version 2.1 of the License, or (at your option) any later version.
0
05318cf2e886 renamed libav to libavformat
bellard
parents:
diff changeset
11 *
1358
0899bfe4105c Change license headers to say 'FFmpeg' instead of 'this program/this library'
diego
parents: 1167
diff changeset
12 * FFmpeg is distributed in the hope that it will be useful,
0
05318cf2e886 renamed libav to libavformat
bellard
parents:
diff changeset
13 * but WITHOUT ANY WARRANTY; without even the implied warranty of
05318cf2e886 renamed libav to libavformat
bellard
parents:
diff changeset
14 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
05318cf2e886 renamed libav to libavformat
bellard
parents:
diff changeset
15 * Lesser General Public License for more details.
05318cf2e886 renamed libav to libavformat
bellard
parents:
diff changeset
16 *
05318cf2e886 renamed libav to libavformat
bellard
parents:
diff changeset
17 * You should have received a copy of the GNU Lesser General Public
1358
0899bfe4105c Change license headers to say 'FFmpeg' instead of 'this program/this library'
diego
parents: 1167
diff changeset
18 * License along with FFmpeg; if not, write to the Free Software
896
edbe5c3717f9 Update licensing information: The FSF changed postal address.
diego
parents: 885
diff changeset
19 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
0
05318cf2e886 renamed libav to libavformat
bellard
parents:
diff changeset
20 */
3852
1b6245500d8c Globally rename the header inclusion guard names.
stefano
parents: 3617
diff changeset
21 #ifndef AVFORMAT_RTP_H
1b6245500d8c Globally rename the header inclusion guard names.
stefano
parents: 3617
diff changeset
22 #define AVFORMAT_RTP_H
0
05318cf2e886 renamed libav to libavformat
bellard
parents:
diff changeset
23
3286
6f61c3b36632 Use full path for #includes from another directory.
diego
parents: 2901
diff changeset
24 #include "libavcodec/avcodec.h"
2171
a6d6b2b19341 include all prerequisites in header files
mru
parents: 1869
diff changeset
25
4503
c3d058b6ddde Document ff_rtp_get_payload_type()
lucabe
parents: 4502
diff changeset
26 /**
c3d058b6ddde Document ff_rtp_get_payload_type()
lucabe
parents: 4502
diff changeset
27 * Return the payload type for a given codec.
c3d058b6ddde Document ff_rtp_get_payload_type()
lucabe
parents: 4502
diff changeset
28 *
c3d058b6ddde Document ff_rtp_get_payload_type()
lucabe
parents: 4502
diff changeset
29 * @param codec The context of the codec
c3d058b6ddde Document ff_rtp_get_payload_type()
lucabe
parents: 4502
diff changeset
30 * @return In case of unknown payload type or dynamic payload type, a
c3d058b6ddde Document ff_rtp_get_payload_type()
lucabe
parents: 4502
diff changeset
31 * negative value is returned; otherwise, the payload type (the 'PT' field
c3d058b6ddde Document ff_rtp_get_payload_type()
lucabe
parents: 4502
diff changeset
32 * in the RTP header) is returned.
c3d058b6ddde Document ff_rtp_get_payload_type()
lucabe
parents: 4502
diff changeset
33 */
4502
daca5391106a Rename rtp_get_payload_type() to ff_rtp_get_payload_type(), as it is not
lucabe
parents: 4392
diff changeset
34 int ff_rtp_get_payload_type(AVCodecContext *codec);
4100
2e81931d3995 Remove useless typedef
lucabe
parents: 4099
diff changeset
35
4611
11cce150a895 Document ff_rtp_get_codec_info()
lucabe
parents: 4519
diff changeset
36 /**
11cce150a895 Document ff_rtp_get_codec_info()
lucabe
parents: 4519
diff changeset
37 * Initialize a codec context based on the payload type.
11cce150a895 Document ff_rtp_get_codec_info()
lucabe
parents: 4519
diff changeset
38 *
11cce150a895 Document ff_rtp_get_codec_info()
lucabe
parents: 4519
diff changeset
39 * Fill the codec_type and codec_id fields of a codec context with
11cce150a895 Document ff_rtp_get_codec_info()
lucabe
parents: 4519
diff changeset
40 * information depending on the payload type; for audio codecs, the
11cce150a895 Document ff_rtp_get_codec_info()
lucabe
parents: 4519
diff changeset
41 * channels and sample_rate fields are also filled.
11cce150a895 Document ff_rtp_get_codec_info()
lucabe
parents: 4519
diff changeset
42 *
11cce150a895 Document ff_rtp_get_codec_info()
lucabe
parents: 4519
diff changeset
43 * @param codec The context of the codec
4614
b4c4ee906a60 Fix typo in a comment
lucabe
parents: 4613
diff changeset
44 * @param payload_type The payload type (the 'PT' field in the RTP header)
4611
11cce150a895 Document ff_rtp_get_codec_info()
lucabe
parents: 4519
diff changeset
45 * @return In case of unknown payload type or dynamic payload type, a
11cce150a895 Document ff_rtp_get_codec_info()
lucabe
parents: 4519
diff changeset
46 * negative value is returned; otherwise, 0 is returned
11cce150a895 Document ff_rtp_get_codec_info()
lucabe
parents: 4519
diff changeset
47 */
4519
f4b9967e0131 Remame rtp_get_codec_info() to ff_rtp_get_codec_info(), as it is not
lucabe
parents: 4518
diff changeset
48 int ff_rtp_get_codec_info(AVCodecContext *codec, int payload_type);
4613
0642f8079ecf Document ff_rtp_enc_name()
lucabe
parents: 4611
diff changeset
49
0642f8079ecf Document ff_rtp_enc_name()
lucabe
parents: 4611
diff changeset
50 /**
0642f8079ecf Document ff_rtp_enc_name()
lucabe
parents: 4611
diff changeset
51 * Return the encoding name (as defined in
0642f8079ecf Document ff_rtp_enc_name()
lucabe
parents: 4611
diff changeset
52 * http://www.iana.org/assignments/rtp-parameters) for a given payload type.
0642f8079ecf Document ff_rtp_enc_name()
lucabe
parents: 4611
diff changeset
53 *
0642f8079ecf Document ff_rtp_enc_name()
lucabe
parents: 4611
diff changeset
54 * @param payload_type The payload type (the 'PT' field in the RTP header)
0642f8079ecf Document ff_rtp_enc_name()
lucabe
parents: 4611
diff changeset
55 * @return In case of unknown payload type or dynamic payload type, a pointer
0642f8079ecf Document ff_rtp_enc_name()
lucabe
parents: 4611
diff changeset
56 * to an empty string is returned; otherwise, a pointer to a string containing
0642f8079ecf Document ff_rtp_enc_name()
lucabe
parents: 4611
diff changeset
57 * the encoding name is returned
0642f8079ecf Document ff_rtp_enc_name()
lucabe
parents: 4611
diff changeset
58 */
4518
35d76826b641 Move to rtp.h the prototypes of all the functions defined in rtp.c
lucabe
parents: 4503
diff changeset
59 const char *ff_rtp_enc_name(int payload_type);
4616
5315c722e61e Document ff_rtp_codec_id()
lucabe
parents: 4614
diff changeset
60
5315c722e61e Document ff_rtp_codec_id()
lucabe
parents: 4614
diff changeset
61 /**
5315c722e61e Document ff_rtp_codec_id()
lucabe
parents: 4614
diff changeset
62 * Return the codec id for the given encoding name and codec type.
5315c722e61e Document ff_rtp_codec_id()
lucabe
parents: 4614
diff changeset
63 *
5315c722e61e Document ff_rtp_codec_id()
lucabe
parents: 4614
diff changeset
64 * @param buf A pointer to the string containing the encoding name
5315c722e61e Document ff_rtp_codec_id()
lucabe
parents: 4614
diff changeset
65 * @param codec_type The codec type
5315c722e61e Document ff_rtp_codec_id()
lucabe
parents: 4614
diff changeset
66 * @return In case of unknown encoding name, CODEC_ID_NONE is returned;
5315c722e61e Document ff_rtp_codec_id()
lucabe
parents: 4614
diff changeset
67 * otherwise, the codec id is returned
5315c722e61e Document ff_rtp_codec_id()
lucabe
parents: 4614
diff changeset
68 */
5910
536e5527c1e0 Define AVMediaType enum, and use it instead of enum CodecType, which
stefano
parents: 4616
diff changeset
69 enum CodecID ff_rtp_codec_id(const char *buf, enum AVMediaType codec_type);
4518
35d76826b641 Move to rtp.h the prototypes of all the functions defined in rtp.c
lucabe
parents: 4503
diff changeset
70
4100
2e81931d3995 Remove useless typedef
lucabe
parents: 4099
diff changeset
71 #define RTP_PT_PRIVATE 96
2e81931d3995 Remove useless typedef
lucabe
parents: 4099
diff changeset
72 #define RTP_VERSION 2
2e81931d3995 Remove useless typedef
lucabe
parents: 4099
diff changeset
73 #define RTP_MAX_SDES 256 /**< maximum text length for SDES */
2e81931d3995 Remove useless typedef
lucabe
parents: 4099
diff changeset
74
2e81931d3995 Remove useless typedef
lucabe
parents: 4099
diff changeset
75 /* RTCP paquets use 0.5 % of the bandwidth */
2e81931d3995 Remove useless typedef
lucabe
parents: 4099
diff changeset
76 #define RTCP_TX_RATIO_NUM 5
2e81931d3995 Remove useless typedef
lucabe
parents: 4099
diff changeset
77 #define RTCP_TX_RATIO_DEN 1000
2e81931d3995 Remove useless typedef
lucabe
parents: 4099
diff changeset
78
3852
1b6245500d8c Globally rename the header inclusion guard names.
stefano
parents: 3617
diff changeset
79 #endif /* AVFORMAT_RTP_H */