Skip to content

Commit 5b8e476

Browse files
authored
Replace AVIF_ASSERT by avm image->depth condition (#3046)
Disable 12-bit AV2 tests.
1 parent ac4aa59 commit 5b8e476

File tree

2 files changed

+22
-5
lines changed

2 files changed

+22
-5
lines changed

src/codec_avm.c

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -510,9 +510,10 @@ static avifResult avmCodecEncodeImage(avifCodec * codec,
510510
// 12-bit 4:0:0, 4:2:0, 4:2:2 and 4:4:4
511511
uint8_t seqProfile = 0;
512512
#if defined(CONFIG_AV2_PROFILES) && CONFIG_AV2_PROFILES
513-
// Only 8-bit and 10-bit are supported.
514-
AVIF_ASSERT_OR_RETURN(image->depth == 8 || image->depth == 10);
515-
513+
if (image->depth != 8 && image->depth != 10) {
514+
avifDiagnosticsPrintf(codec->diag, "%d-bit is not supported in AV2 encoder.", image->depth);
515+
return AVIF_RESULT_INVALID_ARGUMENT;
516+
}
516517
// Based on https://gitlab.com/AOMediaCodec/avm/-/blob/main/av2/common/enums.h?ref_type=fcab0163f471b38fe593672fcbd24a6beb0be82e#L272
517518
if (alpha) {
518519
seqProfile = 3; // Main_420_10

tests/gtest/avifavmtest.cc

Lines changed: 18 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -71,13 +71,29 @@ INSTANTIATE_TEST_SUITE_P(Basic, AvmTest,
7171

7272
INSTANTIATE_TEST_SUITE_P(Tiny, AvmTest,
7373
Combine(/*width=*/Values(1), /*height=*/Values(1),
74-
/*depth=*/Values(8, 10, 12),
74+
/*depth=*/Values(8, 10),
75+
Values(AVIF_PIXEL_FORMAT_YUV444),
76+
/*alpha=*/Values(false)));
77+
78+
// avm does not support 12-bit as of today.
79+
INSTANTIATE_TEST_SUITE_P(DISABLED_Tiny12bit, AvmTest,
80+
Combine(/*width=*/Values(1), /*height=*/Values(1),
81+
/*depth=*/Values(12),
7582
Values(AVIF_PIXEL_FORMAT_YUV444),
7683
/*alpha=*/Values(false)));
7784

7885
INSTANTIATE_TEST_SUITE_P(HighBitDepthAndEvenDimensions, AvmTest,
7986
Combine(/*width=*/Values(5), /*height=*/Values(34),
80-
/*depth=*/Values(10, 12),
87+
/*depth=*/Values(10),
88+
Values(AVIF_PIXEL_FORMAT_YUV400,
89+
AVIF_PIXEL_FORMAT_YUV420,
90+
AVIF_PIXEL_FORMAT_YUV444),
91+
/*alpha=*/Values(true)));
92+
93+
// avm does not support 12-bit as of today.
94+
INSTANTIATE_TEST_SUITE_P(DISABLED_HighBitDepthAndEvenDimensions12bit, AvmTest,
95+
Combine(/*width=*/Values(5), /*height=*/Values(34),
96+
/*depth=*/Values(12),
8197
Values(AVIF_PIXEL_FORMAT_YUV400,
8298
AVIF_PIXEL_FORMAT_YUV420,
8399
AVIF_PIXEL_FORMAT_YUV444),

0 commit comments

Comments
 (0)