summaryrefslogtreecommitdiff
path: root/libavformat/rtsp.c
diff options
context:
space:
mode:
authorMichael Niedermayer <michaelni@gmx.at>2012-05-28 00:15:14 +0200
committerMichael Niedermayer <michaelni@gmx.at>2012-05-28 00:50:23 +0200
commit394b692b70587af74a6957640cab0dce3bc9934d (patch)
tree4ed3f05e87700f045c91d4c9c33e31d5aae23442 /libavformat/rtsp.c
parent875851294f7dc3ce5945c6d43b76c5dd1e0ec03d (diff)
parent8271f55bd7d6f4e06786dc8dd7c9538d83ad026a (diff)
Merge remote-tracking branch 'qatar/master'
* qatar/master: avprobe: restore pseudo-INI old style format for compatibility. avprobe: fix formatting. log: make colored output more colorful. rtsp: Check for dynamic payload handlers if no static payload mapping was found Conflicts: Changelog doc/ffprobe.texi ffprobe.c libavutil/log.c Merged-by: Michael Niedermayer <michaelni@gmx.at>
Diffstat (limited to 'libavformat/rtsp.c')
-rw-r--r--libavformat/rtsp.c14
1 files changed, 8 insertions, 6 deletions
diff --git a/libavformat/rtsp.c b/libavformat/rtsp.c
index e3b6e1df5f..891afc92a4 100644
--- a/libavformat/rtsp.c
+++ b/libavformat/rtsp.c
@@ -198,7 +198,14 @@ static int sdp_parse_rtpmap(AVFormatContext *s,
* particular servers ("RealServer Version 6.1.3.970", see issue 1658)
* have a trailing space. */
get_word_sep(buf, sizeof(buf), "/ ", &p);
- if (payload_type >= RTP_PT_PRIVATE) {
+ if (payload_type < RTP_PT_PRIVATE) {
+ /* We are in a standard case
+ * (from http://www.iana.org/assignments/rtp-parameters). */
+ /* search into AVRtpPayloadTypes[] */
+ codec->codec_id = ff_rtp_codec_id(buf, codec->codec_type);
+ }
+
+ if (codec->codec_id == CODEC_ID_NONE) {
RTPDynamicProtocolHandler *handler =
ff_rtp_handler_find_by_name(buf, codec->codec_type);
init_rtp_handler(handler, rtsp_st, codec);
@@ -208,11 +215,6 @@ static int sdp_parse_rtpmap(AVFormatContext *s,
* the format name from the rtpmap line never is passed into rtpdec. */
if (!rtsp_st->dynamic_handler)
codec->codec_id = ff_rtp_codec_id(buf, codec->codec_type);
- } else {
- /* We are in a standard case
- * (from http://www.iana.org/assignments/rtp-parameters). */
- /* search into AVRtpPayloadTypes[] */
- codec->codec_id = ff_rtp_codec_id(buf, codec->codec_type);
}
c = avcodec_find_decoder(codec->codec_id);