diff options
author | Josh Allmann <joshua.allmann@gmail.com> | 2010-07-28 10:43:58 +0400 |
---|---|---|
committer | Martin Storsjö <martin@martin.st> | 2010-07-28 10:43:58 +0400 |
commit | 42c63263d1c0ea0948c11301fbbd2c28997487d5 (patch) | |
tree | 78d1b0590e36f16a74bcac877edae3ff55d2447f /libavformat | |
parent | f8a169ac8e247b030103b9e18d4280ff287cac98 (diff) |
rtpdec_xiph: Handle the sampling SDP parameter
Patch by Josh Allmann, joshua dot allmann at gmail
Originally committed as revision 24565 to svn://svn.ffmpeg.org/ffmpeg/trunk
Diffstat (limited to 'libavformat')
-rw-r--r-- | libavformat/rtpdec_xiph.c | 12 |
1 files changed, 11 insertions, 1 deletions
diff --git a/libavformat/rtpdec_xiph.c b/libavformat/rtpdec_xiph.c index bcf583fd0a..5b75529c5e 100644 --- a/libavformat/rtpdec_xiph.c +++ b/libavformat/rtpdec_xiph.c @@ -293,7 +293,17 @@ static int xiph_parse_fmtp_pair(AVStream* stream, int result = 0; if (!strcmp(attr, "sampling")) { - return AVERROR_PATCHWELCOME; + if (!strcmp(value, "YCbCr-4:2:0")) { + codec->pix_fmt = PIX_FMT_YUV420P; + } else if (!strcmp(value, "YCbCr-4:4:2")) { + codec->pix_fmt = PIX_FMT_YUV422P; + } else if (!strcmp(value, "YCbCr-4:4:4")) { + codec->pix_fmt = PIX_FMT_YUV444P; + } else { + av_log(codec, AV_LOG_ERROR, + "Unsupported pixel format %s\n", attr); + return AVERROR_INVALIDDATA; + } } else if (!strcmp(attr, "width")) { /* This is an integer between 1 and 1048561 * and MUST be in multiples of 16. */ |