OLD | NEW |
1 // Copyright 2015 The Chromium Authors. All rights reserved. | 1 // Copyright 2015 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #include "content/renderer/media/media_recorder_handler.h" | 5 #include "content/renderer/media/media_recorder_handler.h" |
6 | 6 |
7 #include <utility> | 7 #include <utility> |
8 | 8 |
9 #include "base/bind.h" | 9 #include "base/bind.h" |
10 #include "base/location.h" | 10 #include "base/location.h" |
(...skipping 143 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
154 DCHECK(!webm_muxer_); | 154 DCHECK(!webm_muxer_); |
155 | 155 |
156 timeslice_ = TimeDelta::FromMilliseconds(timeslice); | 156 timeslice_ = TimeDelta::FromMilliseconds(timeslice); |
157 slice_origin_timestamp_ = TimeTicks::Now(); | 157 slice_origin_timestamp_ = TimeTicks::Now(); |
158 | 158 |
159 blink::WebVector<blink::WebMediaStreamTrack> video_tracks, audio_tracks; | 159 blink::WebVector<blink::WebMediaStreamTrack> video_tracks, audio_tracks; |
160 media_stream_.videoTracks(video_tracks); | 160 media_stream_.videoTracks(video_tracks); |
161 media_stream_.audioTracks(audio_tracks); | 161 media_stream_.audioTracks(audio_tracks); |
162 | 162 |
163 if (video_tracks.isEmpty() && audio_tracks.isEmpty()) { | 163 if (video_tracks.isEmpty() && audio_tracks.isEmpty()) { |
164 LOG(WARNING) << __FUNCTION__ << ": no media tracks."; | 164 LOG(WARNING) << __func__ << ": no media tracks."; |
165 return false; | 165 return false; |
166 } | 166 } |
167 | 167 |
168 const bool use_video_tracks = | 168 const bool use_video_tracks = |
169 !video_tracks.isEmpty() && video_tracks[0].isEnabled() && | 169 !video_tracks.isEmpty() && video_tracks[0].isEnabled() && |
170 video_tracks[0].source().getReadyState() != | 170 video_tracks[0].source().getReadyState() != |
171 blink::WebMediaStreamSource::ReadyStateEnded; | 171 blink::WebMediaStreamSource::ReadyStateEnded; |
172 const bool use_audio_tracks = | 172 const bool use_audio_tracks = |
173 !audio_tracks.isEmpty() && MediaStreamAudioTrack::From(audio_tracks[0]) && | 173 !audio_tracks.isEmpty() && MediaStreamAudioTrack::From(audio_tracks[0]) && |
174 audio_tracks[0].isEnabled() && | 174 audio_tracks[0].isEnabled() && |
175 audio_tracks[0].source().getReadyState() != | 175 audio_tracks[0].source().getReadyState() != |
176 blink::WebMediaStreamSource::ReadyStateEnded; | 176 blink::WebMediaStreamSource::ReadyStateEnded; |
177 | 177 |
178 if (!use_video_tracks && !use_audio_tracks) { | 178 if (!use_video_tracks && !use_audio_tracks) { |
179 LOG(WARNING) << __FUNCTION__ << ": no tracks to be recorded."; | 179 LOG(WARNING) << __func__ << ": no tracks to be recorded."; |
180 return false; | 180 return false; |
181 } | 181 } |
182 | 182 |
183 webm_muxer_.reset(new media::WebmMuxer( | 183 webm_muxer_.reset(new media::WebmMuxer( |
184 CodecIdToMediaVideoCodec(codec_id_), use_video_tracks, use_audio_tracks, | 184 CodecIdToMediaVideoCodec(codec_id_), use_video_tracks, use_audio_tracks, |
185 base::Bind(&MediaRecorderHandler::WriteData, | 185 base::Bind(&MediaRecorderHandler::WriteData, |
186 weak_factory_.GetWeakPtr()))); | 186 weak_factory_.GetWeakPtr()))); |
187 | 187 |
188 if (use_video_tracks) { | 188 if (use_video_tracks) { |
189 // TODO(mcasas): The muxer API supports only one video track. Extend it to | 189 // TODO(mcasas): The muxer API supports only one video track. Extend it to |
(...skipping 119 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
309 recorder->OnData(audio_bus, timestamp); | 309 recorder->OnData(audio_bus, timestamp); |
310 } | 310 } |
311 | 311 |
312 void MediaRecorderHandler::SetAudioFormatForTesting( | 312 void MediaRecorderHandler::SetAudioFormatForTesting( |
313 const media::AudioParameters& params) { | 313 const media::AudioParameters& params) { |
314 for (auto* recorder : audio_recorders_) | 314 for (auto* recorder : audio_recorders_) |
315 recorder->OnSetFormat(params); | 315 recorder->OnSetFormat(params); |
316 } | 316 } |
317 | 317 |
318 } // namespace content | 318 } // namespace content |
OLD | NEW |