From 5ed4465aa9b46aecd303234e3bf1f9719db45a71 Mon Sep 17 00:00:00 2001 From: Emircan Uysaler Date: Wed, 17 Jan 2018 13:45:20 -0800 Subject: [PATCH] Allow first frame after fallback in VideoEncoderSoftwareFallbackWrapper Current checks do not allow first frame after fallback to be sent for encode because of the native checks. However, the rest of the frames are sent and encoded correctly. Fallback encoder, although SupportsNativeHandle() is false, can call ToI420() which converts from native handles, and accordingly can return error or success. This higher level check seems unnecessary. Bug: webrtc:8021 Change-Id: I69780cc25eb1e06317ff213e9b80288064e9f1e3 Reviewed-on: https://webrtc-review.googlesource.com/40441 Reviewed-by: Magnus Jedvert Commit-Queue: Emircan Uysaler Cr-Commit-Position: refs/heads/master@{#21685} --- media/engine/videoencodersoftwarefallbackwrapper.cc | 7 ------- 1 file changed, 7 deletions(-) diff --git a/media/engine/videoencodersoftwarefallbackwrapper.cc b/media/engine/videoencodersoftwarefallbackwrapper.cc index 69254f5fb5..6d81705d13 100644 --- a/media/engine/videoencodersoftwarefallbackwrapper.cc +++ b/media/engine/videoencodersoftwarefallbackwrapper.cc @@ -182,13 +182,6 @@ int32_t VideoEncoderSoftwareFallbackWrapper::Encode( // If requested, try a software fallback. bool fallback_requested = (ret == WEBRTC_VIDEO_CODEC_FALLBACK_SOFTWARE); if (fallback_requested && InitFallbackEncoder()) { - if (frame.video_frame_buffer()->type() == VideoFrameBuffer::Type::kNative && - !fallback_encoder_->SupportsNativeHandle()) { - RTC_LOG(LS_WARNING) << "Fallback encoder doesn't support native frames, " - << "dropping one frame."; - return WEBRTC_VIDEO_CODEC_ERROR; - } - // Start using the fallback with this frame. return fallback_encoder_->Encode(frame, codec_specific_info, frame_types); }