* Update the session layer to p4 37930
* Update the peerconnection_client in sync with updates on the libjingle side. Review URL: http://webrtc-codereview.appspot.com/29008 git-svn-id: http://webrtc.googlecode.com/svn/trunk@34 4adac7df-926f-26a2-2b94-8c16560cd09d
This commit is contained in:
@@ -12,6 +12,7 @@
|
||||
|
||||
#include "peerconnection/samples/client/defaults.h"
|
||||
#include "talk/base/logging.h"
|
||||
#include "talk/session/phone/videorendererfactory.h"
|
||||
|
||||
Conductor::Conductor(PeerConnectionClient* client, MainWnd* main_wnd)
|
||||
: handshake_(NONE),
|
||||
@@ -70,6 +71,8 @@ bool Conductor::InitializePeerConnection() {
|
||||
|
||||
void Conductor::DeletePeerConnection() {
|
||||
peer_connection_.reset();
|
||||
local_renderer_.reset();
|
||||
remote_renderer_.reset();
|
||||
handshake_ = NONE;
|
||||
}
|
||||
|
||||
@@ -79,8 +82,14 @@ void Conductor::StartCaptureDevice() {
|
||||
main_wnd_->SwitchToStreamingUI();
|
||||
|
||||
if (peer_connection_->SetVideoCapture("")) {
|
||||
peer_connection_->SetVideoRenderer(-1, main_wnd_->handle(), 0,
|
||||
0.7f, 0.7f, 0.95f, 0.95f);
|
||||
if (!local_renderer_.get()) {
|
||||
// The window will be resized according to the stream properties
|
||||
// when streaming starts.
|
||||
local_renderer_.reset(
|
||||
cricket::VideoRendererFactory::CreateGuiVideoRenderer(100, 100));
|
||||
}
|
||||
if (local_renderer_.get())
|
||||
peer_connection_->SetLocalVideoRenderer(local_renderer_.get());
|
||||
} else {
|
||||
ASSERT(false);
|
||||
}
|
||||
@@ -130,8 +139,13 @@ void Conductor::OnAddStream(const std::string& stream_id, int channel_id,
|
||||
video_channel_ = channel_id;
|
||||
waiting_for_video_ = false;
|
||||
LOG(INFO) << "Setting video renderer for channel: " << channel_id;
|
||||
bool ok = peer_connection_->SetVideoRenderer(channel_id,
|
||||
main_wnd_->handle(), 1, 0.0f, 0.0f, 1.0f, 1.0f);
|
||||
if (!remote_renderer_.get()) {
|
||||
// The window size will be automatically corrected.
|
||||
remote_renderer_.reset(
|
||||
cricket::VideoRendererFactory::CreateGuiVideoRenderer(100, 100));
|
||||
}
|
||||
bool ok = peer_connection_->SetVideoRenderer(stream_id,
|
||||
remote_renderer_.get());
|
||||
ASSERT(ok);
|
||||
} else {
|
||||
ASSERT(audio_channel_ == -1);
|
||||
|
@@ -19,6 +19,9 @@
|
||||
#include "talk/app/peerconnection.h"
|
||||
#include "talk/base/scoped_ptr.h"
|
||||
|
||||
namespace cricket {
|
||||
class VideoRenderer;
|
||||
} // namespace cricket
|
||||
|
||||
class Conductor
|
||||
: public webrtc::PeerConnectionObserver,
|
||||
@@ -112,6 +115,8 @@ class Conductor
|
||||
MainWnd* main_wnd_;
|
||||
int video_channel_;
|
||||
int audio_channel_;
|
||||
talk_base::scoped_ptr<cricket::VideoRenderer> local_renderer_;
|
||||
talk_base::scoped_ptr<cricket::VideoRenderer> remote_renderer_;
|
||||
};
|
||||
|
||||
#endif // PEERCONNECTION_SAMPLES_CLIENT_CONDUCTOR_H_
|
||||
|
Reference in New Issue
Block a user