From fea3de0245cf0ccd6c64fea500e137502de73317 Mon Sep 17 00:00:00 2001 From: Wang Hangjie Date: Sun, 8 Sep 2024 21:53:27 -0700 Subject: [PATCH] [ffmpeg-qsv] add avce playback_seek test case Signed-off-by: Wang Hangjie --- lib/parameters.py | 3 +++ test/ffmpeg-qsv/encode/avc.py | 36 +++++++++++++++++++++++++++++++++++ 2 files changed, 39 insertions(+) diff --git a/lib/parameters.py b/lib/parameters.py index c8a497ef..99053e67 100755 --- a/lib/parameters.py +++ b/lib/parameters.py @@ -948,6 +948,9 @@ def gen_vp9_seek_lp_parameters(spec): params = gen_vp9_seek_lp_variants(spec) return keys, params +gen_avc_seek_parameters = gen_vp9_seek_parameters +gen_avc_seek_lp_parameters = gen_vp9_seek_lp_parameters + def gen_av1_cqp_variants(spec, strapi=False): for case, params in spec.items(): if strapi: diff --git a/test/ffmpeg-qsv/encode/avc.py b/test/ffmpeg-qsv/encode/avc.py index a38303f3..29217396 100755 --- a/test/ffmpeg-qsv/encode/avc.py +++ b/test/ffmpeg-qsv/encode/avc.py @@ -394,3 +394,39 @@ def init(self, tspec, case, gop, bframes, bitrate, maxrate, profile, rcmode, max def test(self, case, gop, bframes, bitrate, maxrate, profile, rcmode, maxi, mini, maxp, minp, maxb, minb): self.init(spec, case, gop, bframes, bitrate, maxrate, profile, rcmode, maxi, mini, maxp, minp, maxb, minb) self.encode() + +class seek(AVCEncoderTest): + def init(self, tspec, case, rcmode, bitrate, maxrate, fps, seek): + vars(self).update(tspec[case].copy()) + vars(self).update( + case = case, + bitrate = bitrate, + maxrate = maxrate, + minrate = bitrate, + rcmode = rcmode, + fps = fps, + seek = seek, + ) + + @slash.parametrize(*gen_avc_seek_parameters(spec)) + def test(self, case, rcmode, bitrate, maxrate, fps, seek): + self.init(spec, case, rcmode, bitrate, maxrate, fps, seek) + self.encode() + +class seek_lp(AVCEncoderLPTest): + def init(self, tspec, case, rcmode, bitrate, maxrate, fps, seek): + vars(self).update(tspec[case].copy()) + vars(self).update( + case = case, + bitrate = bitrate, + maxrate = maxrate, + minrate = bitrate, + rcmode = rcmode, + fps = fps, + seek = seek, + ) + + @slash.parametrize(*gen_avc_seek_lp_parameters(spec)) + def test(self, case, rcmode, bitrate, maxrate, fps, seek): + self.init(spec, case, rcmode, bitrate, maxrate, fps, seek) + self.encode()