summaryrefslogtreecommitdiff
path: root/libavcodec/av1_parse.c
diff options
context:
space:
mode:
Diffstat (limited to 'libavcodec/av1_parse.c')
-rw-r--r--libavcodec/av1_parse.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/libavcodec/av1_parse.c b/libavcodec/av1_parse.c
index 948e8eb62a..061636815f 100644
--- a/libavcodec/av1_parse.c
+++ b/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;
}