From 4e880104ff3bc9e511ec47067e2a1322125ac678 Mon Sep 17 00:00:00 2001 From: Wang Hangjie Date: Tue, 3 Sep 2024 23:57:20 -0700 Subject: [PATCH] [ffmpeg-vaapi] add b_depth test options for h265 encode Signed-off-by: Wang Hangjie --- lib/parameters.py | 2 ++ test/ffmpeg-vaapi/encode/hevc.py | 42 ++++++++++++++++++++++++++++++++ 2 files changed, 44 insertions(+) diff --git a/lib/parameters.py b/lib/parameters.py index 63ea813f..c8a497ef 100755 --- a/lib/parameters.py +++ b/lib/parameters.py @@ -694,6 +694,8 @@ def gen_hevc_seek_lp_parameters(spec, profiles): gen_hevc_cqp_parameters = gen_avc_cqp_parameters gen_hevc_cbr_parameters = gen_avc_cbr_parameters gen_hevc_vbr_parameters = gen_avc_vbr_parameters +gen_hevc_bdepth_parameters = gen_avc_bdepth_parameters +gen_hevc_bdepth_lp_parameters = gen_avc_bdepth_lp_parameters gen_hevc_roi_parameters = gen_avc_roi_parameters gen_hevc_roi_lp_parameters = gen_avc_roi_lp_parameters gen_hevc_forced_idr_parameters = gen_avc_forced_idr_parameters diff --git a/test/ffmpeg-vaapi/encode/hevc.py b/test/ffmpeg-vaapi/encode/hevc.py index bb8b7002..bdd33f3f 100644 --- a/test/ffmpeg-vaapi/encode/hevc.py +++ b/test/ffmpeg-vaapi/encode/hevc.py @@ -273,3 +273,45 @@ def init(self, tspec, case, gop, bframes, bitrate, maxrate, profile, rcmode): def test(self, case, gop, bframes, bitrate, maxrate, profile, rcmode): self.init(spec, case, gop, bframes, bitrate, maxrate, profile, rcmode) self.encode() + +class bdepth(HEVC8EncoderTest): + def init(self, tspec, case, gop, bframes, bitrate, qp, maxrate, profile, rcmode, bdepth): + vars(self).update(tspec[case].copy()) + vars(self).update( + rcmode = rcmode, + bframes = bframes, + bitrate = bitrate, + qp = qp, + case = case, + maxrate = maxrate, + minrate = bitrate, + gop = gop, + profile = profile, + bdepth = bdepth, + ) + + @slash.parametrize(*gen_hevc_bdepth_parameters(spec, ['high', 'main'])) + def test(self, case, gop, bframes, bitrate, qp, maxrate, profile, rcmode, bdepth): + self.init(spec, case, gop, bframes, bitrate, qp, maxrate, profile, rcmode, bdepth) + self.encode() + +class bdepth_lp(HEVC8EncoderLPTest): + def init(self, tspec, case, gop, bframes, bitrate, qp, maxrate, profile, rcmode, bdepth): + vars(self).update(tspec[case].copy()) + vars(self).update( + rcmode = rcmode, + bframes = bframes, + bitrate = bitrate, + qp = qp, + case = case, + maxrate = maxrate, + minrate = bitrate, + gop = gop, + profile = profile, + bdepth = bdepth, + ) + + @slash.parametrize(*gen_hevc_bdepth_lp_parameters(spec, ['high', 'main'])) + def test(self, case, gop, bframes, bitrate, qp, maxrate, profile, rcmode, bdepth): + self.init(spec, case, gop, bframes, bitrate, qp, maxrate, profile, rcmode, bdepth) + self.encode()