Audio codec implementations: Take optional codec ID argument
None of the built-in codecs do anything with the ID, but callers will
soon require them to accept it.
Bug: webrtc:8941
Change-Id: I0eb77db82d72c7d34cff639fecb67c1e6ec421bf
Reviewed-on: https://webrtc-review.googlesource.com/58089
Commit-Queue: Karl Wiberg <kwiberg@webrtc.org>
Reviewed-by: Oskar Sundbom <ossu@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#22259}
diff --git a/api/audio_codecs/opus/audio_decoder_opus.cc b/api/audio_codecs/opus/audio_decoder_opus.cc
index 472a079..73a0a3f 100644
--- a/api/audio_codecs/opus/audio_decoder_opus.cc
+++ b/api/audio_codecs/opus/audio_decoder_opus.cc
@@ -55,7 +55,8 @@
}
std::unique_ptr<AudioDecoder> AudioDecoderOpus::MakeAudioDecoder(
- Config config) {
+ Config config,
+ rtc::Optional<AudioCodecPairId> /*codec_pair_id*/) {
return rtc::MakeUnique<AudioDecoderOpusImpl>(config.num_channels);
}
diff --git a/api/audio_codecs/opus/audio_decoder_opus.h b/api/audio_codecs/opus/audio_decoder_opus.h
index 0cd917f..f76d244 100644
--- a/api/audio_codecs/opus/audio_decoder_opus.h
+++ b/api/audio_codecs/opus/audio_decoder_opus.h
@@ -14,6 +14,7 @@
#include <memory>
#include <vector>
+#include "api/audio_codecs/audio_codec_pair_id.h"
#include "api/audio_codecs/audio_decoder.h"
#include "api/audio_codecs/audio_format.h"
#include "api/optional.h"
@@ -30,7 +31,9 @@
};
static rtc::Optional<Config> SdpToConfig(const SdpAudioFormat& audio_format);
static void AppendSupportedDecoders(std::vector<AudioCodecSpec>* specs);
- static std::unique_ptr<AudioDecoder> MakeAudioDecoder(Config config);
+ static std::unique_ptr<AudioDecoder> MakeAudioDecoder(
+ Config config,
+ rtc::Optional<AudioCodecPairId> codec_pair_id = rtc::nullopt);
};
} // namespace webrtc
diff --git a/api/audio_codecs/opus/audio_encoder_opus.cc b/api/audio_codecs/opus/audio_encoder_opus.cc
index 603da6f..8ba66fb 100644
--- a/api/audio_codecs/opus/audio_encoder_opus.cc
+++ b/api/audio_codecs/opus/audio_encoder_opus.cc
@@ -31,7 +31,8 @@
std::unique_ptr<AudioEncoder> AudioEncoderOpus::MakeAudioEncoder(
const AudioEncoderOpusConfig& config,
- int payload_type) {
+ int payload_type,
+ rtc::Optional<AudioCodecPairId> /*codec_pair_id*/) {
return AudioEncoderOpusImpl::MakeAudioEncoder(config, payload_type);
}
diff --git a/api/audio_codecs/opus/audio_encoder_opus.h b/api/audio_codecs/opus/audio_encoder_opus.h
index d348a17..6325269 100644
--- a/api/audio_codecs/opus/audio_encoder_opus.h
+++ b/api/audio_codecs/opus/audio_encoder_opus.h
@@ -14,6 +14,7 @@
#include <memory>
#include <vector>
+#include "api/audio_codecs/audio_codec_pair_id.h"
#include "api/audio_codecs/audio_encoder.h"
#include "api/audio_codecs/audio_format.h"
#include "api/audio_codecs/opus/audio_encoder_opus_config.h"
@@ -32,8 +33,9 @@
static void AppendSupportedEncoders(std::vector<AudioCodecSpec>* specs);
static AudioCodecInfo QueryAudioEncoder(const AudioEncoderOpusConfig& config);
static std::unique_ptr<AudioEncoder> MakeAudioEncoder(
- const AudioEncoderOpusConfig&,
- int payload_type);
+ const AudioEncoderOpusConfig& config,
+ int payload_type,
+ rtc::Optional<AudioCodecPairId> codec_pair_id = rtc::nullopt);
};
} // namespace webrtc