Index: webrtc/media/engine/webrtcvideoengine.cc |
diff --git a/webrtc/media/engine/webrtcvideoengine.cc b/webrtc/media/engine/webrtcvideoengine.cc |
index dd961ea8d31ed209ceccb647e782f8882aeee8eb..dd0a7b029a18938373b736681a5f4ac5fa08d112 100644 |
--- a/webrtc/media/engine/webrtcvideoengine.cc |
+++ b/webrtc/media/engine/webrtcvideoengine.cc |
@@ -74,18 +74,9 @@ class EncoderFactoryAdapter { |
class DecoderFactoryAdapter { |
public: |
- struct AllocatedDecoder { |
- AllocatedDecoder() = default; |
- AllocatedDecoder(std::unique_ptr<webrtc::VideoDecoder> decoder, |
- bool is_hardware_accelerated); |
- |
- std::unique_ptr<webrtc::VideoDecoder> decoder; |
- bool is_hardware_accelerated; |
- }; |
- |
virtual ~DecoderFactoryAdapter() {} |
- virtual AllocatedDecoder CreateVideoDecoder( |
+ virtual std::unique_ptr<webrtc::VideoDecoder> CreateVideoDecoder( |
webrtc::VideoCodecType type, |
const VideoDecoderParams& decoder_params) const = 0; |
@@ -137,7 +128,7 @@ class CricketDecoderFactoryAdapter : public DecoderFactoryAdapter { |
const CricketDecoderFactoryAdapter& other) |
: CricketDecoderFactoryAdapter(other.external_decoder_factory_) {} |
- AllocatedDecoder CreateVideoDecoder( |
+ std::unique_ptr<webrtc::VideoDecoder> CreateVideoDecoder( |
webrtc::VideoCodecType type, |
const VideoDecoderParams& decoder_params) const override; |
@@ -2135,12 +2126,6 @@ WebRtcVideoChannel::WebRtcVideoReceiveStream::WebRtcVideoReceiveStream( |
RTC_DCHECK(old_decoders.empty()); |
} |
-DecoderFactoryAdapter::AllocatedDecoder::AllocatedDecoder( |
- std::unique_ptr<webrtc::VideoDecoder> decoder, |
- bool is_hardware_accelerated) |
- : decoder(std::move(decoder)), |
- is_hardware_accelerated(is_hardware_accelerated) {} |
- |
WebRtcVideoChannel::WebRtcVideoReceiveStream::~WebRtcVideoReceiveStream() { |
if (flexfec_stream_) { |
MaybeDissociateFlexfecFromVideo(); |
@@ -2168,7 +2153,7 @@ WebRtcVideoChannel::WebRtcVideoReceiveStream::GetFirstPrimarySsrc() const { |
} |
} |
-DecoderFactoryAdapter::AllocatedDecoder |
+std::unique_ptr<webrtc::VideoDecoder> |
CricketDecoderFactoryAdapter::CreateVideoDecoder( |
webrtc::VideoCodecType type, |
const VideoDecoderParams& decoder_params) const { |
@@ -2180,16 +2165,14 @@ CricketDecoderFactoryAdapter::CreateVideoDecoder( |
std::unique_ptr<webrtc::VideoDecoder> internal_decoder( |
new webrtc::VideoDecoderSoftwareFallbackWrapper( |
type, std::move(external_decoder))); |
- return AllocatedDecoder(std::move(internal_decoder), |
- true /* is_hardware_accelerated */); |
+ return internal_decoder; |
} |
} |
std::unique_ptr<webrtc::VideoDecoder> internal_decoder( |
internal_decoder_factory_->CreateVideoDecoderWithParams(type, |
decoder_params)); |
- return AllocatedDecoder(std::move(internal_decoder), |
- false /* is_hardware_accelerated */); |
+ return internal_decoder; |
} |
void WebRtcVideoChannel::WebRtcVideoReceiveStream::ConfigureCodecs( |
@@ -2211,12 +2194,8 @@ void WebRtcVideoChannel::WebRtcVideoReceiveStream::ConfigureCodecs( |
} |
if (!new_decoder) { |
- DecoderFactoryAdapter::AllocatedDecoder new_allocated_decoder = |
+ new_decoder = |
decoder_factory_->CreateVideoDecoder(type, {stream_params_.id}); |
- new_decoder = std::unique_ptr<webrtc::VideoDecoder>( |
- std::move(new_allocated_decoder.decoder)); |
- // TODO(andersc): are we using the is_hardware_accelerated field for |
- // anything? |
} |
webrtc::VideoReceiveStream::Decoder decoder; |