| 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 6fee4603159f8f72c43ca5eeacc2fcc27d54167d..c912f9bda9973cec4327f1587c797ed4dca7ae1e 100644
|
| --- a/content/renderer/media/media_recorder_handler.cc
|
| +++ b/content/renderer/media/media_recorder_handler.cc
|
| @@ -32,8 +32,9 @@ MediaRecorderHandler::~MediaRecorderHandler() {
|
| bool MediaRecorderHandler::canSupportMimeType(
|
| const blink::WebString& mimeType) {
|
| DCHECK(main_render_thread_checker_.CalledOnValidThread());
|
| - // TODO(mcasas): For the time being only empty or "video/vp8" are supported.
|
| - return mimeType.isEmpty() || mimeType.utf8().compare("video/vp8") == 0;
|
| + // TODO(mcasas): So far only empty or "video/vp{8,9}" are supported.
|
| + return mimeType.isEmpty() || mimeType.utf8().compare("video/vp8") == 0 ||
|
| + mimeType.utf8().compare("video/vp9") == 0;
|
| }
|
|
|
| bool MediaRecorderHandler::initialize(
|
| @@ -49,6 +50,7 @@ bool MediaRecorderHandler::initialize(
|
| DLOG(ERROR) << "Can't support type " << mimeType.utf8();
|
| return false;
|
| }
|
| + use_vp9_ = mimeType.utf8().compare("video/vp9") == 0;
|
| media_stream_ = media_stream;
|
| DCHECK(client);
|
| client_ = client;
|
| @@ -68,8 +70,9 @@ bool MediaRecorderHandler::start(int timeslice) {
|
| DCHECK(!media_stream_.isNull());
|
| DCHECK(!webm_muxer_);
|
|
|
| - webm_muxer_.reset(new media::WebmMuxer(base::Bind(
|
| - &MediaRecorderHandler::WriteData, weak_factory_.GetWeakPtr())));
|
| + webm_muxer_.reset(new media::WebmMuxer(
|
| + use_vp9_, base::Bind(&MediaRecorderHandler::WriteData,
|
| + weak_factory_.GetWeakPtr())));
|
|
|
| blink::WebVector<blink::WebMediaStreamTrack> video_tracks;
|
| media_stream_.videoTracks(video_tracks);
|
| @@ -94,7 +97,8 @@ bool MediaRecorderHandler::start(int timeslice) {
|
| weak_factory_.GetWeakPtr()));
|
|
|
| video_recorders_.push_back(new VideoTrackRecorder(video_track,
|
| - on_encoded_video_cb));
|
| + on_encoded_video_cb,
|
| + use_vp9_));
|
|
|
| recording_ = true;
|
| return true;
|
|
|