Revert of Stop caching supported codecs in WebRtcVideoEngine2 (patchset #1 id:1 of https://codereview.webrtc.org/2492473002/ )
Reason for revert: This CL probably broke Chromium FYI. Original issue's description: > Stop caching supported codecs in WebRtcVideoEngine2 > > We currently cache the result of GetSupportedCodecs in a member variable > |video_codecs_| in WebRtcVideoEngine2. This means we need to keep > |video_codecs_| and the result of GetSupportedCodecs in sync, which is > error prone. It's simpler to just call GetSupportedCodecs when we need > it, and we actually end up making fewer calls, so it's faster as well. > This CL also returns all std::vectors by-value instead of by-ref. Move > semantic together with in-place filtering of codecs actually end up with > fewer copies, and it's also simpler to not return references. > > BUG=webrtc:6337 > > Committed: https://crrev.com/9f71ec5a3e3175751f4475b126cfda89767363f2 > Cr-Commit-Position: refs/heads/master@{#15007} TBR=tommi@webrtc.org # Skipping CQ checks because original CL landed less than 1 days ago. NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=webrtc:6337 Review-Url: https://codereview.webrtc.org/2489173004 Cr-Commit-Position: refs/heads/master@{#15014}
This commit is contained in:
@ -29,9 +29,6 @@
|
||||
|
||||
namespace cricket {
|
||||
|
||||
static bool IsRtxCodec(const VideoCodec& codec) {
|
||||
return _stricmp(kRtxCodecName, codec.name.c_str()) == 0;
|
||||
}
|
||||
|
||||
using rtc::Bind;
|
||||
|
||||
@ -140,13 +137,18 @@ void ChannelManager::GetSupportedAudioRtpHeaderExtensions(
|
||||
*ext = media_engine_->GetAudioCapabilities().header_extensions;
|
||||
}
|
||||
|
||||
std::vector<VideoCodec> ChannelManager::GetSupportedVideoCodecs() const {
|
||||
std::vector<VideoCodec> codecs = media_engine_->video_codecs();
|
||||
if (!enable_rtx_) {
|
||||
codecs.erase(std::remove_if(codecs.begin(), codecs.end(), &IsRtxCodec),
|
||||
codecs.end());
|
||||
void ChannelManager::GetSupportedVideoCodecs(
|
||||
std::vector<VideoCodec>* codecs) const {
|
||||
codecs->clear();
|
||||
|
||||
std::vector<VideoCodec>::const_iterator it;
|
||||
for (it = media_engine_->video_codecs().begin();
|
||||
it != media_engine_->video_codecs().end(); ++it) {
|
||||
if (!enable_rtx_ && _stricmp(kRtxCodecName, it->name.c_str()) == 0) {
|
||||
continue;
|
||||
}
|
||||
codecs->push_back(*it);
|
||||
}
|
||||
return codecs;
|
||||
}
|
||||
|
||||
void ChannelManager::GetSupportedVideoRtpHeaderExtensions(
|
||||
|
||||
Reference in New Issue
Block a user