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

Issue 2616213002: Fix WebrtcVideoStream to handle failed capture requests. (Closed)

Created:
3 years, 11 months ago by Sergey Ulanov
Modified:
3 years, 11 months ago
Reviewers:
joedow
CC:
chromium-reviews, posciak+watch_chromium.org, chromoting-reviews_chromium.org
Target Ref:
refs/pending/heads/master
Project:
chromium
Visibility:
Public.

Description

Fix WebrtcVideoStream to handle failed capture requests. DesktopCapturer implementations are allowed to fail Capture() requests. In that case the caller it supposed to retry later. WebrtcVideoStream wasn't handling this case properly. On Windows the first Capture() request often fails because it requires desktop process initialization. WebrtcFrameScheduler, WebrtcVideoEncoder and their implementations were also updated to accept nullptr frames, to make it possible to top-off previous frame, while the capturer keeps failing. Also updated DesktopSessionProxy to return ERROR_TEMPORARY instead of ERROR_PERMANENT when the desktop process is not connected. BUG=678712 Review-Url: https://codereview.chromium.org/2616213002 Cr-Commit-Position: refs/heads/master@{#442391} Committed: https://chromium.googlesource.com/chromium/src/+/14b918b5e1c3df87e6d509848bce539a8dfef264

Patch Set 1 #

Total comments: 6

Patch Set 2 : . #

Unified diffs Side-by-side diffs Delta from patch set Stats (+221 lines, -110 lines) Patch
M remoting/codec/webrtc_video_encoder.h View 1 chunk +5 lines, -4 lines 0 comments Download
M remoting/codec/webrtc_video_encoder_vpx.h View 2 chunks +2 lines, -2 lines 0 comments Download
M remoting/codec/webrtc_video_encoder_vpx.cc View 6 chunks +24 lines, -15 lines 0 comments Download
M remoting/host/desktop_session_proxy.cc View 2 chunks +2 lines, -2 lines 0 comments Download
M remoting/protocol/connection_unittest.cc View 1 9 chunks +78 lines, -16 lines 0 comments Download
M remoting/protocol/webrtc_frame_scheduler.h View 1 2 chunks +10 lines, -12 lines 0 comments Download
M remoting/protocol/webrtc_frame_scheduler_simple.h View 2 chunks +9 lines, -7 lines 0 comments Download
M remoting/protocol/webrtc_frame_scheduler_simple.cc View 1 6 chunks +50 lines, -31 lines 0 comments Download
M remoting/protocol/webrtc_video_stream.h View 1 chunk +5 lines, -0 lines 0 comments Download
M remoting/protocol/webrtc_video_stream.cc View 5 chunks +36 lines, -21 lines 0 comments Download

Messages

Total messages: 11 (6 generated)
Sergey Ulanov
3 years, 11 months ago (2017-01-07 00:32:44 UTC) #2
joedow
lgtm https://codereview.chromium.org/2616213002/diff/1/remoting/protocol/connection_unittest.cc File remoting/protocol/connection_unittest.cc (right): https://codereview.chromium.org/2616213002/diff/1/remoting/protocol/connection_unittest.cc#newcode659 remoting/protocol/connection_unittest.cc:659: WaitNextVideoFrame(); Would it make sense to wait one ...
3 years, 11 months ago (2017-01-09 20:00:28 UTC) #3
Sergey Ulanov
https://codereview.chromium.org/2616213002/diff/1/remoting/protocol/connection_unittest.cc File remoting/protocol/connection_unittest.cc (right): https://codereview.chromium.org/2616213002/diff/1/remoting/protocol/connection_unittest.cc#newcode659 remoting/protocol/connection_unittest.cc:659: WaitNextVideoFrame(); On 2017/01/09 20:00:28, joedow wrote: > Would it ...
3 years, 11 months ago (2017-01-09 22:24:06 UTC) #5
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.org/2616213002/20001
3 years, 11 months ago (2017-01-09 22:25:08 UTC) #8
commit-bot: I haz the power
3 years, 11 months ago (2017-01-09 23:10:56 UTC) #11
Message was sent while issue was closed.
Committed patchset #2 (id:20001) as
https://chromium.googlesource.com/chromium/src/+/14b918b5e1c3df87e6d509848bce...

Powered by Google App Engine
This is Rietveld 408576698