Index: content/renderer/media/media_recorder_handler.cc |
diff --git a/content/renderer/media/media_recorder_handler.cc b/content/renderer/media/media_recorder_handler.cc |
index 81306935488eaec1062fc0981dc02d6d53baef77..5438f9cedda522555e77ed3300b6779b3853296d 100644 |
--- a/content/renderer/media/media_recorder_handler.cc |
+++ b/content/renderer/media/media_recorder_handler.cc |
@@ -93,10 +93,13 @@ bool MediaRecorderHandler::initialize( |
return false; |
} |
use_vp9_ = base::ToLowerASCII(codecs.utf8()).find("vp9") != std::string::npos; |
- media_stream_ = media_stream; |
DCHECK(client); |
client_ = client; |
+ media_stream_ = media_stream; |
+ DCHECK(MediaStream::GetMediaStream(media_stream)); |
perkj_chrome
2016/01/07 09:18:00
no need for this check. The same will happen on th
mcasas
2016/01/08 00:14:12
Done.
|
+ MediaStream::GetMediaStream(media_stream)->AddObserver(this); |
+ |
return true; |
} |
@@ -202,6 +205,19 @@ void MediaRecorderHandler::resume() { |
video_recorder->Resume(); |
} |
+void MediaRecorderHandler::TrackAdded(const blink::WebMediaStreamTrack& track) { |
+ WriteData(base::StringPiece("")); |
perkj_chrome
2016/01/07 09:18:00
Why is WriteData(base::StringPiece necessary here
mcasas
2016/01/08 00:14:12
Actually both writeData() and stop() are not neede
|
+ stop(); |
+ client_->failIllegalStreamModification("Track added"); |
+} |
+ |
+void MediaRecorderHandler::TrackRemoved( |
+ const blink::WebMediaStreamTrack& track) { |
+ WriteData(base::StringPiece("")); |
+ stop(); |
+ client_->failIllegalStreamModification("Track removed"); |
+} |
+ |
void MediaRecorderHandler::OnEncodedVideo( |
const scoped_refptr<media::VideoFrame>& video_frame, |
scoped_ptr<std::string> encoded_data, |