Deprecate PeerConnectionFactoryDependencies::audio_processing

Bug: webrtc:369904700
Change-Id: Ic0982abcff2097e4e52e55a4b9c90ec25ae33b90
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/367961
Commit-Queue: Danil Chapovalov <danilchap@webrtc.org>
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#43444}
diff --git a/api/enable_media.cc b/api/enable_media.cc
index 922cf58..cc15ec6 100644
--- a/api/enable_media.cc
+++ b/api/enable_media.cc
@@ -49,7 +49,10 @@
     absl::Nullable<scoped_refptr<AudioProcessing>> audio_processing =
         deps.audio_processing_builder != nullptr
             ? std::move(deps.audio_processing_builder)->Build(env)
+#pragma clang diagnostic push
+#pragma clang diagnostic ignored "-Wdeprecated-declarations"
             : std::move(deps.audio_processing);
+#pragma clang diagnostic pop
 
     auto audio_engine = std::make_unique<WebRtcVoiceEngine>(
         &env.task_queue_factory(), deps.adm.get(),
diff --git a/api/enable_media_with_defaults.cc b/api/enable_media_with_defaults.cc
index c8cc239..2ad8884 100644
--- a/api/enable_media_with_defaults.cc
+++ b/api/enable_media_with_defaults.cc
@@ -34,7 +34,10 @@
   if (deps.audio_decoder_factory == nullptr) {
     deps.audio_decoder_factory = CreateBuiltinAudioDecoderFactory();
   }
+#pragma clang diagnostic push
+#pragma clang diagnostic ignored "-Wdeprecated-declarations"
   if (deps.audio_processing == nullptr &&
+#pragma clang diagnostic pop
       deps.audio_processing_builder == nullptr) {
     deps.audio_processing_builder =
         std::make_unique<BuiltinAudioProcessingBuilder>();
diff --git a/api/peer_connection_interface.cc b/api/peer_connection_interface.cc
index 07c8660..7d95469 100644
--- a/api/peer_connection_interface.cc
+++ b/api/peer_connection_interface.cc
@@ -67,8 +67,13 @@
 PeerConnectionFactoryDependencies::PeerConnectionFactoryDependencies() =
     default;
 
+// TODO: bugs.webrtc.org/369904700 - remove pragma once `audio_processing`
+// is removed from PeerConnectionFactoryDependencies.
+#pragma clang diagnostic push
+#pragma clang diagnostic ignored "-Wdeprecated-declarations"
 PeerConnectionFactoryDependencies::PeerConnectionFactoryDependencies(
     PeerConnectionFactoryDependencies&&) = default;
+#pragma clang diagnostic pop
 
 PeerConnectionFactoryDependencies::~PeerConnectionFactoryDependencies() =
     default;
diff --git a/api/peer_connection_interface.h b/api/peer_connection_interface.h
index 0108a69..a15340b 100644
--- a/api/peer_connection_interface.h
+++ b/api/peer_connection_interface.h
@@ -1472,9 +1472,9 @@
   rtc::scoped_refptr<AudioEncoderFactory> audio_encoder_factory;
   rtc::scoped_refptr<AudioDecoderFactory> audio_decoder_factory;
   rtc::scoped_refptr<AudioMixer> audio_mixer;
-  // TODO: bugs.webrtc.org/369904700 - Deprecate `audio_processing` in favor
+  // TODO: bugs.webrtc.org/369904700 - Delete `audio_processing` in favor
   // of `audio_processing_builder`.
-  rtc::scoped_refptr<AudioProcessing> audio_processing;
+  [[deprecated]] scoped_refptr<AudioProcessing> audio_processing;
   std::unique_ptr<AudioProcessingBuilderInterface> audio_processing_builder;
   std::unique_ptr<AudioFrameProcessor> audio_frame_processor;
   std::unique_ptr<VideoEncoderFactory> video_encoder_factory;
diff --git a/pc/peer_connection_factory_unittest.cc b/pc/peer_connection_factory_unittest.cc
index de7467c..3b294f7 100644
--- a/pc/peer_connection_factory_unittest.cc
+++ b/pc/peer_connection_factory_unittest.cc
@@ -753,7 +753,10 @@
 
   PeerConnectionFactoryDependencies pcf_dependencies;
   pcf_dependencies.adm = FakeAudioCaptureModule::Create();
+#pragma clang diagnostic push
+#pragma clang diagnostic ignored "-Wdeprecated-declarations"
   pcf_dependencies.audio_processing = std::move(audio_processing);
+#pragma clang diagnostic pop
   EnableMediaWithDefaults(pcf_dependencies);
 
   scoped_refptr<PeerConnectionFactoryInterface> pcf =
diff --git a/sdk/objc/api/peerconnection/RTCPeerConnectionFactory.mm b/sdk/objc/api/peerconnection/RTCPeerConnectionFactory.mm
index fa1a024..0ebd7d2 100644
--- a/sdk/objc/api/peerconnection/RTCPeerConnectionFactory.mm
+++ b/sdk/objc/api/peerconnection/RTCPeerConnectionFactory.mm
@@ -205,8 +205,12 @@
 
 - (instancetype)initWithMediaAndDependencies:
     (webrtc::PeerConnectionFactoryDependencies)dependencies {
+#pragma clang diagnostic push
+#pragma clang diagnostic ignored "-Wdeprecated-declarations"
   // audio_processing_builder should be used instead in new code.
   RTC_CHECK(dependencies.audio_processing == nullptr);
+#pragma clang diagnostic pop
+
 #ifndef WEBRTC_EXCLUDE_AUDIO_PROCESSING_MODULE
   if (dependencies.audio_processing_builder == nullptr) {
     dependencies.audio_processing_builder =