Browse Source

When TemporalDelimiter header is encountered, seenFrameHeader flag will be set to false

pull/2633/head
Brian Popow 2 years ago
parent
commit
aaac78a073
  1. 4
      src/ImageSharp/Formats/Heif/Av1/OpenBitstreamUnit/ObuReader.cs

4
src/ImageSharp/Formats/Heif/Av1/OpenBitstreamUnit/ObuReader.cs

@ -128,6 +128,9 @@ internal class ObuReader
break; break;
case ObuType.TemporalDelimiter: case ObuType.TemporalDelimiter:
// 5.6. Temporal delimiter obu syntax.
seenFrameHeader = false;
break;
default: default:
// Ignore unknown OBU types. // Ignore unknown OBU types.
// throw new InvalidImageContentException($"Unknown OBU header found: {header.Type.ToString()}"); // throw new InvalidImageContentException($"Unknown OBU header found: {header.Type.ToString()}");
@ -900,6 +903,7 @@ internal class ObuReader
frameInfo.FramePresentationTime = reader.ReadLiteral((int)sequenceHeader!.DecoderModelInfo!.FramePresentationTimeLength); frameInfo.FramePresentationTime = reader.ReadLiteral((int)sequenceHeader!.DecoderModelInfo!.FramePresentationTimeLength);
} }
// int refreshFrameFlags = 0;
if (sequenceHeader.IsFrameIdNumbersPresent) if (sequenceHeader.IsFrameIdNumbersPresent)
{ {
frameInfo.DisplayFrameId = reader.ReadLiteral(idLength); frameInfo.DisplayFrameId = reader.ReadLiteral(idLength);

Loading…
Cancel
Save