You've already forked FFmpeg
mirror of
https://github.com/FFmpeg/FFmpeg.git
synced 2025-08-10 06:10:52 +02:00
rtpdec_mpeg4: Add fmtp parsing of bitrate value
According to RFC 6416 the audio stream sender can pass the data rate for the audio bitstream as "bitrate=" media format parameter. Signed-off-by: Marvin Scholz <epirat07@gmail.com>
This commit is contained in:
committed by
Marvin Scholz
parent
cacc68f3b5
commit
09a83e095d
@@ -38,6 +38,7 @@
|
||||
|
||||
/** Structure listing useful vars to parse RTP packet payload */
|
||||
struct PayloadContext {
|
||||
int bitrate;
|
||||
int sizelength;
|
||||
int indexlength;
|
||||
int indexdeltalength;
|
||||
@@ -83,6 +84,9 @@ typedef struct AttrNameMap {
|
||||
#define ATTR_NAME_TYPE_INT 0
|
||||
#define ATTR_NAME_TYPE_STR 1
|
||||
static const AttrNameMap attr_names[] = {
|
||||
{ "bitrate", ATTR_NAME_TYPE_INT,
|
||||
offsetof(PayloadContext, bitrate),
|
||||
{0, INT32_MAX} },
|
||||
{ "SizeLength", ATTR_NAME_TYPE_INT,
|
||||
offsetof(PayloadContext, sizelength),
|
||||
{0, 32} }, // SizeLength number of bits used to encode AU-size integer value
|
||||
@@ -332,6 +336,9 @@ static int parse_fmtp(AVFormatContext *s,
|
||||
}
|
||||
}
|
||||
}
|
||||
if (!strcmp(attr, "bitrate")) {
|
||||
par->bit_rate = data->bitrate;
|
||||
}
|
||||
}
|
||||
return 0;
|
||||
}
|
||||
|
Reference in New Issue
Block a user