Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(319)

Side by Side Diff: tools/perf/benchmarks/media.py

Issue 134243003: Create separate telemetry media-perf ChromeOS benchmarks for 4k and non-4k content. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Fix label for non-4k content. Created 6 years, 10 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
« no previous file with comments | « no previous file | tools/perf/page_sets/tough_video_cases.json » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 # Copyright 2013 The Chromium Authors. All rights reserved. 1 # Copyright 2014 The Chromium Authors. All rights reserved.
2 # Use of this source code is governed by a BSD-style license that can be 2 # Use of this source code is governed by a BSD-style license that can be
3 # found in the LICENSE file. 3 # found in the LICENSE file.
4 4
5 from measurements import media
5 from telemetry import test 6 from telemetry import test
6 from telemetry.page import page_measurement 7 from telemetry.page import page_measurement
7 8
8 from measurements import media
9
10 9
11 class MSEMeasurement(page_measurement.PageMeasurement): 10 class MSEMeasurement(page_measurement.PageMeasurement):
12 def MeasurePage(self, page, tab, results): 11 def MeasurePage(self, page, tab, results):
13 media_metric = tab.EvaluateJavaScript('window.__testMetrics') 12 media_metric = tab.EvaluateJavaScript('window.__testMetrics')
14 trace = media_metric['id'] if 'id' in media_metric else None 13 trace = media_metric['id'] if 'id' in media_metric else None
15 metrics = media_metric['metrics'] if 'metrics' in media_metric else [] 14 metrics = media_metric['metrics'] if 'metrics' in media_metric else []
16 for m in metrics: 15 for m in metrics:
17 if isinstance(metrics[m], list): 16 if isinstance(metrics[m], list):
18 values = [float(v) for v in metrics[m]] 17 values = [float(v) for v in metrics[m]]
19 else: 18 else:
20 values = float(metrics[m]) 19 values = float(metrics[m])
21 results.Add(trace, 'ms', values, chart_name=m) 20 results.Add(trace, 'ms', values, chart_name=m)
22 21
23 22
24 class Media(test.Test): 23 class Media(test.Test):
25 """Obtains media metrics for key user scenarios.""" 24 """Obtains media metrics for key user scenarios."""
26 test = media.Media 25 test = media.Media
27 page_set = 'page_sets/tough_video_cases.json' 26 page_set = 'page_sets/tough_video_cases.json'
28 27
28
29 class MediaNetworkSimulation(test.Test): 29 class MediaNetworkSimulation(test.Test):
30 """Obtains media metrics under different network simulations.""" 30 """Obtains media metrics under different network simulations."""
31 test = media.Media 31 test = media.Media
32 page_set = 'page_sets/media_cns_cases.json' 32 page_set = 'page_sets/media_cns_cases.json'
33 33
34
34 class MediaAndroid(test.Test): 35 class MediaAndroid(test.Test):
35 """Obtains media metrics for key user scenarios on Android.""" 36 """Obtains media metrics for key user scenarios on Android."""
36 test = media.Media 37 test = media.Media
37 tag = 'android' 38 tag = 'android'
38 page_set = 'page_sets/tough_video_cases.json' 39 page_set = 'page_sets/tough_video_cases.json'
39 # Exclude 4k and 50 fps media files (garden* & crowd*). 40 # Exclude 4k and 50 fps media files (garden* & crowd*).
40 options = { 41 options = {
41 'page_filter_exclude': '.*(crowd|garden).*' 42 'page_label_filter_exclude': '4k,50fps'}
42 } 43
44
45 class MediaChromeOS4kOnly(test.Test):
46 """Benchmark for media performance on ChromeOS using only 4k test content."""
47 test = media.Media
48 tag = 'chromeOS4kOnly'
49 page_set = 'page_sets/tough_video_cases.json'
50 options = {'page_label_filter': '4k',
51 # Exclude 50fps test files: crbug/331816
52 'page_label_filter_exclude': '50fps'}
53
43 54
44 class MediaChromeOS(test.Test): 55 class MediaChromeOS(test.Test):
45 """Obtains media metrics for key user scenarios on ChromeOS.""" 56 """Benchmark for media performance on all ChromeOS platforms.
57
58 This benchmark does not run 4k content, there's a separate benchmark for that.
59 """
46 test = media.Media 60 test = media.Media
47 tag = 'chromeOS' 61 tag = 'chromeOS'
48 page_set = 'page_sets/tough_video_cases.json' 62 page_set = 'page_sets/tough_video_cases.json'
49 # Exclude crowd* media files (50fps 2160p): crbug/331816 63 # Exclude 50fps test files: crbug/331816
50 options = { 64 options = {'page_label_filter_exclude': '4k,50fps'}
51 'page_filter_exclude': '.*crowd.*' 65
52 }
53 66
54 class MediaSourceExtensions(test.Test): 67 class MediaSourceExtensions(test.Test):
55 """Obtains media metrics for key media source extensions functions.""" 68 """Obtains media metrics for key media source extensions functions."""
56 test = MSEMeasurement 69 test = MSEMeasurement
57 page_set = 'page_sets/mse_cases.json' 70 page_set = 'page_sets/mse_cases.json'
58 71
59 def CustomizeBrowserOptions(self, options): 72 def CustomizeBrowserOptions(self, options):
60 # Needed to allow XHR requests to return stream objects. 73 # Needed to allow XHR requests to return stream objects.
61 options.AppendExtraBrowserArgs( 74 options.AppendExtraBrowserArgs(
62 ['--enable-experimental-web-platform-features', 75 ['--enable-experimental-web-platform-features',
63 '--disable-gesture-requirement-for-media-playback']) 76 '--disable-gesture-requirement-for-media-playback'])
OLDNEW
« no previous file with comments | « no previous file | tools/perf/page_sets/tough_video_cases.json » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698