Index: webrtc/media/engine/webrtcvideoengine2.cc |
diff --git a/webrtc/media/engine/webrtcvideoengine2.cc b/webrtc/media/engine/webrtcvideoengine2.cc |
index 80395de61ea0dc1ff80f5a015b73aec5191025c0..0252545ae373a0d1f92103df70ae0ce9c162be36 100644 |
--- a/webrtc/media/engine/webrtcvideoengine2.cc |
+++ b/webrtc/media/engine/webrtcvideoengine2.cc |
@@ -25,6 +25,7 @@ |
#include "webrtc/common_video/h264/profile_level_id.h" |
#include "webrtc/media/engine/constants.h" |
#include "webrtc/media/engine/internalencoderfactory.h" |
+#include "webrtc/media/engine/internaldecoderfactory.h" |
#include "webrtc/media/engine/simulcast.h" |
#include "webrtc/media/engine/videoencodersoftwarefallbackwrapper.h" |
#include "webrtc/media/engine/videodecodersoftwarefallbackwrapper.h" |
@@ -2194,28 +2195,14 @@ WebRtcVideoChannel2::WebRtcVideoReceiveStream::CreateOrReuseVideoDecoder( |
external_decoder_factory_->CreateVideoDecoderWithParams( |
type, {stream_params_.id}); |
if (decoder != NULL) { |
- return AllocatedDecoder(decoder, type, true); |
+ return AllocatedDecoder(decoder, type, true /* is_external */); |
} |
} |
- if (type == webrtc::kVideoCodecVP8) { |
- return AllocatedDecoder( |
- webrtc::VideoDecoder::Create(webrtc::VideoDecoder::kVp8), type, false); |
- } |
- |
- if (type == webrtc::kVideoCodecVP9) { |
- return AllocatedDecoder( |
- webrtc::VideoDecoder::Create(webrtc::VideoDecoder::kVp9), type, false); |
- } |
- |
- if (type == webrtc::kVideoCodecH264) { |
- return AllocatedDecoder( |
- webrtc::VideoDecoder::Create(webrtc::VideoDecoder::kH264), type, false); |
- } |
- |
- return AllocatedDecoder( |
- webrtc::VideoDecoder::Create(webrtc::VideoDecoder::kUnsupportedCodec), |
- webrtc::kVideoCodecUnknown, false); |
+ InternalDecoderFactory internal_decoder_factory; |
+ return AllocatedDecoder(internal_decoder_factory.CreateVideoDecoderWithParams( |
+ type, {stream_params_.id}), |
+ type, false /* is_external */); |
} |
void ConfigureDecoderSpecifics(webrtc::VideoReceiveStream::Decoder* decoder, |