[FFmpeg-devel] [PATCH] Ignore invalid sprop-parameter-sets missing PPS

Andrew Shulgin andrewshulginua at gmail.com
Sat Feb 27 20:56:01 CET 2016


Some Hikvison RTSP cameras send wrong sprop-parameter-sets in SDP - it's
missing PPS.

Example of correct sprop-parameter-sets:
sprop-parameter-sets=Z0IAH5W4PASaEAAAcIAAFfkAQA==,aM48gA==
Example of wrong sprop-parameter-sets:
sprop-parameter-sets=Z0IAH5WoPASaEAAAcIAAFfkIQA==,

My patch adds a workaround that ignores invalid sprop-parameter-sets.

On Sat, Feb 27, 2016 at 9:35 PM, Andrew Shulgin <andrewshulginua at gmail.com>
wrote:

> Sorry, wrong From: header, sended again with correct
>
> On Sat, Feb 27, 2016 at 9:30 PM, Andrew Shulgin <shulgin at i3> wrote:
>
>> ---
>>  libavformat/rtpdec_h264.c | 4 ++++
>>  1 file changed, 4 insertions(+)
>>
>> diff --git a/libavformat/rtpdec_h264.c b/libavformat/rtpdec_h264.c
>> index b399be4..e707d03 100644
>> --- a/libavformat/rtpdec_h264.c
>> +++ b/libavformat/rtpdec_h264.c
>> @@ -166,6 +166,10 @@ static int
>> sdp_parse_fmtp_config_h264(AVFormatContext *s,
>>              parse_profile_level_id(s, h264_data, value);
>>      } else if (!strcmp(attr, "sprop-parameter-sets")) {
>>          int ret;
>> +        if (value[strlen(value) - 1] == ',') {
>> +            av_log(s, AV_LOG_WARNING, "Missing PPS in
>> sprop-parameter-sets, ignoring\n");
>> +            return 0;
>> +        }
>>          codec->extradata_size = 0;
>>          av_freep(&codec->extradata);
>>          ret = ff_h264_parse_sprop_parameter_sets(s, &codec->extradata,
>> --
>> 2.4.10
>>
>
>


More information about the ffmpeg-devel mailing list