Remove more codec-related templating

BUG=webrtc:15214

Change-Id: I719de4ef2b9c98a01b14f8f292098f19baa0d925
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/321341
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Commit-Queue: Philipp Hancke <phancke@microsoft.com>
Reviewed-by: Florent Castelli <orphis@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#40809}
diff --git a/media/base/codec.cc b/media/base/codec.cc
index 9ada18f..5a67696 100644
--- a/media/base/codec.cc
+++ b/media/base/codec.cc
@@ -387,11 +387,10 @@
       FeedbackParam(kRtcpFbParamTransportCc, kParamValueEmpty));
 }
 
-const VideoCodec* FindMatchingCodec(
-    const std::vector<VideoCodec>& supported_codecs,
-    const VideoCodec& codec) {
+const Codec* FindMatchingVideoCodec(const std::vector<Codec>& supported_codecs,
+                                    const Codec& codec) {
   webrtc::SdpVideoFormat sdp_video_format{codec.name, codec.params};
-  for (const VideoCodec& supported_codec : supported_codecs) {
+  for (const Codec& supported_codec : supported_codecs) {
     if (sdp_video_format.IsSameCodec(
             {supported_codec.name, supported_codec.params})) {
       return &supported_codec;
@@ -400,12 +399,12 @@
   return nullptr;
 }
 
-std::vector<const VideoCodec*> FindAllMatchingCodecs(
-    const std::vector<VideoCodec>& supported_codecs,
-    const VideoCodec& codec) {
-  std::vector<const VideoCodec*> result;
+std::vector<const Codec*> FindAllMatchingCodecs(
+    const std::vector<Codec>& supported_codecs,
+    const Codec& codec) {
+  std::vector<const Codec*> result;
   webrtc::SdpVideoFormat sdp(codec.name, codec.params);
-  for (const VideoCodec& supported_codec : supported_codecs) {
+  for (const Codec& supported_codec : supported_codecs) {
     if (sdp.IsSameCodec({supported_codec.name, supported_codec.params})) {
       result.push_back(&supported_codec);
     }
diff --git a/media/base/codec.h b/media/base/codec.h
index b8ef22e..53b674f 100644
--- a/media/base/codec.h
+++ b/media/base/codec.h
@@ -217,14 +217,13 @@
 
 // Returns the first codec in `supported_codecs` that matches `codec`, or
 // nullptr if no codec matches.
-const VideoCodec* FindMatchingCodec(
-    const std::vector<VideoCodec>& supported_codecs,
-    const VideoCodec& codec);
+const Codec* FindMatchingVideoCodec(const std::vector<Codec>& supported_codecs,
+                                    const Codec& codec);
 
 // Returns all codecs in `supported_codecs` that matches `codec`.
-std::vector<const VideoCodec*> FindAllMatchingCodecs(
-    const std::vector<VideoCodec>& supported_codecs,
-    const VideoCodec& codec);
+std::vector<const Codec*> FindAllMatchingCodecs(
+    const std::vector<Codec>& supported_codecs,
+    const Codec& codec);
 
 RTC_EXPORT void AddH264ConstrainedBaselineProfileToSupportedFormats(
     std::vector<webrtc::SdpVideoFormat>* supported_formats);
diff --git a/media/engine/webrtc_video_engine.cc b/media/engine/webrtc_video_engine.cc
index 70bcb07..fad0f4f 100644
--- a/media/engine/webrtc_video_engine.cc
+++ b/media/engine/webrtc_video_engine.cc
@@ -2679,7 +2679,7 @@
                                         /*is_decoder_factory=*/true,
                                         /*include_rtx=*/true, call_->trials());
     for (const VideoCodecSettings& mapped_codec : mapped_codecs) {
-      if (!FindMatchingCodec(local_supported_codecs, mapped_codec.codec)) {
+      if (!FindMatchingVideoCodec(local_supported_codecs, mapped_codec.codec)) {
         RTC_LOG(LS_ERROR) << "GetChangedReceiverParameters called with "
                              "unsupported video codec: "
                           << mapped_codec.codec.ToString();
diff --git a/media/engine/webrtc_video_engine_unittest.cc b/media/engine/webrtc_video_engine_unittest.cc
index 2c44c47..0f416aa 100644
--- a/media/engine/webrtc_video_engine_unittest.cc
+++ b/media/engine/webrtc_video_engine_unittest.cc
@@ -722,16 +722,17 @@
   // Now search for RTX codecs for them. Expect that they all have associated
   // RTX codecs.
   EXPECT_TRUE(HasRtxCodec(
-      codecs, FindMatchingCodec(
+      codecs, FindMatchingVideoCodec(
                   codecs, cricket::CreateVideoCodec(h264_constrained_baseline))
                   ->id));
   EXPECT_TRUE(HasRtxCodec(
-      codecs, FindMatchingCodec(
+      codecs, FindMatchingVideoCodec(
                   codecs, cricket::CreateVideoCodec(h264_constrained_high))
                   ->id));
   EXPECT_TRUE(HasRtxCodec(
       codecs,
-      FindMatchingCodec(codecs, cricket::CreateVideoCodec(h264_high))->id));
+      FindMatchingVideoCodec(codecs, cricket::CreateVideoCodec(h264_high))
+          ->id));
 }
 
 #if defined(RTC_ENABLE_VP9)
diff --git a/pc/media_session.cc b/pc/media_session.cc
index 53c422f..4f74870 100644
--- a/pc/media_session.cc
+++ b/pc/media_session.cc
@@ -440,12 +440,11 @@
 // Adds a StreamParams for each SenderOptions in `sender_options` to
 // content_description.
 // `current_params` - All currently known StreamParams of any media type.
-template <class C>
 static bool AddStreamParams(const std::vector<SenderOptions>& sender_options,
                             const std::string& rtcp_cname,
                             UniqueRandomIdGenerator* ssrc_generator,
                             StreamParamsVec* current_streams,
-                            MediaContentDescriptionImpl<C>* content_description,
+                            MediaContentDescription* content_description,
                             const webrtc::FieldTrialsView& field_trials) {
   // SCTP streams are not negotiated using SDP/ContentDescriptions.
   if (IsSctpProtocol(content_description->protocol())) {
@@ -712,18 +711,18 @@
   }
   return true;
 }
-template <class C>
+
 static bool CreateMediaContentOffer(
     const MediaDescriptionOptions& media_description_options,
     const MediaSessionOptions& session_options,
-    const std::vector<C>& codecs,
+    const std::vector<Codec>& codecs,
     const SecurePolicy& secure_policy,
     const CryptoParamsVec* current_cryptos,
     const std::vector<std::string>& crypto_suites,
     const RtpHeaderExtensions& rtp_extensions,
     UniqueRandomIdGenerator* ssrc_generator,
     StreamParamsVec* current_streams,
-    MediaContentDescriptionImpl<C>* offer,
+    MediaContentDescription* offer,
     const webrtc::FieldTrialsView& field_trials) {
   offer->AddCodecs(codecs);
   if (!AddStreamParams(media_description_options.sender_options,
@@ -1365,17 +1364,16 @@
                       audio_codecs->end());
 }
 
-template <class C>
 static bool SetCodecsInAnswer(
-    const MediaContentDescriptionImpl<C>* offer,
-    const std::vector<C>& local_codecs,
+    const MediaContentDescription* offer,
+    const std::vector<Codec>& local_codecs,
     const MediaDescriptionOptions& media_description_options,
     const MediaSessionOptions& session_options,
     UniqueRandomIdGenerator* ssrc_generator,
     StreamParamsVec* current_streams,
-    MediaContentDescriptionImpl<C>* answer,
+    MediaContentDescription* answer,
     const webrtc::FieldTrialsView& field_trials) {
-  std::vector<C> negotiated_codecs;
+  std::vector<Codec> negotiated_codecs;
   NegotiateCodecs(local_codecs, offer->codecs(), &negotiated_codecs,
                   media_description_options.codec_preferences.empty(),
                   &field_trials);