Libav
Main Page
Related Pages
Modules
Data Structures
Files
Examples
File List
Globals
libavformat
rtp.h
Go to the documentation of this file.
1
/*
2
* RTP definitions
3
* Copyright (c) 2002 Fabrice Bellard
4
*
5
* This file is part of Libav.
6
*
7
* Libav is free software; you can redistribute it and/or
8
* modify it under the terms of the GNU Lesser General Public
9
* License as published by the Free Software Foundation; either
10
* version 2.1 of the License, or (at your option) any later version.
11
*
12
* Libav is distributed in the hope that it will be useful,
13
* but WITHOUT ANY WARRANTY; without even the implied warranty of
14
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
15
* Lesser General Public License for more details.
16
*
17
* You should have received a copy of the GNU Lesser General Public
18
* License along with Libav; if not, write to the Free Software
19
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
20
*/
21
#ifndef AVFORMAT_RTP_H
22
#define AVFORMAT_RTP_H
23
24
#include "
libavformat/avformat.h
"
25
#include "
libavcodec/avcodec.h
"
26
#include "
libavutil/mathematics.h
"
27
39
int
ff_rtp_get_payload_type
(
AVFormatContext
*fmt,
AVCodecContext
*codec,
40
int
idx);
41
54
int
ff_rtp_get_codec_info
(
AVCodecContext
*codec,
int
payload_type);
55
65
const
char
*
ff_rtp_enc_name
(
int
payload_type);
66
75
enum
AVCodecID
ff_rtp_codec_id
(
const
char
*buf,
enum
AVMediaType
codec_type
);
76
77
#define RTP_PT_PRIVATE 96
78
#define RTP_VERSION 2
79
#define RTP_MAX_SDES 256
81
/* RTCP packets use 0.5% of the bandwidth */
82
#define RTCP_TX_RATIO_NUM 5
83
#define RTCP_TX_RATIO_DEN 1000
84
85
/* An arbitrary id value for RTP Xiph streams - only relevant to indicate
86
* that the configuration has changed within a stream (by changing the
87
* ident value sent).
88
*/
89
#define RTP_XIPH_IDENT 0xfecdba
90
91
/* RTCP packet types */
92
enum
RTCPType
{
93
RTCP_FIR
= 192,
94
RTCP_NACK
,
// 193
95
RTCP_SMPTETC
,
// 194
96
RTCP_IJ
,
// 195
97
RTCP_SR
= 200,
98
RTCP_RR
,
// 201
99
RTCP_SDES
,
// 202
100
RTCP_BYE
,
// 203
101
RTCP_APP
,
// 204
102
RTCP_RTPFB
,
// 205
103
RTCP_PSFB
,
// 206
104
RTCP_XR
,
// 207
105
RTCP_AVB
,
// 208
106
RTCP_RSI
,
// 209
107
RTCP_TOKEN
,
// 210
108
};
109
110
#define RTP_PT_IS_RTCP(x) (((x) >= RTCP_FIR && (x) <= RTCP_IJ) || \
111
((x) >= RTCP_SR && (x) <= RTCP_TOKEN))
112
113
#define NTP_TO_RTP_FORMAT(x) av_rescale((x), INT64_C(1) << 32, 1000000)
114
115
#endif
/* AVFORMAT_RTP_H */
RTCP_AVB
Definition:
rtp.h:105
ff_rtp_enc_name
const char * ff_rtp_enc_name(int payload_type)
Return the encoding name (as defined in http://www.iana.org/assignments/rtp-parameters) for a given p...
Definition:
rtp.c:131
codec_type
enum AVMediaType codec_type
Definition:
rtp.c:36
RTCP_XR
Definition:
rtp.h:104
AVFormatContext
Format I/O context.
Definition:
avformat.h:871
mathematics.h
RTCP_SDES
Definition:
rtp.h:99
RTCP_SMPTETC
Definition:
rtp.h:95
AVCodecID
AVCodecID
Identify the syntax and semantics of the bitstream.
Definition:
avcodec.h:105
RTCP_TOKEN
Definition:
rtp.h:107
RTCP_PSFB
Definition:
rtp.h:103
RTCP_NACK
Definition:
rtp.h:94
ff_rtp_get_payload_type
int ff_rtp_get_payload_type(AVFormatContext *fmt, AVCodecContext *codec, int idx)
Return the payload type for a given stream used in the given format context.
Definition:
rtp.c:89
RTCP_RTPFB
Definition:
rtp.h:102
ff_rtp_get_codec_info
int ff_rtp_get_codec_info(AVCodecContext *codec, int payload_type)
Initialize a codec context based on the payload type.
Definition:
rtp.c:70
RTCP_IJ
Definition:
rtp.h:96
RTCP_RR
Definition:
rtp.h:98
RTCP_RSI
Definition:
rtp.h:106
RTCPType
RTCPType
Definition:
rtp.h:92
ff_rtp_codec_id
enum AVCodecID ff_rtp_codec_id(const char *buf, enum AVMediaType codec_type)
Return the codec id for the given encoding name and codec type.
Definition:
rtp.c:142
RTCP_FIR
Definition:
rtp.h:93
avcodec.h
Libavcodec external API header.
RTCP_BYE
Definition:
rtp.h:100
AVCodecContext
main external API structure.
Definition:
avcodec.h:1054
AVMediaType
AVMediaType
Definition:
avutil.h:185
RTCP_APP
Definition:
rtp.h:101
avformat.h
Main libavformat public API header.
RTCP_SR
Definition:
rtp.h:97
Generated on Thu May 22 2014 12:18:22 for Libav by
1.8.6