hevc/sei: return INVALIDDATA when a referenced SPS is not available

The code previously returned ENOMEM, despite this not being an
allocation problem, but rather a bitstream problem referring to data not
currently available.

Fixes playback of such streams, as it allows further processing of NAL
units after skipping the broken SEI NAL.
This commit is contained in:
Hendrik Leppkes 2024-08-30 12:55:38 +02:00
parent eda3fc6053
commit d4cfbf329c
No known key found for this signature in database
GPG Key ID: 846079A4B0A7C1B5

View File

@ -56,7 +56,7 @@ static int decode_nal_sei_pic_timing(HEVCSEI *s, GetBitContext *gb,
const HEVCSPS *sps = ps->sps_list[s->active_seq_parameter_set_id];
if (!sps)
return(AVERROR(ENOMEM));
return AVERROR_INVALIDDATA;
if (sps->vui.frame_field_info_present_flag) {
int pic_struct = get_bits(gb, 4);