diff options
-rw-r--r-- | content/renderer/media/rtc_video_decoder.cc | 2 | ||||
-rw-r--r-- | content/renderer/media/rtc_video_encoder.cc | 12 | ||||
-rw-r--r-- | content/renderer/media/rtc_video_encoder.h | 2 | ||||
-rw-r--r-- | tools/metrics/histograms/histograms.xml | 21 |
4 files changed, 36 insertions, 1 deletions
diff --git a/content/renderer/media/rtc_video_decoder.cc b/content/renderer/media/rtc_video_decoder.cc index 0955e9f..5c470fd 100644 --- a/content/renderer/media/rtc_video_decoder.cc +++ b/content/renderer/media/rtc_video_decoder.cc @@ -754,7 +754,7 @@ int32_t RTCVideoDecoder::RecordInitDecodeUMA(int32_t status) { // Logging boolean is enough to know if HW decoding has been used. Also, // InitDecode is less likely to return an error so enum is not used here. bool sample = (status == WEBRTC_VIDEO_CODEC_OK) ? true : false; - UMA_HISTOGRAM_BOOLEAN("Media.RTCVideoDecoderInitDecodeStatus", sample); + UMA_HISTOGRAM_BOOLEAN("Media.RTCVideoDecoderInitDecodeSuccess", sample); return status; } diff --git a/content/renderer/media/rtc_video_encoder.cc b/content/renderer/media/rtc_video_encoder.cc index 1ce4b4a..2ab8e41 100644 --- a/content/renderer/media/rtc_video_encoder.cc +++ b/content/renderer/media/rtc_video_encoder.cc @@ -9,6 +9,7 @@ #include "base/logging.h" #include "base/memory/scoped_vector.h" #include "base/message_loop/message_loop_proxy.h" +#include "base/metrics/histogram.h" #include "base/synchronization/waitable_event.h" #include "content/renderer/media/renderer_gpu_video_accelerator_factories.h" #include "media/base/bitstream_buffer.h" @@ -512,6 +513,7 @@ int32_t RTCVideoEncoder::InitEncode(const webrtc::VideoCodec* codec_settings, // webrtc::VideoEncoder expects this call to be synchronous. initialization_waiter.Wait(); + RecordInitEncodeUMA(initialization_retval); return initialization_retval; } @@ -652,4 +654,14 @@ void RTCVideoEncoder::NotifyError(int32_t error) { impl_ = NULL; } +void RTCVideoEncoder::RecordInitEncodeUMA(int32_t init_retval) { + UMA_HISTOGRAM_BOOLEAN("Media.RTCVideoEncoderInitEncodeSuccess", + init_retval == WEBRTC_VIDEO_CODEC_OK); + if (init_retval == WEBRTC_VIDEO_CODEC_OK) { + UMA_HISTOGRAM_ENUMERATION("Media.RTCVideoEncoderProfile", + video_codec_profile_, + media::VIDEO_CODEC_PROFILE_MAX); + } +} + } // namespace content diff --git a/content/renderer/media/rtc_video_encoder.h b/content/renderer/media/rtc_video_encoder.h index 3c15a55..3cc9c59 100644 --- a/content/renderer/media/rtc_video_encoder.h +++ b/content/renderer/media/rtc_video_encoder.h @@ -69,6 +69,8 @@ class CONTENT_EXPORT RTCVideoEncoder void NotifyError(int32_t error); + void RecordInitEncodeUMA(int32_t init_retval); + base::ThreadChecker thread_checker_; // The video codec type, as reported to WebRTC. diff --git a/tools/metrics/histograms/histograms.xml b/tools/metrics/histograms/histograms.xml index a8a0998..b514fd9 100644 --- a/tools/metrics/histograms/histograms.xml +++ b/tools/metrics/histograms/histograms.xml @@ -6126,9 +6126,30 @@ other types of suffix sets. </histogram> <histogram name="Media.RTCVideoDecoderInitDecodeStatus" enum="BooleanSuccess"> + <obsolete> + Renamed to Media.RTCVideoDecoderInitDecodeSuccess. + </obsolete> <summary>Results of attempts to RTCVideoDecoder::InitDecode().</summary> </histogram> +<histogram name="Media.RTCVideoDecoderInitDecodeSuccess" enum="BooleanSuccess"> + <summary> + Indicates whether we were successful in initializing hardware video decoder + for use in the RTC pipeline. + </summary> +</histogram> + +<histogram name="Media.RTCVideoEncoderInitEncodeSuccess" enum="BooleanSuccess"> + <summary> + Indicates whether we were successful in initializing hardware video encoder + for use in the RTC pipeline. + </summary> +</histogram> + +<histogram name="Media.RTCVideoEncoderProfile" enum="VideoCodecProfile"> + <summary>Video codec profile used in RTC video encoder.</summary> +</histogram> + <histogram name="Media.TimeToPipelineStarted" units="ms"> <summary> Time in milliseconds from HTML5 media pipeline creation to playing event. |