| 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 bc8ee7804af57bdd3fb6a7ac54e7a69c9aab6002..7144af2f865b0577a58babb90cc7de40aead7b19 100644
|
| --- a/content/renderer/media/media_recorder_handler.cc
|
| +++ b/content/renderer/media/media_recorder_handler.cc
|
| @@ -11,10 +11,13 @@
|
| #include "content/renderer/media/webrtc_uma_histograms.h"
|
| #include "media/base/bind_to_current_loop.h"
|
| #include "media/base/video_frame.h"
|
| -#include "media/capture/webm_muxer.h"
|
| #include "third_party/WebKit/public/platform/WebMediaRecorderHandlerClient.h"
|
| #include "third_party/WebKit/public/platform/WebString.h"
|
|
|
| +#if !defined(MEDIA_DISABLE_LIBWEBM)
|
| +#include "media/capture/webm_muxer.h"
|
| +#endif
|
| +
|
| using base::TimeDelta;
|
| using base::TimeTicks;
|
|
|
| @@ -74,7 +77,6 @@ bool MediaRecorderHandler::start(int timeslice) {
|
| DCHECK(main_render_thread_checker_.CalledOnValidThread());
|
| DCHECK(!recording_);
|
| DCHECK(!media_stream_.isNull());
|
| - DCHECK(!webm_muxer_);
|
| DCHECK(timeslice_.is_zero());
|
|
|
| timeslice_ = TimeDelta::FromMilliseconds(timeslice);
|
| @@ -83,11 +85,18 @@ bool MediaRecorderHandler::start(int timeslice) {
|
| blink::WebVector<blink::WebMediaStreamTrack> video_tracks;
|
| media_stream_.videoTracks(video_tracks);
|
|
|
| +#if !defined(MEDIA_DISABLE_LIBWEBM)
|
| + DCHECK(!webm_muxer_);
|
| +
|
| webm_muxer_.reset(new media::WebmMuxer(
|
| use_vp9_ ? media::kCodecVP9 : media::kCodecVP8, video_tracks.size() > 0,
|
| false /* no audio for now - http://crbug.com/528519 */,
|
| base::Bind(&MediaRecorderHandler::WriteData,
|
| weak_factory_.GetWeakPtr())));
|
| +#else
|
| + LOG(WARNING) << "No muxer available";
|
| + return false;
|
| +#endif
|
|
|
| if (video_tracks.isEmpty()) {
|
| // TODO(mcasas): Add audio_tracks and update the code in this function
|
| @@ -123,7 +132,9 @@ void MediaRecorderHandler::stop() {
|
| recording_ = false;
|
| timeslice_ = TimeDelta::FromMilliseconds(0);
|
| video_recorders_.clear();
|
| +#if !defined(MEDIA_DISABLE_LIBWEBM)
|
| webm_muxer_.reset();
|
| +#endif
|
| }
|
|
|
| void MediaRecorderHandler::pause() {
|
| @@ -148,10 +159,12 @@ void MediaRecorderHandler::OnEncodedVideo(
|
| TimeTicks timestamp,
|
| bool is_key_frame) {
|
| DCHECK(main_render_thread_checker_.CalledOnValidThread());
|
| +#if !defined(MEDIA_DISABLE_LIBWEBM)
|
| if (!webm_muxer_)
|
| return;
|
| webm_muxer_->OnEncodedVideo(video_frame, encoded_data.Pass(), timestamp,
|
| is_key_frame);
|
| +#endif
|
| }
|
|
|
| void MediaRecorderHandler::WriteData(base::StringPiece data) {
|
|
|