| Index: webrtc/media/engine/videodecodersoftwarefallbackwrapper.cc
|
| diff --git a/webrtc/media/engine/videodecodersoftwarefallbackwrapper.cc b/webrtc/media/engine/videodecodersoftwarefallbackwrapper.cc
|
| index 8dd0f841ea204c875a99322c05115ed0521397a1..cd6eef9b6482d82a5a5e1ff92b42980911679779 100644
|
| --- a/webrtc/media/engine/videodecodersoftwarefallbackwrapper.cc
|
| +++ b/webrtc/media/engine/videodecodersoftwarefallbackwrapper.cc
|
| @@ -13,34 +13,15 @@
|
| #include <string>
|
|
|
| #include "webrtc/base/logging.h"
|
| +#include "webrtc/media/engine/internaldecoderfactory.h"
|
| #include "webrtc/modules/video_coding/include/video_error_codes.h"
|
|
|
| namespace webrtc {
|
|
|
| -namespace {
|
| -
|
| -VideoDecoder::DecoderType CodecTypeToDecoderType(VideoCodecType codec_type) {
|
| - switch (codec_type) {
|
| - case kVideoCodecH264:
|
| - return VideoDecoder::kH264;
|
| - case kVideoCodecVP8:
|
| - return VideoDecoder::kVp8;
|
| - case kVideoCodecVP9:
|
| - return VideoDecoder::kVp9;
|
| - default:
|
| - return VideoDecoder::kUnsupportedCodec;
|
| - }
|
| -}
|
| -
|
| -} // anonymous namespace
|
| -
|
| VideoDecoderSoftwareFallbackWrapper::VideoDecoderSoftwareFallbackWrapper(
|
| VideoCodecType codec_type,
|
| VideoDecoder* decoder)
|
| - : decoder_type_(CodecTypeToDecoderType(codec_type)),
|
| - decoder_(decoder),
|
| - callback_(nullptr) {
|
| -}
|
| + : codec_type_(codec_type), decoder_(decoder), callback_(nullptr) {}
|
|
|
| int32_t VideoDecoderSoftwareFallbackWrapper::InitDecode(
|
| const VideoCodec* codec_settings,
|
| @@ -51,10 +32,12 @@ int32_t VideoDecoderSoftwareFallbackWrapper::InitDecode(
|
| }
|
|
|
| bool VideoDecoderSoftwareFallbackWrapper::InitFallbackDecoder() {
|
| - RTC_CHECK(decoder_type_ != kUnsupportedCodec)
|
| + RTC_CHECK(codec_type_ != kVideoCodecUnknown)
|
| << "Decoder requesting fallback to codec not supported in software.";
|
| LOG(LS_WARNING) << "Decoder falling back to software decoding.";
|
| - fallback_decoder_.reset(VideoDecoder::Create(decoder_type_));
|
| + cricket::InternalDecoderFactory internal_decoder_factory;
|
| + fallback_decoder_.reset(
|
| + internal_decoder_factory.CreateVideoDecoder(codec_type_));
|
| if (fallback_decoder_->InitDecode(&codec_settings_, number_of_cores_) !=
|
| WEBRTC_VIDEO_CODEC_OK) {
|
| LOG(LS_ERROR) << "Failed to initialize software-decoder fallback.";
|
|
|