On 04.06.2019, at 00:21, Antonin Gouzer <antonin.gou...@gmail.com> wrote:
> --- > Some codecs editors had miss interpreted the H264 standart and > have coded a wrong size in the SEI data. > size = SEI size + 1. > The SEI data is detected as "truncated" > Ex: > https://drive.google.com/file/d/1cNtLwnfPnyJnYqE7OYhU3SCoLRtuXIUM/view?usp=sharing > Command: > ffprobe -strict experimental -print_format xml -show_frames -read_intervals > %+0.04 truncated.h264 > This (simple) patch add the possibility to read this false truncated SEI data. > by setting strict_std_compliance = FF_COMPLIANCE_EXPERIMENTAL. > The error remain logged. > > Thanks in advance ! > > @@ -425,27 +425,28 @@ int ff_h264_sei_decode(H264SEIContext *h, GetBitContext > *gb, > } while (get_bits(gb, 8) == 255); > > if (size > get_bits_left(gb) / 8) { > - av_log(logctx, AV_LOG_ERROR, "SEI type %d size %d truncated at > %d\n", > + av_log(avctx, AV_LOG_ERROR, "SEI type %d size %d truncated at > %d\n", > type, 8*size, get_bits_left(gb)); > - return AVERROR_INVALIDDATA; > + if (avctx->strict_std_compliance > FF_COMPLIANCE_EXPERIMENTAL) > + return AVERROR_INVALIDDATA; > } > next = get_bits_count(gb) + 8 * size; This doesn't seem right, shouldn't you adjust "size"? Also if this is reasonably common shouldn't we accept at least the exactly off-by-one case at the default settings? _______________________________________________ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org https://ffmpeg.org/mailman/listinfo/ffmpeg-devel To unsubscribe, visit link above, or email ffmpeg-devel-requ...@ffmpeg.org with subject "unsubscribe".