Revert "Enable using a custom NetEqFactory in simulations"
This reverts commit 2a11b2451a4068746fa0c55fa210efd4a15e4423. Reason for revert: Causes b/147826709 Original change's description: > Enable using a custom NetEqFactory in simulations > > Bug: webrtc:11005 > Change-Id: I8a15f77953cbd3c29a75c7cfc77f926b138994b9 > Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/165580 > Commit-Queue: Ivo Creusen <ivoc@webrtc.org> > Reviewed-by: Karl Wiberg <kwiberg@webrtc.org> > Cr-Commit-Position: refs/heads/master@{#30286} TBR=kwiberg@webrtc.org,ivoc@webrtc.org Change-Id: I14a0bd6ad2a90f1686b8b1a78f18aea9325871fe No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: webrtc:11005 Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/166403 Reviewed-by: Qingsi Wang <qingsi@webrtc.org> Commit-Queue: Sandeep Siddhartha <sansid@google.com> Cr-Commit-Position: refs/heads/master@{#30288}
This commit is contained in:

committed by
Commit Bot

parent
8daecc0e1e
commit
3f0bc2c176
@ -678,7 +678,6 @@ if (rtc_include_tests) {
|
||||
":neteq_simulator_api",
|
||||
"../modules/audio_coding:neteq_test_factory",
|
||||
"../rtc_base:checks",
|
||||
"neteq:neteq_api",
|
||||
"//third_party/abseil-cpp/absl/flags:flag",
|
||||
"//third_party/abseil-cpp/absl/flags:parse",
|
||||
"//third_party/abseil-cpp/absl/strings",
|
||||
|
@ -50,8 +50,7 @@ std::unique_ptr<NetEqSimulator> NetEqSimulatorFactory::CreateSimulator(
|
||||
config.max_nr_packets_in_buffer =
|
||||
absl::GetFlag(FLAGS_max_nr_packets_in_buffer);
|
||||
config.output_audio_filename = output_audio_filename;
|
||||
return factory_->InitializeTestFromFile(/*input_file_name=*/args[1],
|
||||
/*factory=*/nullptr, config);
|
||||
return factory_->InitializeTestFromFile(args[1], config);
|
||||
}
|
||||
|
||||
std::unique_ptr<NetEqSimulator> NetEqSimulatorFactory::CreateSimulatorFromFile(
|
||||
@ -64,8 +63,8 @@ std::unique_ptr<NetEqSimulator> NetEqSimulatorFactory::CreateSimulatorFromFile(
|
||||
config.initial_dummy_packets = simulation_config.initial_dummy_packets;
|
||||
config.skip_get_audio_events = simulation_config.skip_get_audio_events;
|
||||
config.field_trial_string = simulation_config.field_trial_string;
|
||||
return factory_->InitializeTestFromFile(
|
||||
std::string(event_log_filename), simulation_config.neteq_factory, config);
|
||||
return factory_->InitializeTestFromFile(std::string(event_log_filename),
|
||||
config);
|
||||
}
|
||||
|
||||
std::unique_ptr<NetEqSimulator>
|
||||
@ -80,8 +79,7 @@ NetEqSimulatorFactory::CreateSimulatorFromString(
|
||||
config.skip_get_audio_events = simulation_config.skip_get_audio_events;
|
||||
config.field_trial_string = simulation_config.field_trial_string;
|
||||
return factory_->InitializeTestFromString(
|
||||
std::string(event_log_file_contents), simulation_config.neteq_factory,
|
||||
config);
|
||||
std::string(event_log_file_contents), config);
|
||||
}
|
||||
|
||||
} // namespace test
|
||||
|
@ -15,7 +15,6 @@
|
||||
#include <string>
|
||||
|
||||
#include "absl/strings/string_view.h"
|
||||
#include "api/neteq/neteq_factory.h"
|
||||
#include "api/test/neteq_simulator.h"
|
||||
|
||||
namespace webrtc {
|
||||
@ -41,8 +40,6 @@ class NetEqSimulatorFactory {
|
||||
int skip_get_audio_events = 0;
|
||||
// A WebRTC field trial string to be used during the simulation.
|
||||
std::string field_trial_string;
|
||||
// A custom NetEqFactory can be used.
|
||||
NetEqFactory* neteq_factory = nullptr;
|
||||
};
|
||||
// This function takes the same arguments as the neteq_rtpplay utility.
|
||||
std::unique_ptr<NetEqSimulator> CreateSimulator(int argc, char* argv[]);
|
||||
|
@ -186,10 +186,8 @@ NetEqNetworkStatistics RunTest(int loss_cadence, std::string* checksum) {
|
||||
NetEqTest::Callbacks callbacks;
|
||||
|
||||
NetEqTest neteq_test(
|
||||
config, /*decoder_factory=*/
|
||||
new rtc::RefCountedObject<test::AudioDecoderProxyFactory>(&dec),
|
||||
/*codecs=*/decoders, /*text_log=*/nullptr, /*neteq_factory=*/nullptr,
|
||||
/*input=*/std::move(lossy_input), std::move(output), callbacks);
|
||||
config, new rtc::RefCountedObject<test::AudioDecoderProxyFactory>(&dec),
|
||||
decoders, nullptr, std::move(lossy_input), std::move(output), callbacks);
|
||||
EXPECT_LE(kRunTimeMs, neteq_test.Run());
|
||||
|
||||
auto lifetime_stats = neteq_test.LifetimeStats();
|
||||
|
@ -1084,10 +1084,8 @@ TEST(NetEqNoTimeStretchingMode, RunTest) {
|
||||
new TimeLimitedNetEqInput(std::move(input), 20000));
|
||||
std::unique_ptr<AudioSink> output(new VoidAudioSink);
|
||||
NetEqTest::Callbacks callbacks;
|
||||
NetEqTest test(config, CreateBuiltinAudioDecoderFactory(), codecs,
|
||||
/*text_log=*/nullptr, /*neteq_factory=*/nullptr,
|
||||
/*input=*/std::move(input_time_limit), std::move(output),
|
||||
callbacks);
|
||||
NetEqTest test(config, CreateBuiltinAudioDecoderFactory(), codecs, nullptr,
|
||||
std::move(input_time_limit), std::move(output), callbacks);
|
||||
test.Run();
|
||||
const auto stats = test.SimulationStats();
|
||||
EXPECT_EQ(0, stats.accelerate_rate);
|
||||
|
@ -397,8 +397,7 @@ int main(int argc, char* argv[]) {
|
||||
}
|
||||
|
||||
std::unique_ptr<webrtc::test::NetEqTest> test =
|
||||
factory.InitializeTestFromFile(/*input_filename=*/args[1],
|
||||
/*factory=*/nullptr, config);
|
||||
factory.InitializeTestFromFile(/*input_filename=*/args[1], config);
|
||||
RTC_CHECK(test) << "ERROR: Unable to run test";
|
||||
test->Run();
|
||||
return 0;
|
||||
|
@ -63,14 +63,11 @@ NetEqTest::NetEqTest(const NetEq::Config& config,
|
||||
rtc::scoped_refptr<AudioDecoderFactory> decoder_factory,
|
||||
const DecoderMap& codecs,
|
||||
std::unique_ptr<std::ofstream> text_log,
|
||||
NetEqFactory* neteq_factory,
|
||||
std::unique_ptr<NetEqInput> input,
|
||||
std::unique_ptr<AudioSink> output,
|
||||
Callbacks callbacks)
|
||||
: clock_(0),
|
||||
neteq_(neteq_factory
|
||||
? neteq_factory->CreateNetEq(config, decoder_factory, &clock_)
|
||||
: CreateNetEq(config, &clock_, decoder_factory)),
|
||||
neteq_(CreateNetEq(config, &clock_, decoder_factory)),
|
||||
input_(std::move(input)),
|
||||
output_(std::move(output)),
|
||||
callbacks_(callbacks),
|
||||
|
@ -20,7 +20,6 @@
|
||||
#include "absl/types/optional.h"
|
||||
#include "api/audio_codecs/audio_decoder_factory.h"
|
||||
#include "api/neteq/neteq.h"
|
||||
#include "api/neteq/neteq_factory.h"
|
||||
#include "api/test/neteq_simulator.h"
|
||||
#include "modules/audio_coding/neteq/tools/audio_sink.h"
|
||||
#include "modules/audio_coding/neteq/tools/neteq_input.h"
|
||||
@ -84,7 +83,6 @@ class NetEqTest : public NetEqSimulator {
|
||||
rtc::scoped_refptr<AudioDecoderFactory> decoder_factory,
|
||||
const DecoderMap& codecs,
|
||||
std::unique_ptr<std::ofstream> text_log,
|
||||
NetEqFactory* neteq_factory,
|
||||
std::unique_ptr<NetEqInput> input,
|
||||
std::unique_ptr<AudioSink> output,
|
||||
Callbacks callbacks);
|
||||
|
@ -110,7 +110,6 @@ NetEqTestFactory::Config::~Config() = default;
|
||||
|
||||
std::unique_ptr<NetEqTest> NetEqTestFactory::InitializeTestFromString(
|
||||
const std::string& input_string,
|
||||
NetEqFactory* factory,
|
||||
const Config& config) {
|
||||
std::unique_ptr<NetEqInput> input(
|
||||
NetEqEventLogInput::CreateFromString(input_string, config.ssrc_filter));
|
||||
@ -118,12 +117,11 @@ std::unique_ptr<NetEqTest> NetEqTestFactory::InitializeTestFromString(
|
||||
std::cerr << "Error: Cannot parse input string" << std::endl;
|
||||
return nullptr;
|
||||
}
|
||||
return InitializeTest(std::move(input), factory, config);
|
||||
return InitializeTest(std::move(input), config);
|
||||
}
|
||||
|
||||
std::unique_ptr<NetEqTest> NetEqTestFactory::InitializeTestFromFile(
|
||||
const std::string& input_file_name,
|
||||
NetEqFactory* factory,
|
||||
const Config& config) {
|
||||
// Gather RTP header extensions in a map.
|
||||
NetEqPacketSourceInput::RtpHeaderExtensionMap rtp_ext_map = {
|
||||
@ -148,12 +146,11 @@ std::unique_ptr<NetEqTest> NetEqTestFactory::InitializeTestFromFile(
|
||||
std::cerr << "Error: Cannot open input file" << std::endl;
|
||||
return nullptr;
|
||||
}
|
||||
return InitializeTest(std::move(input), factory, config);
|
||||
return InitializeTest(std::move(input), config);
|
||||
}
|
||||
|
||||
std::unique_ptr<NetEqTest> NetEqTestFactory::InitializeTest(
|
||||
std::unique_ptr<NetEqInput> input,
|
||||
NetEqFactory* factory,
|
||||
const Config& config) {
|
||||
if (input->ended()) {
|
||||
std::cerr << "Error: Input is empty" << std::endl;
|
||||
@ -333,9 +330,9 @@ std::unique_ptr<NetEqTest> NetEqTestFactory::InitializeTest(
|
||||
neteq_config.sample_rate_hz = *sample_rate_hz;
|
||||
neteq_config.max_packets_in_buffer = config.max_nr_packets_in_buffer;
|
||||
neteq_config.enable_fast_accelerate = config.enable_fast_accelerate;
|
||||
return std::make_unique<NetEqTest>(
|
||||
neteq_config, decoder_factory, codecs, std::move(text_log), factory,
|
||||
std::move(input), std::move(output), callbacks);
|
||||
return std::make_unique<NetEqTest>(neteq_config, decoder_factory, codecs,
|
||||
std::move(text_log), std::move(input),
|
||||
std::move(output), callbacks);
|
||||
}
|
||||
|
||||
} // namespace test
|
||||
|
@ -147,16 +147,13 @@ class NetEqTestFactory {
|
||||
|
||||
std::unique_ptr<NetEqTest> InitializeTestFromFile(
|
||||
const std::string& input_filename,
|
||||
NetEqFactory* neteq_factory,
|
||||
const Config& config);
|
||||
std::unique_ptr<NetEqTest> InitializeTestFromString(
|
||||
const std::string& input_string,
|
||||
NetEqFactory* neteq_factory,
|
||||
const Config& config);
|
||||
|
||||
private:
|
||||
std::unique_ptr<NetEqTest> InitializeTest(std::unique_ptr<NetEqInput> input,
|
||||
NetEqFactory* neteq_factory,
|
||||
const Config& config);
|
||||
std::unique_ptr<SsrcSwitchDetector> ssrc_switch_detector_;
|
||||
std::unique_ptr<NetEqStatsPlotter> stats_plotter_;
|
||||
|
@ -1934,9 +1934,8 @@ std::unique_ptr<test::NetEqStatsGetter> CreateNetEqTestAndRun(
|
||||
callbacks.post_insert_packet = neteq_stats_getter->delay_analyzer();
|
||||
callbacks.get_audio_callback = neteq_stats_getter.get();
|
||||
|
||||
test::NetEqTest test(config, decoder_factory, codecs, /*text_log=*/nullptr,
|
||||
/*factory=*/nullptr, std::move(input), std::move(output),
|
||||
callbacks);
|
||||
test::NetEqTest test(config, decoder_factory, codecs, nullptr,
|
||||
std::move(input), std::move(output), callbacks);
|
||||
test.Run();
|
||||
return neteq_stats_getter;
|
||||
}
|
||||
|
@ -138,8 +138,7 @@ void FuzzOneInputTest(const uint8_t* data, size_t size) {
|
||||
RTC_CHECK(it != codecs.end());
|
||||
RTC_CHECK(it->second == SdpAudioFormat("L16", 32000, 1));
|
||||
|
||||
NetEqTest test(config, CreateBuiltinAudioDecoderFactory(), codecs,
|
||||
/*text_log=*/nullptr, /*neteq_factory=*/nullptr,
|
||||
NetEqTest test(config, CreateBuiltinAudioDecoderFactory(), codecs, nullptr,
|
||||
std::move(input), std::move(output), callbacks);
|
||||
test.Run();
|
||||
}
|
||||
|
@ -186,8 +186,7 @@ void FuzzOneInputTest(const uint8_t* data, size_t size) {
|
||||
RTC_CHECK(
|
||||
MapHas(codecs, rate_types[3].second, SdpAudioFormat("l16", 48000, 1)));
|
||||
|
||||
NetEqTest test(config, CreateBuiltinAudioDecoderFactory(), codecs,
|
||||
/*text_log=*/nullptr, /*neteq_factory=*/nullptr,
|
||||
NetEqTest test(config, CreateBuiltinAudioDecoderFactory(), codecs, nullptr,
|
||||
std::move(input), std::move(output), callbacks);
|
||||
test.Run();
|
||||
}
|
||||
|
Reference in New Issue
Block a user