Delete AudioEncoderOpus constructor that doesn't provide Environment
Bug: webrtc:343086059 Change-Id: I55573eff8a13c504c7e14f370398bba1a6eae906 Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/358060 Commit-Queue: Danil Chapovalov <danilchap@webrtc.org> Reviewed-by: Jakob Ivarsson <jakobi@webrtc.org> Cr-Commit-Position: refs/heads/main@{#42692}
This commit is contained in:
parent
c2160b14b1
commit
05309c5236
@ -46,12 +46,10 @@ rtc_library("audio_encoder_opus") {
|
|||||||
deps = [
|
deps = [
|
||||||
":audio_encoder_opus_config",
|
":audio_encoder_opus_config",
|
||||||
"..:audio_codecs_api",
|
"..:audio_codecs_api",
|
||||||
"../../../api:field_trials_view",
|
|
||||||
"../../../modules/audio_coding:webrtc_opus",
|
"../../../modules/audio_coding:webrtc_opus",
|
||||||
"../../../rtc_base:checks",
|
"../../../rtc_base:checks",
|
||||||
"../../../rtc_base/system:rtc_export",
|
"../../../rtc_base/system:rtc_export",
|
||||||
"../../environment",
|
"../../environment",
|
||||||
"//third_party/abseil-cpp/absl/memory",
|
|
||||||
"//third_party/abseil-cpp/absl/types:optional",
|
"//third_party/abseil-cpp/absl/types:optional",
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
|
|||||||
@ -13,14 +13,12 @@
|
|||||||
#include <memory>
|
#include <memory>
|
||||||
#include <vector>
|
#include <vector>
|
||||||
|
|
||||||
#include "absl/memory/memory.h"
|
|
||||||
#include "absl/types/optional.h"
|
#include "absl/types/optional.h"
|
||||||
#include "api/audio_codecs/audio_codec_pair_id.h"
|
#include "api/audio_codecs/audio_codec_pair_id.h"
|
||||||
#include "api/audio_codecs/audio_encoder.h"
|
#include "api/audio_codecs/audio_encoder.h"
|
||||||
#include "api/audio_codecs/audio_encoder_factory.h"
|
#include "api/audio_codecs/audio_encoder_factory.h"
|
||||||
#include "api/audio_codecs/audio_format.h"
|
#include "api/audio_codecs/audio_format.h"
|
||||||
#include "api/audio_codecs/opus/audio_encoder_opus_config.h"
|
#include "api/audio_codecs/opus/audio_encoder_opus_config.h"
|
||||||
#include "api/field_trials_view.h"
|
|
||||||
#include "modules/audio_coding/codecs/opus/audio_encoder_opus.h"
|
#include "modules/audio_coding/codecs/opus/audio_encoder_opus.h"
|
||||||
#include "rtc_base/checks.h"
|
#include "rtc_base/checks.h"
|
||||||
|
|
||||||
@ -41,22 +39,6 @@ AudioCodecInfo AudioEncoderOpus::QueryAudioEncoder(
|
|||||||
return AudioEncoderOpusImpl::QueryAudioEncoder(config);
|
return AudioEncoderOpusImpl::QueryAudioEncoder(config);
|
||||||
}
|
}
|
||||||
|
|
||||||
std::unique_ptr<AudioEncoder> AudioEncoderOpus::MakeAudioEncoder(
|
|
||||||
const AudioEncoderOpusConfig& config,
|
|
||||||
int payload_type,
|
|
||||||
absl::optional<AudioCodecPairId> /*codec_pair_id*/,
|
|
||||||
const FieldTrialsView* field_trials) {
|
|
||||||
if (!config.IsOk()) {
|
|
||||||
RTC_DCHECK_NOTREACHED();
|
|
||||||
return nullptr;
|
|
||||||
}
|
|
||||||
#pragma clang diagnostic push
|
|
||||||
#pragma clang diagnostic ignored "-Wdeprecated-declarations"
|
|
||||||
// Use WrapUnique to call deprecated constructor.
|
|
||||||
return absl::WrapUnique(new AudioEncoderOpusImpl(config, payload_type));
|
|
||||||
#pragma clang diagnostic pop
|
|
||||||
}
|
|
||||||
|
|
||||||
std::unique_ptr<AudioEncoder> AudioEncoderOpus::MakeAudioEncoder(
|
std::unique_ptr<AudioEncoder> AudioEncoderOpus::MakeAudioEncoder(
|
||||||
const Environment& env,
|
const Environment& env,
|
||||||
const AudioEncoderOpusConfig& config,
|
const AudioEncoderOpusConfig& config,
|
||||||
|
|||||||
@ -15,13 +15,11 @@
|
|||||||
#include <vector>
|
#include <vector>
|
||||||
|
|
||||||
#include "absl/types/optional.h"
|
#include "absl/types/optional.h"
|
||||||
#include "api/audio_codecs/audio_codec_pair_id.h"
|
|
||||||
#include "api/audio_codecs/audio_encoder.h"
|
#include "api/audio_codecs/audio_encoder.h"
|
||||||
#include "api/audio_codecs/audio_encoder_factory.h"
|
#include "api/audio_codecs/audio_encoder_factory.h"
|
||||||
#include "api/audio_codecs/audio_format.h"
|
#include "api/audio_codecs/audio_format.h"
|
||||||
#include "api/audio_codecs/opus/audio_encoder_opus_config.h"
|
#include "api/audio_codecs/opus/audio_encoder_opus_config.h"
|
||||||
#include "api/environment/environment.h"
|
#include "api/environment/environment.h"
|
||||||
#include "api/field_trials_view.h"
|
|
||||||
#include "rtc_base/system/rtc_export.h"
|
#include "rtc_base/system/rtc_export.h"
|
||||||
|
|
||||||
namespace webrtc {
|
namespace webrtc {
|
||||||
@ -38,11 +36,6 @@ struct RTC_EXPORT AudioEncoderOpus {
|
|||||||
const Environment& env,
|
const Environment& env,
|
||||||
const AudioEncoderOpusConfig& config,
|
const AudioEncoderOpusConfig& config,
|
||||||
const AudioEncoderFactory::Options& options);
|
const AudioEncoderFactory::Options& options);
|
||||||
static std::unique_ptr<AudioEncoder> MakeAudioEncoder(
|
|
||||||
const AudioEncoderOpusConfig& config,
|
|
||||||
int payload_type,
|
|
||||||
absl::optional<AudioCodecPairId> codec_pair_id = absl::nullopt,
|
|
||||||
const FieldTrialsView* field_trials = nullptr);
|
|
||||||
};
|
};
|
||||||
|
|
||||||
} // namespace webrtc
|
} // namespace webrtc
|
||||||
|
|||||||
@ -473,7 +473,6 @@ rtc_library("webrtc_opus") {
|
|||||||
"../../api/audio_codecs:audio_codecs_api",
|
"../../api/audio_codecs:audio_codecs_api",
|
||||||
"../../api/audio_codecs/opus:audio_encoder_opus_config",
|
"../../api/audio_codecs/opus:audio_encoder_opus_config",
|
||||||
"../../api/environment",
|
"../../api/environment",
|
||||||
"../../api/transport:field_trial_based_config",
|
|
||||||
"../../common_audio",
|
"../../common_audio",
|
||||||
"../../rtc_base:buffer",
|
"../../rtc_base:buffer",
|
||||||
"../../rtc_base:checks",
|
"../../rtc_base:checks",
|
||||||
|
|||||||
@ -20,7 +20,6 @@
|
|||||||
#include "absl/strings/match.h"
|
#include "absl/strings/match.h"
|
||||||
#include "absl/strings/string_view.h"
|
#include "absl/strings/string_view.h"
|
||||||
#include "api/field_trials_view.h"
|
#include "api/field_trials_view.h"
|
||||||
#include "api/transport/field_trial_based_config.h"
|
|
||||||
#include "modules/audio_coding/audio_network_adaptor/audio_network_adaptor_impl.h"
|
#include "modules/audio_coding/audio_network_adaptor/audio_network_adaptor_impl.h"
|
||||||
#include "modules/audio_coding/audio_network_adaptor/controller_manager.h"
|
#include "modules/audio_coding/audio_network_adaptor/controller_manager.h"
|
||||||
#include "modules/audio_coding/codecs/opus/audio_coder_opus_common.h"
|
#include "modules/audio_coding/codecs/opus/audio_coder_opus_common.h"
|
||||||
@ -345,7 +344,7 @@ std::unique_ptr<AudioEncoderOpusImpl> AudioEncoderOpusImpl::CreateForTesting(
|
|||||||
std::unique_ptr<SmoothingFilter> bitrate_smoother) {
|
std::unique_ptr<SmoothingFilter> bitrate_smoother) {
|
||||||
// Using `new` to access a non-public constructor.
|
// Using `new` to access a non-public constructor.
|
||||||
return absl::WrapUnique(new AudioEncoderOpusImpl(
|
return absl::WrapUnique(new AudioEncoderOpusImpl(
|
||||||
env.field_trials(), config, payload_type, audio_network_adaptor_creator,
|
env, config, payload_type, audio_network_adaptor_creator,
|
||||||
std::move(bitrate_smoother)));
|
std::move(bitrate_smoother)));
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -353,7 +352,7 @@ AudioEncoderOpusImpl::AudioEncoderOpusImpl(const Environment& env,
|
|||||||
const AudioEncoderOpusConfig& config,
|
const AudioEncoderOpusConfig& config,
|
||||||
int payload_type)
|
int payload_type)
|
||||||
: AudioEncoderOpusImpl(
|
: AudioEncoderOpusImpl(
|
||||||
env.field_trials(),
|
env,
|
||||||
config,
|
config,
|
||||||
payload_type,
|
payload_type,
|
||||||
[this](absl::string_view config_string, RtcEventLog* event_log) {
|
[this](absl::string_view config_string, RtcEventLog* event_log) {
|
||||||
@ -362,30 +361,19 @@ AudioEncoderOpusImpl::AudioEncoderOpusImpl(const Environment& env,
|
|||||||
// We choose 5sec as initial time constant due to empirical data.
|
// We choose 5sec as initial time constant due to empirical data.
|
||||||
std::make_unique<SmoothingFilterImpl>(5'000)) {}
|
std::make_unique<SmoothingFilterImpl>(5'000)) {}
|
||||||
|
|
||||||
AudioEncoderOpusImpl::AudioEncoderOpusImpl(const AudioEncoderOpusConfig& config,
|
|
||||||
int payload_type)
|
|
||||||
: AudioEncoderOpusImpl(
|
|
||||||
FieldTrialBasedConfig(),
|
|
||||||
config,
|
|
||||||
payload_type,
|
|
||||||
[this](absl::string_view config_string, RtcEventLog* event_log) {
|
|
||||||
return DefaultAudioNetworkAdaptorCreator(config_string, event_log);
|
|
||||||
},
|
|
||||||
// We choose 5sec as initial time constant due to empirical data.
|
|
||||||
std::make_unique<SmoothingFilterImpl>(5000)) {}
|
|
||||||
|
|
||||||
AudioEncoderOpusImpl::AudioEncoderOpusImpl(
|
AudioEncoderOpusImpl::AudioEncoderOpusImpl(
|
||||||
const FieldTrialsView& field_trials,
|
const Environment& env,
|
||||||
const AudioEncoderOpusConfig& config,
|
const AudioEncoderOpusConfig& config,
|
||||||
int payload_type,
|
int payload_type,
|
||||||
const AudioNetworkAdaptorCreator& audio_network_adaptor_creator,
|
const AudioNetworkAdaptorCreator& audio_network_adaptor_creator,
|
||||||
std::unique_ptr<SmoothingFilter> bitrate_smoother)
|
std::unique_ptr<SmoothingFilter> bitrate_smoother)
|
||||||
: payload_type_(payload_type),
|
: payload_type_(payload_type),
|
||||||
use_stable_target_for_adaptation_(
|
use_stable_target_for_adaptation_(!env.field_trials().IsDisabled(
|
||||||
!field_trials.IsDisabled("WebRTC-Audio-StableTargetAdaptation")),
|
"WebRTC-Audio-StableTargetAdaptation")),
|
||||||
adjust_bandwidth_(field_trials.IsEnabled("WebRTC-AdjustOpusBandwidth")),
|
adjust_bandwidth_(
|
||||||
|
env.field_trials().IsEnabled("WebRTC-AdjustOpusBandwidth")),
|
||||||
bitrate_changed_(true),
|
bitrate_changed_(true),
|
||||||
bitrate_multipliers_(GetBitrateMultipliers(field_trials)),
|
bitrate_multipliers_(GetBitrateMultipliers(env.field_trials())),
|
||||||
packet_loss_rate_(0.0),
|
packet_loss_rate_(0.0),
|
||||||
inst_(nullptr),
|
inst_(nullptr),
|
||||||
packet_loss_fraction_smoother_(new PacketLossFractionSmoother()),
|
packet_loss_fraction_smoother_(new PacketLossFractionSmoother()),
|
||||||
|
|||||||
@ -61,10 +61,6 @@ class AudioEncoderOpusImpl final : public AudioEncoder {
|
|||||||
const AudioEncoderOpusConfig& config,
|
const AudioEncoderOpusConfig& config,
|
||||||
int payload_type);
|
int payload_type);
|
||||||
|
|
||||||
[[deprecated("bugs.webrtc.org/343086059")]] AudioEncoderOpusImpl(
|
|
||||||
const AudioEncoderOpusConfig& config,
|
|
||||||
int payload_type);
|
|
||||||
|
|
||||||
~AudioEncoderOpusImpl() override;
|
~AudioEncoderOpusImpl() override;
|
||||||
|
|
||||||
AudioEncoderOpusImpl(const AudioEncoderOpusImpl&) = delete;
|
AudioEncoderOpusImpl(const AudioEncoderOpusImpl&) = delete;
|
||||||
@ -126,10 +122,8 @@ class AudioEncoderOpusImpl final : public AudioEncoder {
|
|||||||
private:
|
private:
|
||||||
class PacketLossFractionSmoother;
|
class PacketLossFractionSmoother;
|
||||||
|
|
||||||
// TODO: bugs.webrtc.org/343086059 - Replace field_trials with Environment
|
|
||||||
// when public constructors that do not provide the Environment are removed.
|
|
||||||
AudioEncoderOpusImpl(
|
AudioEncoderOpusImpl(
|
||||||
const FieldTrialsView& field_trials,
|
const Environment& env,
|
||||||
const AudioEncoderOpusConfig& config,
|
const AudioEncoderOpusConfig& config,
|
||||||
int payload_type,
|
int payload_type,
|
||||||
const AudioNetworkAdaptorCreator& audio_network_adaptor_creator,
|
const AudioNetworkAdaptorCreator& audio_network_adaptor_creator,
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user