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

Issue 2697703003: MediaRecorder: make sure ondataavailable+onstop events are fired before onerror (Closed)

Created:
3 years, 10 months ago by mcasas
Modified:
3 years, 10 months ago
Reviewers:
emircan
CC:
chromium-reviews, posciak+watch_chromium.org, blink-reviews, haraken, emircan+watch+mediarecorder_chromium.org, mcasas+watch+mediarecorder_chromium.org
Target Ref:
refs/pending/heads/master
Project:
chromium
Visibility:
Public.

Description

MediaRecorder: make sure ondataavailable+onstop events are fired before onerror This CL makes sure that "error" is the last event to be fired, after any "dataavailable" and "stop" events have been received, which was brought up in [1]; A typical situation triggering an error condition is if the amount of tracks of the MediaStream being recorded changes. Checking for this amount of tracks is moved to the renderer/ implementation so all the errors are now sent via onError(), which forces the recording to stop(). Added a new Layout Test for it (using <canvas>.captureStream() ISO getUserMedia() which makes it more upstream-able). [1] https://github.com/w3c/mediacapture-record/issues/52 BUG=693179 Review-Url: https://codereview.chromium.org/2697703003 Cr-Commit-Position: refs/heads/master@{#451561} Committed: https://chromium.googlesource.com/chromium/src/+/786184e85335e590fd0dd3b31d267f524633a90b

Patch Set 1 #

Total comments: 8

Patch Set 2 : emircan@s comments #

Total comments: 6

Patch Set 3 : emircan@ comments: checking tracks individually via id #

Patch Set 4 : fix some naming confusion #

Unified diffs Side-by-side diffs Delta from patch set Stats (+126 lines, -24 lines) Patch
M content/renderer/media/recorder/media_recorder_handler.h View 1 2 3 2 chunks +5 lines, -0 lines 0 comments Download
M content/renderer/media/recorder/media_recorder_handler.cc View 1 2 3 7 chunks +59 lines, -13 lines 0 comments Download
A third_party/WebKit/LayoutTests/fast/mediarecorder/MediaRecorder-error.html View 1 1 chunk +60 lines, -0 lines 0 comments Download
M third_party/WebKit/Source/modules/mediarecorder/MediaRecorder.h View 1 chunk +0 lines, -1 line 0 comments Download
M third_party/WebKit/Source/modules/mediarecorder/MediaRecorder.cpp View 3 chunks +2 lines, -10 lines 0 comments Download

Messages

Total messages: 29 (19 generated)
mcasas
emircan@ PTAL
3 years, 10 months ago (2017-02-16 20:02:59 UTC) #9
emircan
https://codereview.chromium.org/2697703003/diff/40001/content/renderer/media/recorder/media_recorder_handler.cc File content/renderer/media/recorder/media_recorder_handler.cc (right): https://codereview.chromium.org/2697703003/diff/40001/content/renderer/media/recorder/media_recorder_handler.cc#newcode150 content/renderer/media/recorder/media_recorder_handler.cc:150: media_stream_num_tracks_ = 0; // Will be updated in start(); ...
3 years, 10 months ago (2017-02-17 00:19:07 UTC) #10
mcasas
ptal https://codereview.chromium.org/2697703003/diff/40001/content/renderer/media/recorder/media_recorder_handler.cc File content/renderer/media/recorder/media_recorder_handler.cc (right): https://codereview.chromium.org/2697703003/diff/40001/content/renderer/media/recorder/media_recorder_handler.cc#newcode150 content/renderer/media/recorder/media_recorder_handler.cc:150: media_stream_num_tracks_ = 0; // Will be updated in ...
3 years, 10 months ago (2017-02-17 01:46:14 UTC) #12
emircan
https://codereview.chromium.org/2697703003/diff/80001/content/renderer/media/recorder/media_recorder_handler.cc File content/renderer/media/recorder/media_recorder_handler.cc (right): https://codereview.chromium.org/2697703003/diff/80001/content/renderer/media/recorder/media_recorder_handler.cc#newcode151 content/renderer/media/recorder/media_recorder_handler.cc:151: not: Remove empty line. https://codereview.chromium.org/2697703003/diff/80001/content/renderer/media/recorder/media_recorder_handler.cc#newcode340 content/renderer/media/recorder/media_recorder_handler.cc:340: media_stream_num_audio_tracks_ == audio_tracks.size()) ...
3 years, 10 months ago (2017-02-17 18:59:25 UTC) #13
mcasas
ptal https://codereview.chromium.org/2697703003/diff/80001/content/renderer/media/recorder/media_recorder_handler.cc File content/renderer/media/recorder/media_recorder_handler.cc (right): https://codereview.chromium.org/2697703003/diff/80001/content/renderer/media/recorder/media_recorder_handler.cc#newcode151 content/renderer/media/recorder/media_recorder_handler.cc:151: On 2017/02/17 18:59:25, emircan wrote: > not: Remove ...
3 years, 10 months ago (2017-02-17 20:40:29 UTC) #15
emircan
lgtm
3 years, 10 months ago (2017-02-20 02:29:21 UTC) #20
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/2697703003/140001
3 years, 10 months ago (2017-02-20 02:29:37 UTC) #22
commit-bot: I haz the power
Try jobs failed on following builders: mac_chromium_rel_ng on master.tryserver.chromium.mac (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.mac/builders/mac_chromium_rel_ng/builds/391545)
3 years, 10 months ago (2017-02-20 04:09:47 UTC) #24
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/2697703003/140001
3 years, 10 months ago (2017-02-20 04:28:01 UTC) #26
commit-bot: I haz the power
3 years, 10 months ago (2017-02-20 05:28:53 UTC) #29
Message was sent while issue was closed.
Committed patchset #4 (id:140001) as
https://chromium.googlesource.com/chromium/src/+/786184e85335e590fd0dd3b31d26...

Powered by Google App Engine
This is Rietveld 408576698