av1_parse: Don't reject zero-size padding OBUs

Padding OBUs are not required to be nonempty.
pull/389/head
Mark Thompson 2 years ago
parent 9c830f4f65
commit 8450531059
  1. 4
      libavcodec/av1_parse.c

@ -88,7 +88,9 @@ int ff_av1_packet_split(AV1Packet *pkt, const uint8_t *buf, int length, void *lo
obu->size_bits = get_obu_bit_length(obu->data, obu->size, obu->type);
if (obu->size_bits < 0 || (!obu->size_bits && obu->type != AV1_OBU_TEMPORAL_DELIMITER)) {
if (obu->size_bits < 0 ||
(obu->size_bits == 0 && (obu->type != AV1_OBU_TEMPORAL_DELIMITER &&
obu->type != AV1_OBU_PADDING))) {
av_log(logctx, AV_LOG_ERROR, "Invalid OBU of type %d, skipping.\n", obu->type);
continue;
}

Loading…
Cancel
Save