Remove ViEExternalCodec usage in VideoSendStream.

Replaces interface usage with direct calls on ViEEncoder removing a
layer of indirection.

BUG=1695
R=stefan@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/49179004

Cr-Commit-Position: refs/heads/master@{#9095}
This commit is contained in:
Peter Boström
2015-04-28 11:58:44 +02:00
parent 4a9cb6b67d
commit 038df3c5d7
2 changed files with 6 additions and 10 deletions

View File

@ -118,7 +118,6 @@ VideoSendStream::VideoSendStream(
config_(config), config_(config),
suspended_ssrcs_(suspended_ssrcs), suspended_ssrcs_(suspended_ssrcs),
channel_group_(channel_group), channel_group_(channel_group),
external_codec_(nullptr),
channel_(-1), channel_(-1),
use_config_bitrate_(true), use_config_bitrate_(true),
stats_proxy_(Clock::GetRealTimeClock(), config) { stats_proxy_(Clock::GetRealTimeClock(), config) {
@ -203,10 +202,10 @@ VideoSendStream::VideoSendStream(
DCHECK(config.encoder_settings.encoder != nullptr); DCHECK(config.encoder_settings.encoder != nullptr);
DCHECK_GE(config.encoder_settings.payload_type, 0); DCHECK_GE(config.encoder_settings.payload_type, 0);
DCHECK_LE(config.encoder_settings.payload_type, 127); DCHECK_LE(config.encoder_settings.payload_type, 127);
external_codec_ = ViEExternalCodec::GetInterface(video_engine); // TODO(pbos): Wire up codec internal-source setting or remove setting.
CHECK_EQ(0, external_codec_->RegisterExternalSendCodec( CHECK_EQ(0, vie_encoder_->RegisterExternalEncoder(
channel_, config.encoder_settings.payload_type, config.encoder_settings.encoder,
config.encoder_settings.encoder, false)); config.encoder_settings.payload_type, false));
codec_ = ViECodec::GetInterface(video_engine); codec_ = ViECodec::GetInterface(video_engine);
CHECK(ReconfigureVideoEncoder(encoder_config)); CHECK(ReconfigureVideoEncoder(encoder_config));
@ -257,8 +256,8 @@ VideoSendStream::~VideoSendStream() {
capture_->DisconnectCaptureDevice(channel_); capture_->DisconnectCaptureDevice(channel_);
capture_->ReleaseCaptureDevice(capture_id_); capture_->ReleaseCaptureDevice(capture_id_);
external_codec_->DeRegisterExternalSendCodec( vie_encoder_->DeRegisterExternalEncoder(
channel_, config_.encoder_settings.payload_type); config_.encoder_settings.payload_type);
video_engine_base_->DeleteChannel(channel_); video_engine_base_->DeleteChannel(channel_);
@ -266,8 +265,6 @@ VideoSendStream::~VideoSendStream() {
video_engine_base_->Release(); video_engine_base_->Release();
capture_->Release(); capture_->Release();
codec_->Release(); codec_->Release();
if (external_codec_)
external_codec_->Release();
network_->Release(); network_->Release();
} }

View File

@ -92,7 +92,6 @@ class VideoSendStream : public webrtc::VideoSendStream,
ViECodec* codec_; ViECodec* codec_;
ViEEncoder* vie_encoder_; ViEEncoder* vie_encoder_;
ViEExternalCapture* external_capture_; ViEExternalCapture* external_capture_;
ViEExternalCodec* external_codec_;
ViENetwork* network_; ViENetwork* network_;
ViEImageProcess* image_process_; ViEImageProcess* image_process_;