1# Copyright 2015 The Chromium Authors. All rights reserved.
2# Use of this source code is governed by a BSD-style license that can be
3# found in the LICENSE file.
4
5AUTHOR = "Chrome OS Team, chromeos-video@google.com"
6NAME = "video_VEAPerf.h264"
7PURPOSE = "Monitor the performance of the Chromium VEA."
8CRITERIA = """
9The test fails if the video_encode_accelerator_unittest fails or crashes.
10"""
11ATTRIBUTES = "suite:crosbolt_perf_nightly"
12TIME = "MEDIUM"
13TEST_CATEGORY = "Performance"
14TEST_CLASS = "video"
15TEST_TYPE = "client"
16BUG_TEMPLATE = {
17    'labels': ['OS-Chrome', 'VideoTestFailure'],
18    'cc': ['chromeos-video-test-failures@google.com'],
19}
20
21DOC = """
22This test utilizes the video_encode_accelerator_unittest to measure the
23performance of the Chromium Video Encode Accelerator.
24"""
25
26# A list of test cases. Each entry consists of the following parts:
27#   (path, on_cloud, width, height, requested_bit_rate, profile, requested_frame_rate)
28#
29# Bitrate settings come from http://www.webmproject.org/hardware/rtc-coding-requirements/
30# Please do not change bitrates.
31#
32# Requested_frame_rate settings control input frame rates when measuring CPU
33# usage.
34# (VEA_unittest reuses per-stream requested-frame-rate as input frame rate when
35# --run_at_fps option is enabled.)
36test_cases = [
37    ('crowd/crowd1080-96f60dd6ff87ba8b129301a0f36efc58.yuv', True, 1920, 1080, 4000000, 1, 30),
38    ('tulip2/tulip2-1280x720-1b95123232922fe0067869c74e19cd09.yuv', True, 1280, 720, 1200000, 1, 30),
39    ('tulip2/tulip2-640x360-094bd827de18ca196a83cc6442b7b02f.yuv', True, 640, 360, 500000, 1, 30),
40    ('vidyo1/vidyo1-1280x720-b8601dd181bb2921fffce3fbb896351e.yuv', True, 1280, 720, 1200000, 1, 30),
41]
42
43job.run_test('video_VEAPerf', test_cases=test_cases,
44             required_cap='hw_enc_h264_1080_30', tag='h264')
45