OLD | NEW |
1 # Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 # Copyright (c) 2012 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 import os | 4 import os |
5 | 5 |
6 from telemetry.page import page_measurement | 6 from telemetry.page import page_measurement |
7 | 7 |
8 _JS = 'chrome.gpuBenchmarking.printToSkPicture("{0}");' | 8 _JS = 'chrome.gpuBenchmarking.printToSkPicture("{0}");' |
9 | 9 |
10 class SkPicturePrinter(page_measurement.PageMeasurement): | 10 class SkPicturePrinter(page_measurement.PageMeasurement): |
11 def AddCommandLineOptions(self, parser): | 11 def AddCommandLineOptions(self, parser): |
12 parser.add_option('-o', '--outdir', help='Output directory') | 12 parser.add_option('-s', '--skp-outdir', |
| 13 help='Output directory for the SKP files') |
13 | 14 |
14 def CustomizeBrowserOptions(self, options): | 15 def CustomizeBrowserOptions(self, options): |
15 options.extra_browser_args.extend(['--enable-gpu-benchmarking', | 16 options.extra_browser_args.extend(['--enable-gpu-benchmarking', |
16 '--no-sandbox']) | 17 '--no-sandbox', |
| 18 '--enable-deferred-image-decoding', |
| 19 '--force-compositing-mode']) |
17 | 20 |
18 def MeasurePage(self, page, tab, results): | 21 def MeasurePage(self, page, tab, results): |
19 if self.options.outdir is not None: | 22 skp_outdir = self.options.skp_outdir |
20 outpath = os.path.join(self.options.outdir, page.url_as_file_safe_name) | 23 if not skp_outdir: |
21 outpath = os.path.abspath(outpath) | 24 raise Exception('Please specify --skp-outdir') |
| 25 outpath = os.path.abspath( |
| 26 os.path.join(skp_outdir, |
| 27 page.url_as_file_safe_name)) |
22 # Replace win32 path separator char '\' with '\\'. | 28 # Replace win32 path separator char '\' with '\\'. |
23 js = _JS.format(outpath.replace('\\', '\\\\')) | 29 js = _JS.format(outpath.replace('\\', '\\\\')) |
24 tab.EvaluateJavaScript(js) | 30 tab.EvaluateJavaScript(js) |
25 results.Add('output_path', 'path', outpath) | 31 results.Add('output_path', 'path', outpath) |
OLD | NEW |