[FFmpeg-devel] [PATCH] fate: add VVC decoder tests

Nuo Mi nuomi2021 at gmail.com
Sat Jan 6 04:34:51 EET 2024


On Sat, Jan 6, 2024 at 9:13 AM James Almer <jamrial at gmail.com> wrote:

> On 1/5/2024 10:09 PM, Nuo Mi wrote:
> > On Sat, Jan 6, 2024 at 5:09 AM James Almer <jamrial at gmail.com> wrote:
> >
> >> On 1/3/2024 9:19 PM, James Almer wrote:
> >>> Signed-off-by: James Almer <jamrial at gmail.com>
> >>> ---
> >>>    tests/Makefile                                |   1 +
> >>>    tests/fate/vvc.mak                            |  50 +++++++
> >>>    tests/ref/fate/vvc-conformance-APSALF_A_2     |  13 ++
> >>>    tests/ref/fate/vvc-conformance-APSLMCS_D_1    |  37 +++++
> >>>    tests/ref/fate/vvc-conformance-APSMULT_A_4    |  53 +++++++
> >>>    tests/ref/fate/vvc-conformance-AUD_A_3        |  35 +++++
> >>>    tests/ref/fate/vvc-conformance-BUMP_A_2       |  45 ++++++
> >>>    tests/ref/fate/vvc-conformance-CROP_B_4       | 105 ++++++++++++++
> >>>    .../fate/vvc-conformance-CodingToolsSets_A_2  |   7 +
> >>>    tests/ref/fate/vvc-conformance-DCI_A_3        |   7 +
> >>>    tests/ref/fate/vvc-conformance-HRD_A_3        |  65 +++++++++
> >>>    tests/ref/fate/vvc-conformance-OPI_B_3        |   6 +
> >>>    tests/ref/fate/vvc-conformance-PHSH_B_1       |  11 ++
> >>>    tests/ref/fate/vvc-conformance-POC_A_1        |  25 ++++
> >>>    tests/ref/fate/vvc-conformance-PPS_B_1        |  69 +++++++++
> >>>    tests/ref/fate/vvc-conformance-RAP_A_1        |   6 +
> >>>    tests/ref/fate/vvc-conformance-SAO_A_3        |  65 +++++++++
> >>>    tests/ref/fate/vvc-conformance-SCALING_A_1    |  69 +++++++++
> >>>    tests/ref/fate/vvc-conformance-SLICES_A_3     |  30 ++++
> >>>    tests/ref/fate/vvc-conformance-SPS_B_1        | 133
> ++++++++++++++++++
> >>>    tests/ref/fate/vvc-conformance-STILL_B_1      |  10 ++
> >>>    tests/ref/fate/vvc-conformance-SUBPIC_A_3     |   9 ++
> >>>    tests/ref/fate/vvc-conformance-TILE_A_2       |  14 ++
> >>>    tests/ref/fate/vvc-conformance-VPS_A_3        |   6 +
> >>>    tests/ref/fate/vvc-conformance-WPP_A_3        |  54 +++++++
> >>>    tests/ref/fate/vvc-conformance-WP_A_3         |  22 +++
> >>>    tests/ref/fate/vvc-conformance-WRAP_A_4       |  14 ++
> >>>    27 files changed, 961 insertions(+)
> >>>    create mode 100644 tests/fate/vvc.mak
> >>>    create mode 100644 tests/ref/fate/vvc-conformance-APSALF_A_2
> >>>    create mode 100644 tests/ref/fate/vvc-conformance-APSLMCS_D_1
> >>>    create mode 100644 tests/ref/fate/vvc-conformance-APSMULT_A_4
> >>>    create mode 100644 tests/ref/fate/vvc-conformance-AUD_A_3
> >>>    create mode 100644 tests/ref/fate/vvc-conformance-BUMP_A_2
> >>>    create mode 100644 tests/ref/fate/vvc-conformance-CROP_B_4
> >>>    create mode 100644
> tests/ref/fate/vvc-conformance-CodingToolsSets_A_2
> >>>    create mode 100644 tests/ref/fate/vvc-conformance-DCI_A_3
> >>>    create mode 100644 tests/ref/fate/vvc-conformance-HRD_A_3
> >>>    create mode 100644 tests/ref/fate/vvc-conformance-OPI_B_3
> >>>    create mode 100644 tests/ref/fate/vvc-conformance-PHSH_B_1
> >>>    create mode 100644 tests/ref/fate/vvc-conformance-POC_A_1
> >>>    create mode 100644 tests/ref/fate/vvc-conformance-PPS_B_1
> >>>    create mode 100644 tests/ref/fate/vvc-conformance-RAP_A_1
> >>>    create mode 100644 tests/ref/fate/vvc-conformance-SAO_A_3
> >>>    create mode 100644 tests/ref/fate/vvc-conformance-SCALING_A_1
> >>>    create mode 100644 tests/ref/fate/vvc-conformance-SLICES_A_3
> >>>    create mode 100644 tests/ref/fate/vvc-conformance-SPS_B_1
> >>>    create mode 100644 tests/ref/fate/vvc-conformance-STILL_B_1
> >>>    create mode 100644 tests/ref/fate/vvc-conformance-SUBPIC_A_3
> >>>    create mode 100644 tests/ref/fate/vvc-conformance-TILE_A_2
> >>>    create mode 100644 tests/ref/fate/vvc-conformance-VPS_A_3
> >>>    create mode 100644 tests/ref/fate/vvc-conformance-WPP_A_3
> >>>    create mode 100644 tests/ref/fate/vvc-conformance-WP_A_3
> >>>    create mode 100644 tests/ref/fate/vvc-conformance-WRAP_A_4
> >>
> >> This is using the samples already in the fate suite. I don't know if
> >> they give good coverage (I think i chose them to cover as much CBS
> >> methods as possible, not caring about actual decode paths, and not even
> >> that is complete), so I'd like someone more familiar with the
> >> conformance suite to suggest better samples to upload and use, too.
> >>
> >
> > Here are the clips and their sources:
> > https://github.com/ffvvc/tests/tree/main
> > passed v1 is about 194M , and each clip may have different features. It's
> > better to add them all to vvc-conformance, without name change
> > passed v2 is about 871M , we can pick some smaller clips that cover all
> bit
> > depths and color formats.
>
> Yeah, it's not so much about the size of the samples than it is about
> runtime. That many tests would make a fate run take way too much, even
> after we add assembly.
> We need to choose a subset that cover as many decoding cases as possible.
>
Good point.
If I disable the asm code on my machine, "make fate-hevc" takes about 1
minute and 26 seconds. We can use this as the baseline.
If we remove the largest 5 files in v1, we can decode it in 5 minutes and
13 seconds. We can remove more if we find it's still slow.
>From a feature perspective, TREE_A_HHI_3.bit may cover major features in
TREE_B_HHI_3.bit, TREE_C_HHI_3.bit. It's reasonable to remove them

Largest 5 files:
TRANS_B_Chipsnmedia_2.bit
TRANS_A_Chipsnmedia_2.bit
TREE_B_HHI_3.bit
LFNST_D_HHI_3.bit
TREE_C_HHI_3.bit

> _______________________________________________
> ffmpeg-devel mailing list
> ffmpeg-devel at ffmpeg.org
> https://ffmpeg.org/mailman/listinfo/ffmpeg-devel
>
> To unsubscribe, visit link above, or email
> ffmpeg-devel-request at ffmpeg.org with subject "unsubscribe".
>


More information about the ffmpeg-devel mailing list