Commit dee58c1c authored by qiangchen's avatar qiangchen Committed by Commit bot

Add UMA Metrics For Desktop Share With Audio

The existing UMA counts "Screen Capturer Creation" and "System Audio Capturer Creation". But based on those two metrics, we have no idea how frequent a stream is created with Screen Share and Audio Share simultaneously. Thus in this CL we add finer metrics "Screen Capturer Created With/Without Audio".

Similar situation for tab capture.

BUG=649749

Review-Url: https://codereview.chromium.org/2363003003
Cr-Commit-Position: refs/heads/master@{#420743}
parent 68dc75d7
......@@ -380,6 +380,13 @@ std::unique_ptr<media::VideoCaptureDevice> DesktopCaptureDevice::Create(
webrtc::MouseCursorMonitor::CreateForScreen(options,
source.id)));
IncrementDesktopCaptureCounter(SCREEN_CAPTURER_CREATED);
if (source.audio_share) {
IncrementDesktopCaptureCounter(
SCREEN_CAPTURER_CREATED_WITH_AUDIO);
} else {
IncrementDesktopCaptureCounter(
SCREEN_CAPTURER_CREATED_WITHOUT_AUDIO);
}
}
break;
}
......
......@@ -10,6 +10,7 @@
#include "base/memory/ptr_util.h"
#include "base/timer/timer.h"
#include "content/browser/media/capture/aura_window_capture_machine.h"
#include "content/browser/media/capture/desktop_capture_device_uma_types.h"
#include "content/public/browser/browser_thread.h"
#include "ui/aura/window.h"
......@@ -22,8 +23,15 @@ void SetCaptureSource(AuraWindowCaptureMachine* machine,
DCHECK_CURRENTLY_ON(BrowserThread::UI);
aura::Window* window = DesktopMediaID::GetAuraWindowById(source);
if (window)
if (window) {
machine->SetWindow(window);
if (source.type == DesktopMediaID::TYPE_SCREEN) {
if (source.audio_share)
IncrementDesktopCaptureCounter(SCREEN_CAPTURER_CREATED_WITH_AUDIO);
else
IncrementDesktopCaptureCounter(SCREEN_CAPTURER_CREATED_WITHOUT_AUDIO);
}
}
}
} // namespace
......
......@@ -20,6 +20,10 @@ enum DesktopCaptureCounters {
TAB_VIDEO_CAPTURER_CREATED,
TAB_AUDIO_CAPTURER_CREATED,
SYSTEM_LOOPBACK_AUDIO_CAPTURER_CREATED,
SCREEN_CAPTURER_CREATED_WITH_AUDIO,
SCREEN_CAPTURER_CREATED_WITHOUT_AUDIO,
TAB_VIDEO_CAPTURER_CREATED_WITH_AUDIO,
TAB_VIDEO_CAPTURER_CREATED_WITHOUT_AUDIO,
DESKTOP_CAPTURE_COUNTER_BOUNDARY
};
......
......@@ -622,6 +622,11 @@ VideoCaptureManager::DoStartDesktopCaptureOnDeviceThread(
if (desktop_id.type == DesktopMediaID::TYPE_WEB_CONTENTS) {
video_capture_device.reset(WebContentsVideoCaptureDevice::Create(id));
IncrementDesktopCaptureCounter(TAB_VIDEO_CAPTURER_CREATED);
if (desktop_id.audio_share) {
IncrementDesktopCaptureCounter(TAB_VIDEO_CAPTURER_CREATED_WITH_AUDIO);
} else {
IncrementDesktopCaptureCounter(TAB_VIDEO_CAPTURER_CREATED_WITHOUT_AUDIO);
}
} else {
#if defined(OS_ANDROID)
video_capture_device = base::MakeUnique<ScreenCaptureDeviceAndroid>();
......
......@@ -75736,6 +75736,10 @@ http://cs/file:chrome/histograms.xml - but prefer this file for new entries.
<int value="6" label="Tab video capturer created."/>
<int value="7" label="Tab audio capturer created."/>
<int value="8" label="System loopback audio capturer created."/>
<int value="9" label="Screen capturer created together with audio capturer."/>
<int value="10" label="Screen capturer created without audio capturer."/>
<int value="11" label="Tab capturer created together with audio capturer."/>
<int value="12" label="Tab capturer created without audio capturer."/>
</enum>
<enum name="DesktopSearchRedirectionInfobarCloseAction" type="int">
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment