diff --git a/api/audio_codecs/audio_decoder_factory.h b/api/audio_codecs/audio_decoder_factory.h index a1ef2ca0f8..3b09486aac 100644 --- a/api/audio_codecs/audio_decoder_factory.h +++ b/api/audio_codecs/audio_decoder_factory.h @@ -21,7 +21,6 @@ #include "api/audio_codecs/audio_format.h" #include "api/environment/environment.h" #include "api/ref_count.h" -#include "rtc_base/checks.h" namespace webrtc { @@ -46,25 +45,10 @@ class AudioDecoderFactory : public RefCountInterface { // Note: Implementations need to be robust against combinations other than // one encoder, one decoder getting the same ID; such decoders must still // work. - [[deprecated("bugs.webrtc.org/356878416 - Use `Create` instead")]] // - virtual std::unique_ptr - MakeAudioDecoder(const SdpAudioFormat& format, - std::optional codec_pair_id) { - RTC_DCHECK_NOTREACHED(); - return nullptr; - } - - // TODO: bugs.webrtc.org/356878416 - Make pure virtual when implemented by - // derived classes instead of the MakeAudioDecoder. virtual absl::Nullable> Create( const Environment& env, const SdpAudioFormat& format, - std::optional codec_pair_id) { -#pragma clang diagnostic push -#pragma clang diagnostic ignored "-Wdeprecated-declarations" - return MakeAudioDecoder(format, codec_pair_id); -#pragma clang diagnostic pop - } + std::optional codec_pair_id) = 0; }; } // namespace webrtc diff --git a/rtc_tools/BUILD.gn b/rtc_tools/BUILD.gn index bfd808517f..2c99a6275d 100644 --- a/rtc_tools/BUILD.gn +++ b/rtc_tools/BUILD.gn @@ -360,6 +360,7 @@ if (!build_with_chromium) { "../api:scoped_refptr", "../api/audio_codecs:audio_codecs_api", # TODO(kwiberg): Remove this # dependency. + "../api/environment", "../api/environment:environment_factory", "../api/neteq:neteq_api", "../api/rtc_event_log:rtc_event_log", diff --git a/rtc_tools/rtc_event_log_visualizer/analyze_audio.cc b/rtc_tools/rtc_event_log_visualizer/analyze_audio.cc index 4fbe9a639a..0e60381d0a 100644 --- a/rtc_tools/rtc_event_log_visualizer/analyze_audio.cc +++ b/rtc_tools/rtc_event_log_visualizer/analyze_audio.cc @@ -24,6 +24,7 @@ #include "api/audio_codecs/audio_decoder.h" #include "api/audio_codecs/audio_decoder_factory.h" #include "api/audio_codecs/audio_format.h" +#include "api/environment/environment.h" #include "api/function_view.h" #include "api/make_ref_counted.h" #include "api/neteq/neteq.h" @@ -219,7 +220,8 @@ class ReplacementAudioDecoderFactory : public AudioDecoderFactory { return true; } - std::unique_ptr MakeAudioDecoder( + std::unique_ptr Create( + const Environment& env, const SdpAudioFormat& format, std::optional codec_pair_id) override { auto replacement_file = std::make_unique( diff --git a/test/BUILD.gn b/test/BUILD.gn index 422172743a..33e920f8ba 100644 --- a/test/BUILD.gn +++ b/test/BUILD.gn @@ -223,6 +223,7 @@ rtc_library("audio_test_common") { deps = [ "../api/audio_codecs:audio_codecs_api", "../api/environment", + "../rtc_base:buffer", "../rtc_base:checks", "//third_party/abseil-cpp/absl/memory", ] diff --git a/test/audio_decoder_proxy_factory.h b/test/audio_decoder_proxy_factory.h index 192b4175ed..1fe8bd41d9 100644 --- a/test/audio_decoder_proxy_factory.h +++ b/test/audio_decoder_proxy_factory.h @@ -11,12 +11,20 @@ #ifndef TEST_AUDIO_DECODER_PROXY_FACTORY_H_ #define TEST_AUDIO_DECODER_PROXY_FACTORY_H_ +#include +#include #include +#include #include #include +#include "api/audio_codecs/audio_codec_pair_id.h" #include "api/audio_codecs/audio_decoder.h" #include "api/audio_codecs/audio_decoder_factory.h" +#include "api/audio_codecs/audio_format.h" +#include "api/environment/environment.h" +#include "rtc_base/buffer.h" +#include "rtc_base/checks.h" namespace webrtc { namespace test { @@ -39,7 +47,8 @@ class AudioDecoderProxyFactory : public AudioDecoderFactory { return true; } - std::unique_ptr MakeAudioDecoder( + std::unique_ptr Create( + const Environment& /* env */, const SdpAudioFormat& /* format */, std::optional /* codec_pair_id */) override { return std::make_unique(decoder_);