X-Git-Url: https://git.sesse.net/?a=blobdiff_plain;f=libavformat%2Fsdp.c;h=95f3fbb8765a965b7b9bcc64651ca59e909f6c4e;hb=b334fd39c9c00c739faeece87fa81c980c148a16;hp=a5d202e99cb28473194e15fd7ce9a5476feb44ec;hpb=8822e2b9543bb02fb2889dff627b6db023053253;p=ffmpeg diff --git a/libavformat/sdp.c b/libavformat/sdp.c index a5d202e99cb..95f3fbb8765 100644 --- a/libavformat/sdp.c +++ b/libavformat/sdp.c @@ -212,7 +212,7 @@ static char *extradata2psets(AVFormatContext *s, AVCodecParameters *par) p += strlen(p); r = r1; } - if (sps && sps_end - sps >= 4) { + if (sps && sps_end - sps >= 4 && p - psets <= MAX_PSET_SIZE - strlen(profile_string) - 7) { memcpy(p, profile_string, strlen(profile_string)); p += strlen(p); ff_data_to_hex(p, sps + 1, 3, 0); @@ -347,7 +347,8 @@ static char *extradata2config(AVFormatContext *s, AVCodecParameters *par) static char *xiph_extradata2config(AVFormatContext *s, AVCodecParameters *par) { - char *config, *encoded_config; + uint8_t *config; + char *encoded_config; const uint8_t *header_start[3]; int headers_len, header_len[3], config_len; int first_header_size; @@ -703,6 +704,8 @@ static char *sdp_write_media_attributes(char *buff, int size, AVStream *st, int case AV_CODEC_ID_SPEEX: av_strlcatf(buff, size, "a=rtpmap:%d speex/%d\r\n", payload_type, p->sample_rate); +#if FF_API_LAVF_AVCTX +FF_DISABLE_DEPRECATION_WARNINGS if (st->codec) { const char *mode; uint64_t vad_option; @@ -717,6 +720,8 @@ static char *sdp_write_media_attributes(char *buff, int size, AVStream *st, int av_strlcatf(buff, size, "a=fmtp:%d vbr=%s\r\n", payload_type, mode); } +FF_ENABLE_DEPRECATION_WARNINGS +#endif break; case AV_CODEC_ID_OPUS: /* The opus RTP draft says that all opus streams MUST be declared