aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMartin Storsjö2011-10-17 20:24:54 +0300
committerMartin Storsjö2011-10-17 20:40:20 +0300
commit2e69dd66b6e47ba33f9bb6696e9c587d3057034c (patch)
tree2c2cdc6bb588c675e93e3b8e54e00daf04ca5fc2
parent02a1a28c611aff53db6fc93f46bed2453019a589 (diff)
rtp: Fix ff_rtp_get_payload_type
It was broken in 3b3ea34655db02d9cd9ea1a4122e920a7fdec602 "Remove all uses of deprecated AVOptions API", where any presence of a payload_type AVOption caused its value to be returned, even if it wasn't set (and thus had the default -1 value). This caused the RTP muxer to be broken. Signed-off-by: Martin Storsjö <martin@martin.st>
-rw-r--r--libavformat/rtp.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/libavformat/rtp.c b/libavformat/rtp.c
index 4be845a06c..b6b4b72aa3 100644
--- a/libavformat/rtp.c
+++ b/libavformat/rtp.c
@@ -98,7 +98,8 @@ int ff_rtp_get_payload_type(AVFormatContext *fmt, AVCodecContext *codec)
/* Was the payload type already specified for the RTP muxer? */
if (ofmt && ofmt->priv_class) {
int64_t payload_type;
- if (av_opt_get_int(fmt->priv_data, "payload_type", 0, &payload_type) >= 0)
+ if (av_opt_get_int(fmt->priv_data, "payload_type", 0, &payload_type) >= 0 &&
+ payload_type >= 0)
return (int)payload_type;
}