diff --git a/pc/session_description.h b/pc/session_description.h index f68e044db2..31992be083 100644 --- a/pc/session_description.h +++ b/pc/session_description.h @@ -269,46 +269,41 @@ class MediaContentDescriptionImpl : public MediaContentDescription { protocol_ = std::string(protocol); } - typedef C CodecType; - // Codecs should be in preference order (most preferred codec first). - const std::vector& codecs() const { return codecs_; } - void set_codecs(const std::vector& codecs) { codecs_ = codecs; } + const std::vector& codecs() const { return codecs_; } + void set_codecs(const std::vector& codecs) { codecs_ = codecs; } bool has_codecs() const override { return !codecs_.empty(); } bool HasCodec(int id) { bool found = false; - for (typename std::vector::iterator iter = codecs_.begin(); - iter != codecs_.end(); ++iter) { - if (iter->id == id) { + for (auto it = codecs_.begin(); it != codecs_.end(); ++it) { + if (it->id == id) { found = true; break; } } return found; } - void AddCodec(const C& codec) { codecs_.push_back(codec); } - void AddOrReplaceCodec(const C& codec) { - for (typename std::vector::iterator iter = codecs_.begin(); - iter != codecs_.end(); ++iter) { - if (iter->id == codec.id) { - *iter = codec; + void AddCodec(const Codec& codec) { codecs_.push_back(codec); } + void AddOrReplaceCodec(const Codec& codec) { + for (auto it = codecs_.begin(); it != codecs_.end(); ++it) { + if (it->id == codec.id) { + *it = codec; return; } } AddCodec(codec); } - void AddCodecs(const std::vector& codecs) { - typename std::vector::const_iterator codec; - for (codec = codecs.begin(); codec != codecs.end(); ++codec) { - AddCodec(*codec); + void AddCodecs(const std::vector& codecs) { + for (const auto& codec : codecs) { + AddCodec(codec); } } private: - std::vector codecs_; + std::vector codecs_; }; -class AudioContentDescription : public MediaContentDescriptionImpl { +class AudioContentDescription : public MediaContentDescriptionImpl { public: AudioContentDescription() {} @@ -322,7 +317,7 @@ class AudioContentDescription : public MediaContentDescriptionImpl { } }; -class VideoContentDescription : public MediaContentDescriptionImpl { +class VideoContentDescription : public MediaContentDescriptionImpl { public: virtual MediaType type() const { return MEDIA_TYPE_VIDEO; } virtual VideoContentDescription* as_video() { return this; } diff --git a/pc/webrtc_sdp.cc b/pc/webrtc_sdp.cc index 850b82835b..468947f8fc 100644 --- a/pc/webrtc_sdp.cc +++ b/pc/webrtc_sdp.cc @@ -2654,12 +2654,11 @@ static std::unique_ptr ParseContentDescription( for (int pt : payload_types) { payload_type_preferences[pt] = preference--; } - std::vector codecs = media_desc->codecs(); - absl::c_sort( - codecs, [&payload_type_preferences](const typename C::CodecType& a, - const typename C::CodecType& b) { - return payload_type_preferences[a.id] > payload_type_preferences[b.id]; - }); + std::vector codecs = media_desc->codecs(); + absl::c_sort(codecs, [&payload_type_preferences](const cricket::Codec& a, + const cricket::Codec& b) { + return payload_type_preferences[a.id] > payload_type_preferences[b.id]; + }); media_desc->set_codecs(codecs); return media_desc; }