Index: tools/perf/metrics/media.py |
diff --git a/tools/perf/metrics/media.py b/tools/perf/metrics/media.py |
index c3b9051ea09cfa1b4d0717135c7162e92150d593..a594ec733db86896e74edaa4b00b7c2e0bde484a 100644 |
--- a/tools/perf/metrics/media.py |
+++ b/tools/perf/metrics/media.py |
@@ -6,6 +6,7 @@ import os |
from metrics import Metric |
+ |
class MediaMetric(Metric): |
"""MediaMetric class injects and calls JS responsible for recording metrics. |
@@ -13,15 +14,19 @@ class MediaMetric(Metric): |
such as decoded_frame_count, dropped_frame_count, decoded_video_bytes, and |
decoded_audio_bytes. |
""" |
+ |
def __init__(self, tab): |
super(MediaMetric, self).__init__() |
with open(os.path.join(os.path.dirname(__file__), 'media.js')) as f: |
js = f.read() |
tab.ExecuteJavaScript(js) |
self._results = None |
+ self._skip_basic_metrics = False |
def Start(self, page, tab): |
"""Create the media metrics for all media elements in the document.""" |
+ if hasattr(page.page_set, 'skip_basic_metrics'): |
+ self._skip_basic_metrics = page.page_set.skip_basic_metrics |
tab.ExecuteJavaScript('window.__createMediaMetricsForDocument()') |
def Stop(self, page, tab): |
@@ -58,12 +63,15 @@ class MediaMetric(Metric): |
if not trace: |
logging.error('Metrics ID is missing in results.') |
return |
- AddOneResult('avg_loop_time', 'sec') |
- AddOneResult('buffering_time', 'sec') |
- AddOneResult('decoded_audio_bytes', 'bytes') |
- AddOneResult('decoded_video_bytes', 'bytes') |
- AddOneResult('decoded_frame_count', 'frames') |
- AddOneResult('dropped_frame_count', 'frames') |
+ |
+ if not self._skip_basic_metrics: |
+ AddOneResult('avg_loop_time', 'sec') |
+ AddOneResult('buffering_time', 'sec') |
+ AddOneResult('decoded_audio_bytes', 'bytes') |
+ AddOneResult('decoded_video_bytes', 'bytes') |
+ AddOneResult('decoded_frame_count', 'frames') |
+ AddOneResult('dropped_frame_count', 'frames') |
+ AddOneResult('time_to_play', 'sec') |
+ |
AddOneResult('seek', 'sec') |
- AddOneResult('time_to_play', 'sec') |