Reland "Update internal encoder factory to new interface"
This is a reland of 2c8c8e26fc58a0f2789b7a5cd2646a8319c14d3e Original change's description: > Update internal encoder factory to new interface > > TBR=stefan@webrtc.org > > Bug: webrtc:7925 > Change-Id: I0bb97acdf0d58a9ce531ecdd672bb17ef96360df > Reviewed-on: https://webrtc-review.googlesource.com/21162 > Commit-Queue: Magnus Jedvert <magjed@webrtc.org> > Reviewed-by: Anders Carlsson <andersc@webrtc.org> > Reviewed-by: Rasmus Brandt <brandtr@webrtc.org> > Cr-Commit-Position: refs/heads/master@{#20717} TBR=andersc@webrtc.org,brandt@webrtc.org,stefan@webrtc.org Bug: webrtc:7925 Change-Id: I0d269b3edb029e372a36c3b461a577bca2b6d0cb Reviewed-on: https://webrtc-review.googlesource.com/24000 Reviewed-by: Magnus Jedvert <magjed@webrtc.org> Commit-Queue: Magnus Jedvert <magjed@webrtc.org> Cr-Commit-Position: refs/heads/master@{#20747}
This commit is contained in:
committed by
Commit Bot
parent
f90b457387
commit
df4883dbf0
@ -516,11 +516,21 @@ bool MediaCodecVideoEncoder::EncodeTask::Run() {
|
||||
return false;
|
||||
}
|
||||
|
||||
bool IsFormatSupported(
|
||||
const std::vector<webrtc::SdpVideoFormat>& supported_formats,
|
||||
const std::string& name) {
|
||||
for (const webrtc::SdpVideoFormat& supported_format : supported_formats) {
|
||||
if (cricket::CodecNamesEq(name, supported_format.name))
|
||||
return true;
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
bool MediaCodecVideoEncoder::ProcessHWError(
|
||||
bool reset_if_fallback_unavailable) {
|
||||
ALOGE << "ProcessHWError";
|
||||
if (FindMatchingCodec(cricket::InternalEncoderFactory().supported_codecs(),
|
||||
codec_)) {
|
||||
if (IsFormatSupported(InternalEncoderFactory().GetSupportedFormats(),
|
||||
codec_.name)) {
|
||||
ALOGE << "Fallback to SW encoder.";
|
||||
sw_fallback_required_ = true;
|
||||
return false;
|
||||
|
||||
Reference in New Issue
Block a user