Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(111)

Issue 1484403002: cast: Support for low-latency interactive mode (Closed)

Created:
5 years ago by Irfan
Modified:
5 years ago
Reviewers:
xjz, Devlin, jam, miu, DaleCurtis
CC:
chromium-reviews, imcheng+watch_chromium.org, posciak+watch_chromium.org, avayvod+watch_chromium.org, mcasas+watch_chromium.org, feature-media-reviews_chromium.org, darin-cc_chromium.org, jasonroberts+watch_google.com, xjz+watch_chromium.org, isheriff+watch_chromium.org, miu+watch_chromium.org
Base URL:
https://chromium.googlesource.com/chromium/src.git@master
Target Ref:
refs/pending/heads/master
Project:
chromium
Visibility:
Public.

Description

cast: Support for low-latency interactive mode Add support to detect the presence of user interaction while playing non-animated content and then adapt the target playout latency accordingly. We leverage the detection of animation content added for ZeroConfig and switch to a low-latency target playout mode when there is sufficient user interaction and the content being played is not detected to be animation content. The goal is to address clear interactive user cases (slides presentation etc.,) while keeping the impact on animated content watching experience minimal. Testing involved switching between static and animated content while interacting and using a UDP proxy to observe the target playout time reduce during interaction with low-frame rate content and observe it go up once the sender observes a drop while playing animated content. BUG=405339 Committed: https://crrev.com/70bcae439e4adfdecbc508787d2334a88f7f7984 Cr-Commit-Position: refs/heads/master@{#364160}

Patch Set 1 #

Total comments: 14

Patch Set 2 : #

Total comments: 26

Patch Set 3 : Addressed comments #

Patch Set 4 : Fix GN build #

Patch Set 5 : Fix cast streaming API tests #

Total comments: 12

Patch Set 6 : Addressed comments #

Total comments: 2

Patch Set 7 : Add crbug in comments #

Patch Set 8 : Rebased #

Unified diffs Side-by-side diffs Delta from patch set Stats (+407 lines, -48 lines) Patch
M chrome/common/extensions/api/cast_streaming_rtp_stream.idl View 1 1 chunk +4 lines, -0 lines 0 comments Download
M chrome/renderer/extensions/cast_streaming_native_handler.cc View 1 2 3 chunks +7 lines, -0 lines 0 comments Download
M chrome/renderer/media/cast_rtp_stream.h View 1 2 2 chunks +16 lines, -10 lines 0 comments Download
M chrome/renderer/media/cast_rtp_stream.cc View 1 2 3 4 4 chunks +56 lines, -11 lines 0 comments Download
M content/browser/BUILD.gn View 1 2 3 4 5 6 7 1 chunk +2 lines, -0 lines 0 comments Download
M content/browser/media/capture/web_contents_video_capture_device.cc View 1 2 3 4 5 6 9 chunks +68 lines, -11 lines 0 comments Download
A content/browser/media/capture/window_activity_tracker.h View 1 2 3 1 chunk +32 lines, -0 lines 0 comments Download
A content/browser/media/capture/window_activity_tracker_aura.h View 1 2 3 4 5 1 chunk +56 lines, -0 lines 0 comments Download
A content/browser/media/capture/window_activity_tracker_aura.cc View 1 2 3 1 chunk +71 lines, -0 lines 0 comments Download
M content/content_browser.gypi View 1 2 3 4 5 6 7 1 chunk +3 lines, -0 lines 0 comments Download
M media/base/video_frame_metadata.h View 1 2 3 4 5 2 chunks +10 lines, -0 lines 0 comments Download
M media/capture/content/thread_safe_capture_oracle.h View 1 3 chunks +7 lines, -3 lines 0 comments Download
M media/capture/content/video_capture_oracle.h View 1 3 chunks +8 lines, -3 lines 0 comments Download
M media/cast/cast_config.h View 1 2 chunks +6 lines, -0 lines 0 comments Download
M media/cast/sender/audio_sender.cc View 1 1 chunk +1 line, -0 lines 0 comments Download
M media/cast/sender/frame_sender.h View 1 2 3 4 5 6 7 2 chunks +18 lines, -8 lines 0 comments Download
M media/cast/sender/frame_sender.cc View 1 2 3 4 5 6 7 4 chunks +13 lines, -1 line 0 comments Download
M media/cast/sender/video_sender.h View 1 2 3 4 5 1 chunk +5 lines, -0 lines 0 comments Download
M media/cast/sender/video_sender.cc View 1 2 3 4 5 4 chunks +24 lines, -1 line 0 comments Download

Messages

Total messages: 38 (14 generated)
Irfan
PTAL
5 years ago (2015-12-01 18:09:34 UTC) #3
miu
https://codereview.chromium.org/1484403002/diff/1/content/browser/media/capture/web_contents_video_capture_device.cc File content/browser/media/capture/web_contents_video_capture_device.cc (right): https://codereview.chromium.org/1484403002/diff/1/content/browser/media/capture/web_contents_video_capture_device.cc#newcode378 content/browser/media/capture/web_contents_video_capture_device.cc:378: frame->metadata()->SetBoolean(media::VideoFrameMetadata::ANIMATION_CONTENT, In-line with other comments (video_sender.cc), I think it'd ...
5 years ago (2015-12-01 21:15:27 UTC) #5
Irfan
https://codereview.chromium.org/1484403002/diff/1/content/browser/media/capture/web_contents_video_capture_device.cc File content/browser/media/capture/web_contents_video_capture_device.cc (right): https://codereview.chromium.org/1484403002/diff/1/content/browser/media/capture/web_contents_video_capture_device.cc#newcode378 content/browser/media/capture/web_contents_video_capture_device.cc:378: frame->metadata()->SetBoolean(media::VideoFrameMetadata::ANIMATION_CONTENT, On 2015/12/01 21:15:27, miu wrote: > In-line with ...
5 years ago (2015-12-02 22:32:44 UTC) #6
Irfan
PTAL - Moved UI activity detection in the web contents capture code - Added a ...
5 years ago (2015-12-02 22:37:55 UTC) #7
miu
This is much cleaner, and thanks for making the activity tracker (separate from the CursorRenderer). ...
5 years ago (2015-12-03 21:26:23 UTC) #8
Irfan
https://codereview.chromium.org/1484403002/diff/20001/chrome/renderer/extensions/cast_streaming_native_handler.cc File chrome/renderer/extensions/cast_streaming_native_handler.cc (right): https://codereview.chromium.org/1484403002/diff/20001/chrome/renderer/extensions/cast_streaming_native_handler.cc#newcode94 chrome/renderer/extensions/cast_streaming_native_handler.cc:94: : ext_params.max_latency; On 2015/12/03 21:26:22, miu wrote: > I ...
5 years ago (2015-12-04 22:45:37 UTC) #9
Irfan
PTAL
5 years ago (2015-12-04 23:09:32 UTC) #10
Irfan
+Devlin, for owner review
5 years ago (2015-12-04 23:10:37 UTC) #12
Irfan
PS #4 adds the renamed files I forgot to commit
5 years ago (2015-12-04 23:12:56 UTC) #13
Irfan
PTAL. PS#5 fixes a bug caught by test (animated latency was not being set to ...
5 years ago (2015-12-07 19:53:04 UTC) #16
Devlin
extensions lgtm
5 years ago (2015-12-07 20:14:06 UTC) #17
miu
https://codereview.chromium.org/1484403002/diff/20001/chrome/renderer/extensions/cast_streaming_native_handler.cc File chrome/renderer/extensions/cast_streaming_native_handler.cc (right): https://codereview.chromium.org/1484403002/diff/20001/chrome/renderer/extensions/cast_streaming_native_handler.cc#newcode94 chrome/renderer/extensions/cast_streaming_native_handler.cc:94: : ext_params.max_latency; On 2015/12/04 22:45:36, Irfan wrote: > On ...
5 years ago (2015-12-08 00:16:16 UTC) #18
Irfan
https://codereview.chromium.org/1484403002/diff/120001/chrome/renderer/media/cast_rtp_stream.h File chrome/renderer/media/cast_rtp_stream.h (right): https://codereview.chromium.org/1484403002/diff/120001/chrome/renderer/media/cast_rtp_stream.h#newcode88 chrome/renderer/media/cast_rtp_stream.h:88: CastRtpPayloadParams(); On 2015/12/08 00:16:16, miu wrote: > Is the ...
5 years ago (2015-12-08 01:30:19 UTC) #19
Irfan
PTAL
5 years ago (2015-12-08 01:36:54 UTC) #20
miu
lgtm https://codereview.chromium.org/1484403002/diff/140001/content/browser/media/capture/web_contents_video_capture_device.cc File content/browser/media/capture/web_contents_video_capture_device.cc (right): https://codereview.chromium.org/1484403002/diff/140001/content/browser/media/capture/web_contents_video_capture_device.cc#newcode442 content/browser/media/capture/web_contents_video_capture_device.cc:442: #if defined(USE_AURA) BTW--Is there a bug to track ...
5 years ago (2015-12-08 02:04:59 UTC) #21
Irfan
https://codereview.chromium.org/1484403002/diff/140001/content/browser/media/capture/web_contents_video_capture_device.cc File content/browser/media/capture/web_contents_video_capture_device.cc (right): https://codereview.chromium.org/1484403002/diff/140001/content/browser/media/capture/web_contents_video_capture_device.cc#newcode442 content/browser/media/capture/web_contents_video_capture_device.cc:442: #if defined(USE_AURA) On 2015/12/08 02:04:59, miu wrote: > BTW--Is ...
5 years ago (2015-12-08 15:24:12 UTC) #22
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1484403002/160001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1484403002/160001
5 years ago (2015-12-08 23:01:00 UTC) #25
commit-bot: I haz the power
Try jobs failed on following builders: chromium_presubmit on tryserver.chromium.linux (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.linux/builders/chromium_presubmit/builds/126709) mac_chromium_rel_ng on tryserver.chromium.mac (JOB_FAILED, ...
5 years ago (2015-12-08 23:31:18 UTC) #27
Irfan
dalecurtis@, please look at media/base/ changes for LGTM jam@, please look at content/ changes for ...
5 years ago (2015-12-08 23:39:49 UTC) #29
jam
On 2015/12/08 23:39:49, Irfan wrote: > dalecurtis@, please look at media/base/ changes for LGTM > ...
5 years ago (2015-12-09 00:00:06 UTC) #30
DaleCurtis
lgtm
5 years ago (2015-12-09 21:00:04 UTC) #31
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1484403002/180001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1484403002/180001
5 years ago (2015-12-09 21:07:50 UTC) #34
commit-bot: I haz the power
Committed patchset #8 (id:180001)
5 years ago (2015-12-09 21:41:38 UTC) #36
commit-bot: I haz the power
5 years ago (2015-12-09 21:42:33 UTC) #38
Message was sent while issue was closed.
Patchset 8 (id:??) landed as
https://crrev.com/70bcae439e4adfdecbc508787d2334a88f7f7984
Cr-Commit-Position: refs/heads/master@{#364160}

Powered by Google App Engine
This is Rietveld 408576698