# Copyright 2015 The Chromium Authors. All rights reserved.
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.

AUTHOR = "Chrome OS Team, chromeos-video@google.com"
NAME = "video_VEAPerf.h264"
PURPOSE = "Monitor the performance of the Chromium VEA."
CRITERIA = """
The test fails if the video_encode_accelerator_unittest fails or crashes.
"""
ATTRIBUTES = "suite:crosbolt_perf_nightly"
TIME = "MEDIUM"
TEST_CATEGORY = "Performance"
TEST_CLASS = "video"
TEST_TYPE = "client"
DEPENDENCIES='hw_video_acc_enc_h264'
BUG_TEMPLATE = {
    'labels': ['OS-Chrome', 'VideoTestFailure'],
    'cc': ['chromeos-video-test-failures@google.com'],
}

DOC = """
This test utilizes the video_encode_accelerator_unittest to measure the
performance of the Chromium Video Encode Accelerator.
"""

# A list of test cases. Each entry consists of the following parts:
#   (path, on_cloud, width, height, requested_bit_rate, profile, requested_frame_rate)
#
# Bitrate settings come from http://www.webmproject.org/hardware/rtc-coding-requirements/
# Please do not change bitrates.
#
# Requested_frame_rate settings control input frame rates when measuring CPU
# usage.
# (VEA_unittest reuses per-stream requested-frame-rate as input frame rate when
# --run_at_fps option is enabled.)
test_cases = [
    ('crowd/crowd1080-96f60dd6ff87ba8b129301a0f36efc58.yuv', True, 1920, 1080, 4000000, 1, 30),
    ('tulip2/tulip2-1280x720-1b95123232922fe0067869c74e19cd09.yuv', True, 1280, 720, 1200000, 1, 30),
    ('tulip2/tulip2-640x360-094bd827de18ca196a83cc6442b7b02f.yuv', True, 640, 360, 500000, 1, 30),
    ('vidyo1/vidyo1-1280x720-b8601dd181bb2921fffce3fbb896351e.yuv', True, 1280, 720, 1200000, 1, 30),
]

job.run_test('video_VEAPerf', test_cases=test_cases, tag='h264')