# Copyright (C) 2025 The Android Open Source Project # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. # # proto-file: third_party/android/mediapc_requirements/requirements.proto # proto-message: Requirement id: "5.3/H-1-1" name: "Frame drop" description: "- Decoder frame drops" test_configs: { key: "1080p_30fps" value: { description: "Tests frame drop at 1080p resolution and 30fps" proto_field_number: 40 } } test_configs: { key: "1080p_60fps" value: { description: "Tests frame drop at 1080p resolution and 60fps" proto_field_number: 41 } } test_configs: { key: "4k_60fps" value: { description: "Tests frame drop at 4k resolution and 60fps" proto_field_number: 42 } } measurements: { key: "frame_drops_per_30sec" value: { id: "frame_drops_per_30sec" description: "Frame dropped in 30 seconds" measurement_type: MEASUREMENT_TYPE_INT comparison: COMPARISON_LESS_THAN_OR_EQUAL proto_field_number: 3 } } measurements: { key: "frame_rate" value: { id: "frame_rate" description: "Frame rate the test was ran at." measurement_type: MEASUREMENT_TYPE_DOUBLE comparison: COMPARISON_CONFIG proto_field_number: 4 } } measurements: { key: "resolution" value: { id: "resolution" description: "Resolution the test was ran at." measurement_type: MEASUREMENT_TYPE_INT comparison: COMPARISON_CONFIG proto_field_number: 5 } } specs { key: 30 value { mpc: MEDIA_PERFORMANCE_CLASS_11 specification: "MUST NOT drop more than 1 frame in 10 seconds (i.e less than 0.333 percent frame drop) for a 1080p 30 fps video session under load. Load is defined as a concurrent 1080p to 720p video-only transcoding session using hardware video codecs, as well as a 128 kbps AAC audio playback." test_config_id: "1080p_30fps" required_values { key: "frame_drops_per_30sec" value { int_value: 3 } } required_values { key: "frame_rate" value { double_value: 30.0 } } required_values { key: "resolution" value { int_value: 1080 } } } } specs { key: 31 value { mpc: MEDIA_PERFORMANCE_CLASS_12 specification: "MUST NOT drop more than 2 frames in 10 seconds (i.e less than 0.333 percent frame drop) for a 1080p 60 fps video session under load. Load is defined as a concurrent 1080p to 720p video-only transcoding session using hardware video codecs, as well as a 128 kbps AAC audio playback." test_config_id: "1080p_60fps" required_values { key: "frame_drops_per_30sec" value { int_value: 6 } } required_values { key: "frame_rate" value { double_value: 60.0 } } required_values { key: "resolution" value { int_value: 1080 } } } } specs { key: 33 value { mpc: MEDIA_PERFORMANCE_CLASS_13 specification: "MUST NOT drop more than 1 frame in 10 seconds (i.e less than 0.167 percent frame drop) for a 1080p 60 fps video session under load. Load is defined as a concurrent 1080p to 720p video-only transcoding session using hardware video codecs, as well as a 128 kbps AAC audio playback." test_config_id: "1080p_60fps" required_values { key: "frame_drops_per_30sec" value { int_value: 3 } } required_values { key: "frame_rate" value { double_value: 60.0 } } required_values { key: "resolution" value { int_value: 1080 } } } } specs { key: 34 value { mpc: MEDIA_PERFORMANCE_CLASS_14 specification: "MUST NOT drop more than 1 frame in 10 seconds (i.e less than 0.167 percent frame drop) for a 4K 60 fps video session under load." test_config_id: "4k_60fps" required_values { key: "frame_drops_per_30sec" value { int_value: 3 } } required_values { key: "frame_rate" value { double_value: 60.0 } } required_values { key: "resolution" value { int_value: 2160 } } } } specs { key: 35 value { mpc: MEDIA_PERFORMANCE_CLASS_15 specification: "same" test_config_id: "4k_60fps" required_values { key: "frame_drops_per_30sec" value { int_value: 3 } } required_values { key: "frame_rate" value { double_value: 60.0 } } required_values { key: "resolution" value { int_value: 2160 } } } } specs { key: 37 value { mpc: MEDIA_PERFORMANCE_CLASS_17 specification: "same" test_config_id: "4k_60fps" required_values { key: "frame_drops_per_30sec" value { int_value: 3 } } required_values { key: "frame_rate" value { double_value: 60.0 } } required_values { key: "resolution" value { int_value: 2160 } } } }