| Index: tools/perf/perf_tools/media_measurement.py
|
| diff --git a/tools/perf/perf_tools/media_measurement.py b/tools/perf/perf_tools/media_measurement.py
|
| new file mode 100644
|
| index 0000000000000000000000000000000000000000..c6cd47f64c447562335200a6649ca2bc77936fdb
|
| --- /dev/null
|
| +++ b/tools/perf/perf_tools/media_measurement.py
|
| @@ -0,0 +1,33 @@
|
| +# Copyright (c) 2013 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.
|
| +
|
| +"""Media measurement class gathers media related metrics on a page set.
|
| +
|
| +Media metrics recorded are controlled by media_metrics.js. At the end of the
|
| +test each metrics for every media element in the page are reported.
|
| +"""
|
| +from perf_tools import media_metrics
|
| +
|
| +from telemetry.page import page_measurement
|
| +
|
| +
|
| +class MediaMeasurement(page_measurement.PageMeasurement):
|
| + """Provide general video and audio metrics."""
|
| +
|
| + def __init__(self):
|
| + super(MediaMeasurement, self).__init__('media_metrics')
|
| + self.metrics = None
|
| +
|
| + def results_are_the_same_on_every_page(self):
|
| + """Results can vary from page to page based on media events taking place."""
|
| + return False
|
| +
|
| + def DidNavigateToPage(self, page, tab):
|
| + """Override to do operations right after the page is navigated."""
|
| + self.metrics = media_metrics.MediaMetrics(tab)
|
| + self.metrics.Start()
|
| +
|
| + def MeasurePage(self, page, tab, results):
|
| + """Measure the page's performance."""
|
| + self.metrics.StopAndGetResults(results)
|
|
|