Index: content/renderer/media/mock_media_stream_dependency_factory.cc |
diff --git a/content/renderer/media/mock_media_stream_dependency_factory.cc b/content/renderer/media/mock_media_stream_dependency_factory.cc |
deleted file mode 100644 |
index 9816113d14686bc726a36edfa894366a48caf8e5..0000000000000000000000000000000000000000 |
--- a/content/renderer/media/mock_media_stream_dependency_factory.cc |
+++ /dev/null |
@@ -1,541 +0,0 @@ |
-// Copyright (c) 2012 The Chromium Authors. All rights reserved. |
-// Use of this source code is governed by a BSD-style license that can be |
-// found in the LICENSE file. |
- |
-#include "content/renderer/media/mock_media_stream_dependency_factory.h" |
- |
-#include "base/logging.h" |
-#include "base/strings/utf_string_conversions.h" |
-#include "content/renderer/media/mock_peer_connection_impl.h" |
-#include "content/renderer/media/webaudio_capturer_source.h" |
-#include "content/renderer/media/webrtc/webrtc_local_audio_track_adapter.h" |
-#include "content/renderer/media/webrtc/webrtc_video_capturer_adapter.h" |
-#include "content/renderer/media/webrtc_audio_capturer.h" |
-#include "content/renderer/media/webrtc_local_audio_track.h" |
-#include "third_party/WebKit/public/platform/WebMediaStreamTrack.h" |
-#include "third_party/libjingle/source/talk/app/webrtc/mediastreaminterface.h" |
-#include "third_party/libjingle/source/talk/base/scoped_ref_ptr.h" |
-#include "third_party/libjingle/source/talk/media/base/videocapturer.h" |
- |
-using webrtc::AudioSourceInterface; |
-using webrtc::AudioTrackInterface; |
-using webrtc::AudioTrackVector; |
-using webrtc::IceCandidateCollection; |
-using webrtc::IceCandidateInterface; |
-using webrtc::MediaStreamInterface; |
-using webrtc::ObserverInterface; |
-using webrtc::SessionDescriptionInterface; |
-using webrtc::VideoRendererInterface; |
-using webrtc::VideoSourceInterface; |
-using webrtc::VideoTrackInterface; |
-using webrtc::VideoTrackVector; |
- |
-namespace content { |
- |
-template <class V> |
-static typename V::iterator FindTrack(V* vector, |
- const std::string& track_id) { |
- typename V::iterator it = vector->begin(); |
- for (; it != vector->end(); ++it) { |
- if ((*it)->id() == track_id) { |
- break; |
- } |
- } |
- return it; |
-}; |
- |
-MockMediaStream::MockMediaStream(const std::string& label) : label_(label) {} |
- |
-bool MockMediaStream::AddTrack(AudioTrackInterface* track) { |
- audio_track_vector_.push_back(track); |
- NotifyObservers(); |
- return true; |
-} |
- |
-bool MockMediaStream::AddTrack(VideoTrackInterface* track) { |
- video_track_vector_.push_back(track); |
- NotifyObservers(); |
- return true; |
-} |
- |
-bool MockMediaStream::RemoveTrack(AudioTrackInterface* track) { |
- AudioTrackVector::iterator it = FindTrack(&audio_track_vector_, |
- track->id()); |
- if (it == audio_track_vector_.end()) |
- return false; |
- audio_track_vector_.erase(it); |
- NotifyObservers(); |
- return true; |
-} |
- |
-bool MockMediaStream::RemoveTrack(VideoTrackInterface* track) { |
- VideoTrackVector::iterator it = FindTrack(&video_track_vector_, |
- track->id()); |
- if (it == video_track_vector_.end()) |
- return false; |
- video_track_vector_.erase(it); |
- NotifyObservers(); |
- return true; |
-} |
- |
-std::string MockMediaStream::label() const { |
- return label_; |
-} |
- |
-AudioTrackVector MockMediaStream::GetAudioTracks() { |
- return audio_track_vector_; |
-} |
- |
-VideoTrackVector MockMediaStream::GetVideoTracks() { |
- return video_track_vector_; |
-} |
- |
-talk_base::scoped_refptr<AudioTrackInterface> MockMediaStream::FindAudioTrack( |
- const std::string& track_id) { |
- AudioTrackVector::iterator it = FindTrack(&audio_track_vector_, track_id); |
- return it == audio_track_vector_.end() ? NULL : *it; |
-} |
- |
-talk_base::scoped_refptr<VideoTrackInterface> MockMediaStream::FindVideoTrack( |
- const std::string& track_id) { |
- VideoTrackVector::iterator it = FindTrack(&video_track_vector_, track_id); |
- return it == video_track_vector_.end() ? NULL : *it; |
-} |
- |
-void MockMediaStream::RegisterObserver(ObserverInterface* observer) { |
- DCHECK(observers_.find(observer) == observers_.end()); |
- observers_.insert(observer); |
-} |
- |
-void MockMediaStream::UnregisterObserver(ObserverInterface* observer) { |
- ObserverSet::iterator it = observers_.find(observer); |
- DCHECK(it != observers_.end()); |
- observers_.erase(it); |
-} |
- |
-void MockMediaStream::NotifyObservers() { |
- for (ObserverSet::iterator it = observers_.begin(); it != observers_.end(); |
- ++it) { |
- (*it)->OnChanged(); |
- } |
-} |
- |
-MockMediaStream::~MockMediaStream() {} |
- |
-class MockRtcVideoCapturer : public WebRtcVideoCapturerAdapter { |
- public: |
- explicit MockRtcVideoCapturer(bool is_screencast) |
- : WebRtcVideoCapturerAdapter(is_screencast), |
- number_of_capturered_frames_(0), |
- width_(0), |
- height_(0) { |
- } |
- |
- virtual void OnFrameCaptured( |
- const scoped_refptr<media::VideoFrame>& frame) OVERRIDE { |
- ++number_of_capturered_frames_; |
- width_ = frame->visible_rect().width(); |
- height_ = frame->visible_rect().height(); |
- } |
- |
- int GetLastFrameWidth() const { |
- return width_; |
- } |
- |
- int GetLastFrameHeight() const { |
- return height_; |
- } |
- |
- int GetFrameNum() const { |
- return number_of_capturered_frames_; |
- } |
- |
- private: |
- int number_of_capturered_frames_; |
- int width_; |
- int height_; |
-}; |
- |
-MockVideoRenderer::MockVideoRenderer() |
- : width_(0), |
- height_(0), |
- num_(0) {} |
- |
-MockVideoRenderer::~MockVideoRenderer() {} |
- |
-bool MockVideoRenderer::SetSize(int width, int height, int reserved) { |
- width_ = width; |
- height_ = height; |
- return true; |
-} |
- |
-bool MockVideoRenderer::RenderFrame(const cricket::VideoFrame* frame) { |
- ++num_; |
- return true; |
-} |
- |
-MockAudioSource::MockAudioSource( |
- const webrtc::MediaConstraintsInterface* constraints) |
- : observer_(NULL), |
- state_(MediaSourceInterface::kLive), |
- optional_constraints_(constraints->GetOptional()), |
- mandatory_constraints_(constraints->GetMandatory()) { |
-} |
- |
-MockAudioSource::~MockAudioSource() {} |
- |
-void MockAudioSource::RegisterObserver(webrtc::ObserverInterface* observer) { |
- observer_ = observer; |
-} |
- |
-void MockAudioSource::UnregisterObserver(webrtc::ObserverInterface* observer) { |
- DCHECK(observer_ == observer); |
- observer_ = NULL; |
-} |
- |
-webrtc::MediaSourceInterface::SourceState MockAudioSource::state() const { |
- return state_; |
-} |
- |
-MockVideoSource::MockVideoSource() |
- : state_(MediaSourceInterface::kInitializing) { |
-} |
- |
-MockVideoSource::~MockVideoSource() {} |
- |
-void MockVideoSource::SetVideoCapturer(cricket::VideoCapturer* capturer) { |
- capturer_.reset(capturer); |
-} |
- |
-cricket::VideoCapturer* MockVideoSource::GetVideoCapturer() { |
- return capturer_.get(); |
-} |
- |
-void MockVideoSource::AddSink(cricket::VideoRenderer* output) { |
- NOTIMPLEMENTED(); |
-} |
- |
-void MockVideoSource::RemoveSink(cricket::VideoRenderer* output) { |
- NOTIMPLEMENTED(); |
-} |
- |
-cricket::VideoRenderer* MockVideoSource::FrameInput() { |
- return &renderer_; |
-} |
- |
-void MockVideoSource::RegisterObserver(webrtc::ObserverInterface* observer) { |
- observers_.push_back(observer); |
-} |
- |
-void MockVideoSource::UnregisterObserver(webrtc::ObserverInterface* observer) { |
- for (std::vector<ObserverInterface*>::iterator it = observers_.begin(); |
- it != observers_.end(); ++it) { |
- if (*it == observer) { |
- observers_.erase(it); |
- break; |
- } |
- } |
-} |
- |
-void MockVideoSource::FireOnChanged() { |
- std::vector<ObserverInterface*> observers(observers_); |
- for (std::vector<ObserverInterface*>::iterator it = observers.begin(); |
- it != observers.end(); ++it) { |
- (*it)->OnChanged(); |
- } |
-} |
- |
-void MockVideoSource::SetLive() { |
- DCHECK(state_ == MediaSourceInterface::kInitializing || |
- state_ == MediaSourceInterface::kLive); |
- state_ = MediaSourceInterface::kLive; |
- FireOnChanged(); |
-} |
- |
-void MockVideoSource::SetEnded() { |
- DCHECK_NE(MediaSourceInterface::kEnded, state_); |
- state_ = MediaSourceInterface::kEnded; |
- FireOnChanged(); |
-} |
- |
-webrtc::MediaSourceInterface::SourceState MockVideoSource::state() const { |
- return state_; |
-} |
- |
-const cricket::VideoOptions* MockVideoSource::options() const { |
- NOTIMPLEMENTED(); |
- return NULL; |
-} |
- |
-int MockVideoSource::GetLastFrameWidth() const { |
- DCHECK(capturer_); |
- return |
- static_cast<MockRtcVideoCapturer*>(capturer_.get())->GetLastFrameWidth(); |
-} |
- |
-int MockVideoSource::GetLastFrameHeight() const { |
- DCHECK(capturer_); |
- return |
- static_cast<MockRtcVideoCapturer*>(capturer_.get())->GetLastFrameHeight(); |
-} |
- |
-int MockVideoSource::GetFrameNum() const { |
- DCHECK(capturer_); |
- return static_cast<MockRtcVideoCapturer*>(capturer_.get())->GetFrameNum(); |
-} |
- |
-MockWebRtcVideoTrack::MockWebRtcVideoTrack( |
- const std::string& id, |
- webrtc::VideoSourceInterface* source) |
- : enabled_(false), |
- id_(id), |
- state_(MediaStreamTrackInterface::kLive), |
- source_(source), |
- observer_(NULL), |
- renderer_(NULL) { |
-} |
- |
-MockWebRtcVideoTrack::~MockWebRtcVideoTrack() {} |
- |
-void MockWebRtcVideoTrack::AddRenderer(VideoRendererInterface* renderer) { |
- DCHECK(!renderer_); |
- renderer_ = renderer; |
-} |
- |
-void MockWebRtcVideoTrack::RemoveRenderer(VideoRendererInterface* renderer) { |
- DCHECK_EQ(renderer_, renderer); |
- renderer_ = NULL; |
-} |
- |
-std::string MockWebRtcVideoTrack::kind() const { |
- NOTIMPLEMENTED(); |
- return std::string(); |
-} |
- |
-std::string MockWebRtcVideoTrack::id() const { return id_; } |
- |
-bool MockWebRtcVideoTrack::enabled() const { return enabled_; } |
- |
-MockWebRtcVideoTrack::TrackState MockWebRtcVideoTrack::state() const { |
- return state_; |
-} |
- |
-bool MockWebRtcVideoTrack::set_enabled(bool enable) { |
- enabled_ = enable; |
- return true; |
-} |
- |
-bool MockWebRtcVideoTrack::set_state(TrackState new_state) { |
- state_ = new_state; |
- if (observer_) |
- observer_->OnChanged(); |
- return true; |
-} |
- |
-void MockWebRtcVideoTrack::RegisterObserver(ObserverInterface* observer) { |
- observer_ = observer; |
-} |
- |
-void MockWebRtcVideoTrack::UnregisterObserver(ObserverInterface* observer) { |
- DCHECK(observer_ == observer); |
- observer_ = NULL; |
-} |
- |
-VideoSourceInterface* MockWebRtcVideoTrack::GetSource() const { |
- return source_.get(); |
-} |
- |
-class MockSessionDescription : public SessionDescriptionInterface { |
- public: |
- MockSessionDescription(const std::string& type, |
- const std::string& sdp) |
- : type_(type), |
- sdp_(sdp) { |
- } |
- virtual ~MockSessionDescription() {} |
- virtual cricket::SessionDescription* description() OVERRIDE { |
- NOTIMPLEMENTED(); |
- return NULL; |
- } |
- virtual const cricket::SessionDescription* description() const OVERRIDE { |
- NOTIMPLEMENTED(); |
- return NULL; |
- } |
- virtual std::string session_id() const OVERRIDE { |
- NOTIMPLEMENTED(); |
- return std::string(); |
- } |
- virtual std::string session_version() const OVERRIDE { |
- NOTIMPLEMENTED(); |
- return std::string(); |
- } |
- virtual std::string type() const OVERRIDE { |
- return type_; |
- } |
- virtual bool AddCandidate(const IceCandidateInterface* candidate) OVERRIDE { |
- NOTIMPLEMENTED(); |
- return false; |
- } |
- virtual size_t number_of_mediasections() const OVERRIDE { |
- NOTIMPLEMENTED(); |
- return 0; |
- } |
- virtual const IceCandidateCollection* candidates( |
- size_t mediasection_index) const OVERRIDE { |
- NOTIMPLEMENTED(); |
- return NULL; |
- } |
- |
- virtual bool ToString(std::string* out) const OVERRIDE { |
- *out = sdp_; |
- return true; |
- } |
- |
- private: |
- std::string type_; |
- std::string sdp_; |
-}; |
- |
-class MockIceCandidate : public IceCandidateInterface { |
- public: |
- MockIceCandidate(const std::string& sdp_mid, |
- int sdp_mline_index, |
- const std::string& sdp) |
- : sdp_mid_(sdp_mid), |
- sdp_mline_index_(sdp_mline_index), |
- sdp_(sdp) { |
- } |
- virtual ~MockIceCandidate() {} |
- virtual std::string sdp_mid() const OVERRIDE { |
- return sdp_mid_; |
- } |
- virtual int sdp_mline_index() const OVERRIDE { |
- return sdp_mline_index_; |
- } |
- virtual const cricket::Candidate& candidate() const OVERRIDE { |
- // This function should never be called. It will intentionally crash. The |
- // base class forces us to return a reference. |
- NOTREACHED(); |
- cricket::Candidate* candidate = NULL; |
- return *candidate; |
- } |
- virtual bool ToString(std::string* out) const OVERRIDE { |
- *out = sdp_; |
- return true; |
- } |
- |
- private: |
- std::string sdp_mid_; |
- int sdp_mline_index_; |
- std::string sdp_; |
-}; |
- |
-MockMediaStreamDependencyFactory::MockMediaStreamDependencyFactory() |
- : MediaStreamDependencyFactory(NULL), |
- fail_to_create_next_audio_capturer_(false) { |
-} |
- |
-MockMediaStreamDependencyFactory::~MockMediaStreamDependencyFactory() {} |
- |
-scoped_refptr<webrtc::PeerConnectionInterface> |
-MockMediaStreamDependencyFactory::CreatePeerConnection( |
- const webrtc::PeerConnectionInterface::IceServers& ice_servers, |
- const webrtc::MediaConstraintsInterface* constraints, |
- blink::WebFrame* frame, |
- webrtc::PeerConnectionObserver* observer) { |
- return new talk_base::RefCountedObject<MockPeerConnectionImpl>(this); |
-} |
- |
-scoped_refptr<webrtc::AudioSourceInterface> |
-MockMediaStreamDependencyFactory::CreateLocalAudioSource( |
- const webrtc::MediaConstraintsInterface* constraints) { |
- last_audio_source_ = |
- new talk_base::RefCountedObject<MockAudioSource>(constraints); |
- return last_audio_source_; |
-} |
- |
-WebRtcVideoCapturerAdapter* |
-MockMediaStreamDependencyFactory::CreateVideoCapturer( |
- bool is_screen_capture) { |
- return new MockRtcVideoCapturer(is_screen_capture); |
-} |
- |
-scoped_refptr<webrtc::VideoSourceInterface> |
-MockMediaStreamDependencyFactory::CreateVideoSource( |
- cricket::VideoCapturer* capturer, |
- const blink::WebMediaConstraints& constraints) { |
- last_video_source_ = new talk_base::RefCountedObject<MockVideoSource>(); |
- last_video_source_->SetVideoCapturer(capturer); |
- return last_video_source_; |
-} |
- |
-scoped_refptr<WebAudioCapturerSource> |
-MockMediaStreamDependencyFactory::CreateWebAudioSource( |
- blink::WebMediaStreamSource* source) { |
- return NULL; |
-} |
- |
-scoped_refptr<webrtc::MediaStreamInterface> |
-MockMediaStreamDependencyFactory::CreateLocalMediaStream( |
- const std::string& label) { |
- return new talk_base::RefCountedObject<MockMediaStream>(label); |
-} |
- |
-scoped_refptr<webrtc::VideoTrackInterface> |
-MockMediaStreamDependencyFactory::CreateLocalVideoTrack( |
- const std::string& id, |
- webrtc::VideoSourceInterface* source) { |
- scoped_refptr<webrtc::VideoTrackInterface> track( |
- new talk_base::RefCountedObject<MockWebRtcVideoTrack>( |
- id, source)); |
- return track; |
-} |
- |
-scoped_refptr<webrtc::VideoTrackInterface> |
-MockMediaStreamDependencyFactory::CreateLocalVideoTrack( |
- const std::string& id, |
- cricket::VideoCapturer* capturer) { |
- scoped_refptr<MockVideoSource> source = |
- new talk_base::RefCountedObject<MockVideoSource>(); |
- source->SetVideoCapturer(capturer); |
- |
- return |
- new talk_base::RefCountedObject<MockWebRtcVideoTrack>(id, source.get()); |
-} |
- |
-SessionDescriptionInterface* |
-MockMediaStreamDependencyFactory::CreateSessionDescription( |
- const std::string& type, |
- const std::string& sdp, |
- webrtc::SdpParseError* error) { |
- return new MockSessionDescription(type, sdp); |
-} |
- |
-webrtc::IceCandidateInterface* |
-MockMediaStreamDependencyFactory::CreateIceCandidate( |
- const std::string& sdp_mid, |
- int sdp_mline_index, |
- const std::string& sdp) { |
- return new MockIceCandidate(sdp_mid, sdp_mline_index, sdp); |
-} |
- |
-scoped_refptr<WebRtcAudioCapturer> |
-MockMediaStreamDependencyFactory::CreateAudioCapturer( |
- int render_view_id, const StreamDeviceInfo& device_info, |
- const blink::WebMediaConstraints& constraints, |
- MediaStreamAudioSource* audio_source) { |
- if (fail_to_create_next_audio_capturer_) { |
- fail_to_create_next_audio_capturer_ = false; |
- return NULL; |
- } |
- DCHECK(audio_source); |
- return WebRtcAudioCapturer::CreateCapturer(-1, device_info, |
- constraints, NULL, audio_source); |
-} |
- |
-void MockMediaStreamDependencyFactory::StartLocalAudioTrack( |
- WebRtcLocalAudioTrack* audio_track) { |
- audio_track->Start(); |
-} |
- |
-} // namespace content |