Remove all references to codec-level transport-cc functions and flags.
This seems to have no effect on tests, so it appears that these were not used after all. The goal is to make transport-cc a media-section-level attribute. Bug: webrtc:378698658 Change-Id: Ia20ca5b91472b02db30f911ad1a1892cf36cd682 Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/368440 Reviewed-by: Per Kjellander <perkj@webrtc.org> Commit-Queue: Harald Alvestrand <hta@webrtc.org> Cr-Commit-Position: refs/heads/main@{#43411}
This commit is contained in:
parent
79c380c5b7
commit
752235261e
@ -166,6 +166,7 @@ if (rtc_include_tests) {
|
|||||||
"../api:bitrate_allocation",
|
"../api:bitrate_allocation",
|
||||||
"../api:frame_transformer_factory",
|
"../api:frame_transformer_factory",
|
||||||
"../api:frame_transformer_interface",
|
"../api:frame_transformer_interface",
|
||||||
|
"../api:function_view",
|
||||||
"../api:libjingle_peerconnection_api",
|
"../api:libjingle_peerconnection_api",
|
||||||
"../api:make_ref_counted",
|
"../api:make_ref_counted",
|
||||||
"../api:mock_audio_mixer",
|
"../api:mock_audio_mixer",
|
||||||
@ -174,6 +175,7 @@ if (rtc_include_tests) {
|
|||||||
"../api:mock_frame_transformer",
|
"../api:mock_frame_transformer",
|
||||||
"../api:mock_transformable_audio_frame",
|
"../api:mock_transformable_audio_frame",
|
||||||
"../api:rtp_headers",
|
"../api:rtp_headers",
|
||||||
|
"../api:rtp_parameters",
|
||||||
"../api:scoped_refptr",
|
"../api:scoped_refptr",
|
||||||
"../api:transport_api",
|
"../api:transport_api",
|
||||||
"../api/audio:audio_frame_api",
|
"../api/audio:audio_frame_api",
|
||||||
@ -183,15 +185,20 @@ if (rtc_include_tests) {
|
|||||||
"../api/audio_codecs/opus:audio_decoder_opus",
|
"../api/audio_codecs/opus:audio_decoder_opus",
|
||||||
"../api/audio_codecs/opus:audio_encoder_opus",
|
"../api/audio_codecs/opus:audio_encoder_opus",
|
||||||
"../api/crypto:frame_decryptor_interface",
|
"../api/crypto:frame_decryptor_interface",
|
||||||
|
"../api/crypto:frame_encryptor_interface",
|
||||||
"../api/crypto:options",
|
"../api/crypto:options",
|
||||||
"../api/environment",
|
"../api/environment",
|
||||||
"../api/environment:environment_factory",
|
"../api/environment:environment_factory",
|
||||||
"../api/task_queue:default_task_queue_factory",
|
"../api/task_queue:default_task_queue_factory",
|
||||||
"../api/task_queue/test:mock_task_queue_base",
|
"../api/task_queue/test:mock_task_queue_base",
|
||||||
"../api/transport:bitrate_settings",
|
"../api/transport:bitrate_settings",
|
||||||
|
"../api/transport:network_control",
|
||||||
"../api/units:data_rate",
|
"../api/units:data_rate",
|
||||||
|
"../api/units:data_size",
|
||||||
"../api/units:time_delta",
|
"../api/units:time_delta",
|
||||||
"../api/units:timestamp",
|
"../api/units:timestamp",
|
||||||
|
"../call:bitrate_allocator",
|
||||||
|
"../call:call_interfaces",
|
||||||
"../call:mock_bitrate_allocator",
|
"../call:mock_bitrate_allocator",
|
||||||
"../call:mock_call_interfaces",
|
"../call:mock_call_interfaces",
|
||||||
"../call:mock_rtp_interfaces",
|
"../call:mock_rtp_interfaces",
|
||||||
|
|||||||
@ -10,27 +10,47 @@
|
|||||||
|
|
||||||
#include "audio/audio_send_stream.h"
|
#include "audio/audio_send_stream.h"
|
||||||
|
|
||||||
|
#include <cstddef>
|
||||||
|
#include <cstdint>
|
||||||
#include <memory>
|
#include <memory>
|
||||||
|
#include <optional>
|
||||||
#include <string>
|
#include <string>
|
||||||
#include <thread>
|
|
||||||
#include <utility>
|
#include <utility>
|
||||||
#include <vector>
|
#include <vector>
|
||||||
|
|
||||||
|
#include "api/audio/audio_frame.h"
|
||||||
#include "api/audio/audio_processing_statistics.h"
|
#include "api/audio/audio_processing_statistics.h"
|
||||||
|
#include "api/audio_codecs/audio_encoder.h"
|
||||||
|
#include "api/audio_codecs/audio_format.h"
|
||||||
|
#include "api/call/bitrate_allocation.h"
|
||||||
|
#include "api/crypto/frame_encryptor_interface.h"
|
||||||
#include "api/environment/environment_factory.h"
|
#include "api/environment/environment_factory.h"
|
||||||
|
#include "api/function_view.h"
|
||||||
|
#include "api/make_ref_counted.h"
|
||||||
|
#include "api/rtp_parameters.h"
|
||||||
|
#include "api/scoped_refptr.h"
|
||||||
#include "api/test/mock_frame_encryptor.h"
|
#include "api/test/mock_frame_encryptor.h"
|
||||||
|
#include "api/transport/network_types.h"
|
||||||
|
#include "api/units/data_rate.h"
|
||||||
|
#include "api/units/data_size.h"
|
||||||
|
#include "api/units/time_delta.h"
|
||||||
#include "audio/audio_state.h"
|
#include "audio/audio_state.h"
|
||||||
|
#include "audio/channel_send.h"
|
||||||
#include "audio/conversion.h"
|
#include "audio/conversion.h"
|
||||||
#include "audio/mock_voe_channel_proxy.h"
|
#include "audio/mock_voe_channel_proxy.h"
|
||||||
|
#include "call/audio_state.h"
|
||||||
|
#include "call/bitrate_allocator.h"
|
||||||
#include "call/test/mock_bitrate_allocator.h"
|
#include "call/test/mock_bitrate_allocator.h"
|
||||||
#include "call/test/mock_rtp_transport_controller_send.h"
|
#include "call/test/mock_rtp_transport_controller_send.h"
|
||||||
#include "modules/audio_device/include/mock_audio_device.h"
|
#include "modules/audio_device/include/mock_audio_device.h"
|
||||||
#include "modules/audio_mixer/audio_mixer_impl.h"
|
#include "modules/audio_mixer/audio_mixer_impl.h"
|
||||||
#include "modules/audio_mixer/sine_wave_generator.h"
|
#include "modules/audio_mixer/sine_wave_generator.h"
|
||||||
#include "modules/audio_processing/include/mock_audio_processing.h"
|
#include "modules/audio_processing/include/mock_audio_processing.h"
|
||||||
|
#include "modules/rtp_rtcp/include/report_block_data.h"
|
||||||
#include "modules/rtp_rtcp/mocks/mock_network_link_rtcp_observer.h"
|
#include "modules/rtp_rtcp/mocks/mock_network_link_rtcp_observer.h"
|
||||||
#include "modules/rtp_rtcp/mocks/mock_rtp_rtcp.h"
|
#include "modules/rtp_rtcp/mocks/mock_rtp_rtcp.h"
|
||||||
#include "system_wrappers/include/clock.h"
|
#include "modules/rtp_rtcp/source/rtp_header_extensions.h"
|
||||||
|
#include "test/gmock.h"
|
||||||
#include "test/gtest.h"
|
#include "test/gtest.h"
|
||||||
#include "test/mock_audio_encoder.h"
|
#include "test/mock_audio_encoder.h"
|
||||||
#include "test/mock_audio_encoder_factory.h"
|
#include "test/mock_audio_encoder_factory.h"
|
||||||
@ -200,7 +220,6 @@ struct ConfigHelper {
|
|||||||
static void AddBweToConfig(AudioSendStream::Config* config) {
|
static void AddBweToConfig(AudioSendStream::Config* config) {
|
||||||
config->rtp.extensions.push_back(RtpExtension(
|
config->rtp.extensions.push_back(RtpExtension(
|
||||||
RtpExtension::kTransportSequenceNumberUri, kTransportSequenceNumberId));
|
RtpExtension::kTransportSequenceNumberUri, kTransportSequenceNumberId));
|
||||||
config->send_codec_spec->transport_cc_enabled = true;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
void SetupDefaultChannelSend(bool audio_bwe_enabled) {
|
void SetupDefaultChannelSend(bool audio_bwe_enabled) {
|
||||||
@ -354,7 +373,6 @@ TEST(AudioSendStreamTest, ConfigToString) {
|
|||||||
config.send_codec_spec =
|
config.send_codec_spec =
|
||||||
AudioSendStream::Config::SendCodecSpec(kIsacPayloadType, kIsacFormat);
|
AudioSendStream::Config::SendCodecSpec(kIsacPayloadType, kIsacFormat);
|
||||||
config.send_codec_spec->nack_enabled = true;
|
config.send_codec_spec->nack_enabled = true;
|
||||||
config.send_codec_spec->transport_cc_enabled = false;
|
|
||||||
config.send_codec_spec->cng_payload_type = 42;
|
config.send_codec_spec->cng_payload_type = 42;
|
||||||
config.send_codec_spec->red_payload_type = 43;
|
config.send_codec_spec->red_payload_type = 43;
|
||||||
config.encoder_factory = MockAudioEncoderFactory::CreateUnusedFactory();
|
config.encoder_factory = MockAudioEncoderFactory::CreateUnusedFactory();
|
||||||
@ -369,7 +387,7 @@ TEST(AudioSendStreamTest, ConfigToString) {
|
|||||||
"send_transport: null, "
|
"send_transport: null, "
|
||||||
"min_bitrate_bps: 12000, max_bitrate_bps: 34000, has "
|
"min_bitrate_bps: 12000, max_bitrate_bps: 34000, has "
|
||||||
"audio_network_adaptor_config: false, has_dscp: true, "
|
"audio_network_adaptor_config: false, has_dscp: true, "
|
||||||
"send_codec_spec: {nack_enabled: true, transport_cc_enabled: false, "
|
"send_codec_spec: {nack_enabled: true, "
|
||||||
"enable_non_sender_rtt: false, cng_payload_type: 42, "
|
"enable_non_sender_rtt: false, cng_payload_type: 42, "
|
||||||
"red_payload_type: 43, payload_type: 103, "
|
"red_payload_type: 43, payload_type: 103, "
|
||||||
"format: {name: isac, clockrate_hz: 16000, num_channels: 1, "
|
"format: {name: isac, clockrate_hz: 16000, num_channels: 1, "
|
||||||
|
|||||||
@ -84,7 +84,6 @@ std::string AudioSendStream::Config::SendCodecSpec::ToString() const {
|
|||||||
char buf[1024];
|
char buf[1024];
|
||||||
rtc::SimpleStringBuilder ss(buf);
|
rtc::SimpleStringBuilder ss(buf);
|
||||||
ss << "{nack_enabled: " << (nack_enabled ? "true" : "false");
|
ss << "{nack_enabled: " << (nack_enabled ? "true" : "false");
|
||||||
ss << ", transport_cc_enabled: " << (transport_cc_enabled ? "true" : "false");
|
|
||||||
ss << ", enable_non_sender_rtt: "
|
ss << ", enable_non_sender_rtt: "
|
||||||
<< (enable_non_sender_rtt ? "true" : "false");
|
<< (enable_non_sender_rtt ? "true" : "false");
|
||||||
ss << ", cng_payload_type: "
|
ss << ", cng_payload_type: "
|
||||||
@ -100,7 +99,6 @@ std::string AudioSendStream::Config::SendCodecSpec::ToString() const {
|
|||||||
bool AudioSendStream::Config::SendCodecSpec::operator==(
|
bool AudioSendStream::Config::SendCodecSpec::operator==(
|
||||||
const AudioSendStream::Config::SendCodecSpec& rhs) const {
|
const AudioSendStream::Config::SendCodecSpec& rhs) const {
|
||||||
if (nack_enabled == rhs.nack_enabled &&
|
if (nack_enabled == rhs.nack_enabled &&
|
||||||
transport_cc_enabled == rhs.transport_cc_enabled &&
|
|
||||||
enable_non_sender_rtt == rhs.enable_non_sender_rtt &&
|
enable_non_sender_rtt == rhs.enable_non_sender_rtt &&
|
||||||
cng_payload_type == rhs.cng_payload_type &&
|
cng_payload_type == rhs.cng_payload_type &&
|
||||||
red_payload_type == rhs.red_payload_type &&
|
red_payload_type == rhs.red_payload_type &&
|
||||||
|
|||||||
@ -145,7 +145,6 @@ class AudioSendStream : public AudioSender {
|
|||||||
int payload_type;
|
int payload_type;
|
||||||
SdpAudioFormat format;
|
SdpAudioFormat format;
|
||||||
bool nack_enabled = false;
|
bool nack_enabled = false;
|
||||||
bool transport_cc_enabled = false;
|
|
||||||
bool enable_non_sender_rtt = false;
|
bool enable_non_sender_rtt = false;
|
||||||
std::optional<int> cng_payload_type;
|
std::optional<int> cng_payload_type;
|
||||||
std::optional<int> red_payload_type;
|
std::optional<int> red_payload_type;
|
||||||
|
|||||||
@ -982,6 +982,7 @@ if (rtc_include_tests) {
|
|||||||
"../api/video_codecs:video_encoder_factory_template_open_h264_adapter",
|
"../api/video_codecs:video_encoder_factory_template_open_h264_adapter",
|
||||||
"../audio",
|
"../audio",
|
||||||
"../call:call_interfaces",
|
"../call:call_interfaces",
|
||||||
|
"../call:payload_type_picker",
|
||||||
"../call:video_receive_stream_api",
|
"../call:video_receive_stream_api",
|
||||||
"../call:video_send_stream_api",
|
"../call:video_send_stream_api",
|
||||||
"../common_video",
|
"../common_video",
|
||||||
|
|||||||
@ -25,7 +25,7 @@
|
|||||||
#include "api/video_codecs/h264_profile_level_id.h"
|
#include "api/video_codecs/h264_profile_level_id.h"
|
||||||
#include "api/video_codecs/sdp_video_format.h"
|
#include "api/video_codecs/sdp_video_format.h"
|
||||||
#ifdef RTC_ENABLE_H265
|
#ifdef RTC_ENABLE_H265
|
||||||
#include "api/video_codecs/h265_profile_tier_level.h"
|
#include "api/video_codecs/h265_profile_tier_level.h" // IWYU pragma: keep
|
||||||
#endif
|
#endif
|
||||||
#include "media/base/codec_comparators.h"
|
#include "media/base/codec_comparators.h"
|
||||||
#include "media/base/media_constants.h"
|
#include "media/base/media_constants.h"
|
||||||
@ -318,11 +318,6 @@ bool HasRrtr(const Codec& codec) {
|
|||||||
FeedbackParam(kRtcpFbParamRrtr, kParamValueEmpty));
|
FeedbackParam(kRtcpFbParamRrtr, kParamValueEmpty));
|
||||||
}
|
}
|
||||||
|
|
||||||
bool HasTransportCc(const Codec& codec) {
|
|
||||||
return codec.HasFeedbackParam(
|
|
||||||
FeedbackParam(kRtcpFbParamTransportCc, kParamValueEmpty));
|
|
||||||
}
|
|
||||||
|
|
||||||
const Codec* FindMatchingVideoCodec(const std::vector<Codec>& supported_codecs,
|
const Codec* FindMatchingVideoCodec(const std::vector<Codec>& supported_codecs,
|
||||||
const Codec& codec) {
|
const Codec& codec) {
|
||||||
webrtc::SdpVideoFormat sdp_video_format{codec.name, codec.params};
|
webrtc::SdpVideoFormat sdp_video_format{codec.name, codec.params};
|
||||||
|
|||||||
@ -249,7 +249,6 @@ bool HasLntf(const Codec& codec);
|
|||||||
bool HasNack(const Codec& codec);
|
bool HasNack(const Codec& codec);
|
||||||
bool HasRemb(const Codec& codec);
|
bool HasRemb(const Codec& codec);
|
||||||
bool HasRrtr(const Codec& codec);
|
bool HasRrtr(const Codec& codec);
|
||||||
bool HasTransportCc(const Codec& codec);
|
|
||||||
|
|
||||||
// Returns the first codec in `supported_codecs` that matches `codec`, or
|
// Returns the first codec in `supported_codecs` that matches `codec`, or
|
||||||
// nullptr if no codec matches.
|
// nullptr if no codec matches.
|
||||||
|
|||||||
@ -4519,8 +4519,7 @@ class WebRtcVideoChannelFlexfecRecvTest : public WebRtcVideoChannelTest {
|
|||||||
};
|
};
|
||||||
|
|
||||||
TEST_F(WebRtcVideoChannelFlexfecRecvTest,
|
TEST_F(WebRtcVideoChannelFlexfecRecvTest,
|
||||||
DefaultFlexfecCodecHasTransportCcAndRembFeedbackParam) {
|
DefaultFlexfecCodecHasRembFeedbackParam) {
|
||||||
EXPECT_TRUE(cricket::HasTransportCc(GetEngineCodec("flexfec-03")));
|
|
||||||
EXPECT_TRUE(cricket::HasRemb(GetEngineCodec("flexfec-03")));
|
EXPECT_TRUE(cricket::HasRemb(GetEngineCodec("flexfec-03")));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@ -1456,7 +1456,6 @@ bool WebRtcVoiceSendChannel::SetSendCodecs(
|
|||||||
if (voice_codec.bitrate > 0) {
|
if (voice_codec.bitrate > 0) {
|
||||||
send_codec_spec->target_bitrate_bps = voice_codec.bitrate;
|
send_codec_spec->target_bitrate_bps = voice_codec.bitrate;
|
||||||
}
|
}
|
||||||
send_codec_spec->transport_cc_enabled = HasTransportCc(voice_codec);
|
|
||||||
send_codec_spec->nack_enabled = HasNack(voice_codec);
|
send_codec_spec->nack_enabled = HasNack(voice_codec);
|
||||||
send_codec_spec->enable_non_sender_rtt = HasRrtr(voice_codec);
|
send_codec_spec->enable_non_sender_rtt = HasRrtr(voice_codec);
|
||||||
bitrate_config = GetBitrateConfigForCodec(voice_codec);
|
bitrate_config = GetBitrateConfigForCodec(voice_codec);
|
||||||
|
|||||||
@ -48,6 +48,7 @@
|
|||||||
#include "call/audio_state.h"
|
#include "call/audio_state.h"
|
||||||
#include "call/call.h"
|
#include "call/call.h"
|
||||||
#include "call/call_config.h"
|
#include "call/call_config.h"
|
||||||
|
#include "call/payload_type_picker.h"
|
||||||
#include "media/base/codec.h"
|
#include "media/base/codec.h"
|
||||||
#include "media/base/fake_media_engine.h"
|
#include "media/base/fake_media_engine.h"
|
||||||
#include "media/base/fake_network_interface.h"
|
#include "media/base/fake_network_interface.h"
|
||||||
@ -956,18 +957,6 @@ TEST_P(WebRtcVoiceEngineTestFake, CreateRecvStream) {
|
|||||||
EXPECT_EQ("", config.sync_group);
|
EXPECT_EQ("", config.sync_group);
|
||||||
}
|
}
|
||||||
|
|
||||||
TEST_P(WebRtcVoiceEngineTestFake, OpusSupportsTransportCc) {
|
|
||||||
const std::vector<cricket::Codec>& codecs = engine_->send_codecs();
|
|
||||||
bool opus_found = false;
|
|
||||||
for (const cricket::Codec& codec : codecs) {
|
|
||||||
if (codec.name == "opus") {
|
|
||||||
EXPECT_TRUE(HasTransportCc(codec));
|
|
||||||
opus_found = true;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
EXPECT_TRUE(opus_found);
|
|
||||||
}
|
|
||||||
|
|
||||||
// Test that we set our inbound codecs properly, including changing PT.
|
// Test that we set our inbound codecs properly, including changing PT.
|
||||||
TEST_P(WebRtcVoiceEngineTestFake, SetRecvCodecs) {
|
TEST_P(WebRtcVoiceEngineTestFake, SetRecvCodecs) {
|
||||||
EXPECT_TRUE(SetupChannel());
|
EXPECT_TRUE(SetupChannel());
|
||||||
|
|||||||
@ -84,12 +84,15 @@ if (rtc_include_tests && !build_with_chromium) {
|
|||||||
"../../api:frame_generator_api",
|
"../../api:frame_generator_api",
|
||||||
"../../api:libjingle_peerconnection_api",
|
"../../api:libjingle_peerconnection_api",
|
||||||
"../../api:rtc_event_log_output_file",
|
"../../api:rtc_event_log_output_file",
|
||||||
|
"../../api:rtp_headers",
|
||||||
"../../api:rtp_parameters",
|
"../../api:rtp_parameters",
|
||||||
|
"../../api:scoped_refptr",
|
||||||
"../../api:sequence_checker",
|
"../../api:sequence_checker",
|
||||||
"../../api:time_controller",
|
"../../api:time_controller",
|
||||||
"../../api:transport_api",
|
"../../api:transport_api",
|
||||||
"../../api/audio:audio_device",
|
"../../api/audio:audio_device",
|
||||||
"../../api/audio:builtin_audio_processing_builder",
|
"../../api/audio:builtin_audio_processing_builder",
|
||||||
|
"../../api/audio_codecs:audio_codecs_api",
|
||||||
"../../api/audio_codecs:builtin_audio_decoder_factory",
|
"../../api/audio_codecs:builtin_audio_decoder_factory",
|
||||||
"../../api/audio_codecs:builtin_audio_encoder_factory",
|
"../../api/audio_codecs:builtin_audio_encoder_factory",
|
||||||
"../../api/environment",
|
"../../api/environment",
|
||||||
@ -144,6 +147,7 @@ if (rtc_include_tests && !build_with_chromium) {
|
|||||||
"../../rtc_base:rtc_stats_counters",
|
"../../rtc_base:rtc_stats_counters",
|
||||||
"../../rtc_base:safe_minmax",
|
"../../rtc_base:safe_minmax",
|
||||||
"../../rtc_base:socket_address",
|
"../../rtc_base:socket_address",
|
||||||
|
"../../rtc_base:stringutils",
|
||||||
"../../rtc_base:task_queue_for_test",
|
"../../rtc_base:task_queue_for_test",
|
||||||
"../../rtc_base:threading",
|
"../../rtc_base:threading",
|
||||||
"../../rtc_base/synchronization:mutex",
|
"../../rtc_base/synchronization:mutex",
|
||||||
|
|||||||
@ -9,8 +9,27 @@
|
|||||||
*/
|
*/
|
||||||
#include "test/scenario/audio_stream.h"
|
#include "test/scenario/audio_stream.h"
|
||||||
|
|
||||||
#include "absl/memory/memory.h"
|
#include <cstdint>
|
||||||
#include "test/call_test.h"
|
#include <optional>
|
||||||
|
#include <string>
|
||||||
|
#include <vector>
|
||||||
|
|
||||||
|
#include "api/audio_codecs/audio_decoder_factory.h"
|
||||||
|
#include "api/audio_codecs/audio_encoder_factory.h"
|
||||||
|
#include "api/call/transport.h"
|
||||||
|
#include "api/media_types.h"
|
||||||
|
#include "api/rtp_headers.h"
|
||||||
|
#include "api/rtp_parameters.h"
|
||||||
|
#include "api/scoped_refptr.h"
|
||||||
|
#include "api/units/data_rate.h"
|
||||||
|
#include "api/units/time_delta.h"
|
||||||
|
#include "call/audio_receive_stream.h"
|
||||||
|
#include "call/audio_send_stream.h"
|
||||||
|
#include "rtc_base/checks.h"
|
||||||
|
#include "rtc_base/strings/string_builder.h"
|
||||||
|
#include "test/scenario/call_client.h"
|
||||||
|
#include "test/scenario/column_printer.h"
|
||||||
|
#include "test/scenario/scenario_config.h"
|
||||||
#include "test/video_test_constants.h"
|
#include "test/video_test_constants.h"
|
||||||
|
|
||||||
#if WEBRTC_ENABLE_PROTOBUF
|
#if WEBRTC_ENABLE_PROTOBUF
|
||||||
@ -132,9 +151,6 @@ SendAudioStream::SendAudioStream(
|
|||||||
send_config.max_bitrate_bps = max_rate.bps();
|
send_config.max_bitrate_bps = max_rate.bps();
|
||||||
}
|
}
|
||||||
|
|
||||||
if (config.stream.in_bandwidth_estimation) {
|
|
||||||
send_config.send_codec_spec->transport_cc_enabled = true;
|
|
||||||
}
|
|
||||||
send_config.rtp.extensions = GetAudioRtpExtensions(config);
|
send_config.rtp.extensions = GetAudioRtpExtensions(config);
|
||||||
|
|
||||||
sender_->SendTask([&] {
|
sender_->SendTask([&] {
|
||||||
|
|||||||
@ -514,32 +514,48 @@ if (rtc_include_tests) {
|
|||||||
"..//test/network:simulated_network",
|
"..//test/network:simulated_network",
|
||||||
"../api:create_frame_generator",
|
"../api:create_frame_generator",
|
||||||
"../api:fec_controller_api",
|
"../api:fec_controller_api",
|
||||||
|
"../api:field_trials_view",
|
||||||
"../api:frame_generator_api",
|
"../api:frame_generator_api",
|
||||||
"../api:libjingle_peerconnection_api",
|
"../api:libjingle_peerconnection_api",
|
||||||
|
"../api:make_ref_counted",
|
||||||
"../api:rtc_event_log_output_file",
|
"../api:rtc_event_log_output_file",
|
||||||
|
"../api:rtp_parameters",
|
||||||
|
"../api:scoped_refptr",
|
||||||
|
"../api:simulated_network_api",
|
||||||
"../api:test_dependency_factory",
|
"../api:test_dependency_factory",
|
||||||
|
"../api:transport_api",
|
||||||
"../api:video_quality_test_fixture_api",
|
"../api:video_quality_test_fixture_api",
|
||||||
"../api/audio:audio_device",
|
"../api/audio:audio_device",
|
||||||
"../api/audio:builtin_audio_processing_builder",
|
"../api/audio:builtin_audio_processing_builder",
|
||||||
"../api/environment",
|
"../api/environment",
|
||||||
"../api/numerics",
|
"../api/numerics",
|
||||||
|
"../api/rtc_event_log",
|
||||||
"../api/rtc_event_log:rtc_event_log_factory",
|
"../api/rtc_event_log:rtc_event_log_factory",
|
||||||
"../api/task_queue",
|
"../api/task_queue",
|
||||||
"../api/task_queue:default_task_queue_factory",
|
"../api/task_queue:default_task_queue_factory",
|
||||||
"../api/test/metrics:global_metrics_logger_and_exporter",
|
"../api/test/metrics:global_metrics_logger_and_exporter",
|
||||||
"../api/test/metrics:metric",
|
"../api/test/metrics:metric",
|
||||||
|
"../api/units:time_delta",
|
||||||
"../api/video:builtin_video_bitrate_allocator_factory",
|
"../api/video:builtin_video_bitrate_allocator_factory",
|
||||||
|
"../api/video:encoded_image",
|
||||||
|
"../api/video:video_bitrate_allocation",
|
||||||
"../api/video:video_bitrate_allocator_factory",
|
"../api/video:video_bitrate_allocator_factory",
|
||||||
|
"../api/video:video_codec_constants",
|
||||||
"../api/video:video_frame",
|
"../api/video:video_frame",
|
||||||
|
"../api/video:video_frame_type",
|
||||||
"../api/video:video_rtp_headers",
|
"../api/video:video_rtp_headers",
|
||||||
"../api/video_codecs:video_codecs_api",
|
"../api/video_codecs:video_codecs_api",
|
||||||
|
"../call:call_interfaces",
|
||||||
"../call:fake_network",
|
"../call:fake_network",
|
||||||
|
"../call:video_receive_stream_api",
|
||||||
|
"../call:video_send_stream_api",
|
||||||
"../common_video",
|
"../common_video",
|
||||||
"../media:media_constants",
|
"../media:media_constants",
|
||||||
"../media:rtc_audio_video",
|
"../media:rtc_audio_video",
|
||||||
"../media:rtc_internal_video_codecs",
|
"../media:rtc_internal_video_codecs",
|
||||||
"../media:rtc_simulcast_encoder_adapter",
|
"../media:rtc_simulcast_encoder_adapter",
|
||||||
"../modules/audio_device:audio_device_module_from_input_and_output",
|
"../modules/audio_device:audio_device_module_from_input_and_output",
|
||||||
|
"../modules/audio_device:test_audio_device_module",
|
||||||
"../modules/audio_device:windows_core_audio_utility",
|
"../modules/audio_device:windows_core_audio_utility",
|
||||||
"../modules/audio_mixer:audio_mixer_impl",
|
"../modules/audio_mixer:audio_mixer_impl",
|
||||||
"../modules/rtp_rtcp",
|
"../modules/rtp_rtcp",
|
||||||
@ -549,19 +565,25 @@ if (rtc_include_tests) {
|
|||||||
"../modules/video_coding:webrtc_h264",
|
"../modules/video_coding:webrtc_h264",
|
||||||
"../modules/video_coding:webrtc_vp8",
|
"../modules/video_coding:webrtc_vp8",
|
||||||
"../modules/video_coding:webrtc_vp9",
|
"../modules/video_coding:webrtc_vp9",
|
||||||
|
"../rtc_base:checks",
|
||||||
|
"../rtc_base:logging",
|
||||||
"../rtc_base:macromagic",
|
"../rtc_base:macromagic",
|
||||||
"../rtc_base:platform_thread",
|
"../rtc_base:platform_thread",
|
||||||
"../rtc_base:rtc_base_tests_utils",
|
"../rtc_base:rtc_base_tests_utils",
|
||||||
"../rtc_base:rtc_event",
|
"../rtc_base:rtc_event",
|
||||||
"../rtc_base:rtc_numerics",
|
"../rtc_base:rtc_numerics",
|
||||||
|
"../rtc_base:safe_conversions",
|
||||||
"../rtc_base:stringutils",
|
"../rtc_base:stringutils",
|
||||||
"../rtc_base:task_queue_for_test",
|
"../rtc_base:task_queue_for_test",
|
||||||
"../rtc_base:timeutils",
|
"../rtc_base:timeutils",
|
||||||
"../rtc_base/synchronization:mutex",
|
"../rtc_base/synchronization:mutex",
|
||||||
|
"../rtc_base/system:file_wrapper",
|
||||||
"../rtc_base/task_utils:repeating_task",
|
"../rtc_base/task_utils:repeating_task",
|
||||||
"../system_wrappers",
|
"../system_wrappers",
|
||||||
|
"../test:direct_transport",
|
||||||
"../test:fake_video_codecs",
|
"../test:fake_video_codecs",
|
||||||
"../test:fileutils",
|
"../test:fileutils",
|
||||||
|
"../test:frame_generator_capturer",
|
||||||
"../test:platform_video_capturer",
|
"../test:platform_video_capturer",
|
||||||
"../test:rtp_test_utils",
|
"../test:rtp_test_utils",
|
||||||
"../test:test_common",
|
"../test:test_common",
|
||||||
@ -572,6 +594,7 @@ if (rtc_include_tests) {
|
|||||||
"../test:video_frame_writer",
|
"../test:video_frame_writer",
|
||||||
"../test:video_test_common",
|
"../test:video_test_common",
|
||||||
"../test:video_test_constants",
|
"../test:video_test_constants",
|
||||||
|
"config:encoder_config",
|
||||||
"config:streams_config",
|
"config:streams_config",
|
||||||
"//third_party/abseil-cpp/absl/algorithm:container",
|
"//third_party/abseil-cpp/absl/algorithm:container",
|
||||||
"//third_party/abseil-cpp/absl/flags:flag",
|
"//third_party/abseil-cpp/absl/flags:flag",
|
||||||
|
|||||||
@ -11,13 +11,57 @@
|
|||||||
|
|
||||||
#include <stdio.h>
|
#include <stdio.h>
|
||||||
|
|
||||||
|
#include <cstdint>
|
||||||
|
#include <optional>
|
||||||
|
#include <tuple>
|
||||||
|
#include <utility>
|
||||||
|
|
||||||
|
#include "absl/flags/flag.h"
|
||||||
|
#include "api/call/transport.h"
|
||||||
|
#include "api/environment/environment.h"
|
||||||
|
#include "api/field_trials_view.h"
|
||||||
|
#include "api/make_ref_counted.h"
|
||||||
|
#include "api/rtc_event_log/rtc_event_log.h"
|
||||||
|
#include "api/rtp_parameters.h"
|
||||||
|
#include "api/scoped_refptr.h"
|
||||||
|
#include "api/test/frame_generator_interface.h"
|
||||||
|
#include "api/test/simulated_network.h"
|
||||||
|
#include "api/units/time_delta.h"
|
||||||
|
#include "api/video/encoded_image.h"
|
||||||
|
#include "api/video/video_bitrate_allocation.h"
|
||||||
|
#include "api/video/video_codec_constants.h"
|
||||||
|
#include "api/video/video_codec_type.h"
|
||||||
|
#include "api/video/video_frame_type.h"
|
||||||
|
#include "api/video/video_source_interface.h"
|
||||||
|
#include "api/video_codecs/sdp_video_format.h"
|
||||||
|
#include "api/video_codecs/spatial_layer.h"
|
||||||
|
#include "api/video_codecs/video_codec.h"
|
||||||
|
#include "api/video_codecs/video_decoder.h"
|
||||||
|
#include "call/audio_receive_stream.h"
|
||||||
|
#include "call/audio_send_stream.h"
|
||||||
|
#include "call/audio_state.h"
|
||||||
|
#include "call/call_config.h"
|
||||||
|
#include "call/video_receive_stream.h"
|
||||||
|
#include "call/video_send_stream.h"
|
||||||
|
#include "media/engine/internal_decoder_factory.h"
|
||||||
|
#include "modules/audio_device/include/test_audio_device.h"
|
||||||
|
#include "modules/rtp_rtcp/include/rtp_rtcp_defines.h"
|
||||||
|
#include "rtc_base/checks.h"
|
||||||
|
#include "rtc_base/logging.h"
|
||||||
|
#include "rtc_base/numerics/safe_conversions.h"
|
||||||
|
#include "rtc_base/system/file_wrapper.h"
|
||||||
|
#include "test/direct_transport.h"
|
||||||
|
#include "test/frame_generator_capturer.h"
|
||||||
|
#include "test/gtest.h"
|
||||||
|
#include "test/layer_filtering_transport.h"
|
||||||
|
#include "video/config/video_encoder_config.h"
|
||||||
|
#include "video/video_analyzer.h"
|
||||||
|
|
||||||
#if defined(WEBRTC_WIN)
|
#if defined(WEBRTC_WIN)
|
||||||
#include <conio.h>
|
#include <conio.h>
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#include <algorithm>
|
#include <algorithm>
|
||||||
#include <deque>
|
|
||||||
#include <map>
|
|
||||||
#include <memory>
|
#include <memory>
|
||||||
#include <string>
|
#include <string>
|
||||||
#include <vector>
|
#include <vector>
|
||||||
@ -39,9 +83,6 @@
|
|||||||
#include "media/engine/simulcast_encoder_adapter.h"
|
#include "media/engine/simulcast_encoder_adapter.h"
|
||||||
#include "media/engine/webrtc_video_engine.h"
|
#include "media/engine/webrtc_video_engine.h"
|
||||||
#include "modules/audio_mixer/audio_mixer_impl.h"
|
#include "modules/audio_mixer/audio_mixer_impl.h"
|
||||||
#include "modules/video_coding/codecs/h264/include/h264.h"
|
|
||||||
#include "modules/video_coding/codecs/vp8/include/vp8.h"
|
|
||||||
#include "modules/video_coding/codecs/vp9/include/vp9.h"
|
|
||||||
#include "modules/video_coding/utility/ivf_file_writer.h"
|
#include "modules/video_coding/utility/ivf_file_writer.h"
|
||||||
#include "rtc_base/strings/string_builder.h"
|
#include "rtc_base/strings/string_builder.h"
|
||||||
#include "rtc_base/task_queue_for_test.h"
|
#include "rtc_base/task_queue_for_test.h"
|
||||||
@ -1410,7 +1451,6 @@ void VideoQualityTest::SetupAudio(Transport* transport) {
|
|||||||
kTransportSequenceNumberExtensionId));
|
kTransportSequenceNumberExtensionId));
|
||||||
audio_send_config.min_bitrate_bps = kOpusMinBitrateBps;
|
audio_send_config.min_bitrate_bps = kOpusMinBitrateBps;
|
||||||
audio_send_config.max_bitrate_bps = kOpusBitrateFbBps;
|
audio_send_config.max_bitrate_bps = kOpusBitrateFbBps;
|
||||||
audio_send_config.send_codec_spec->transport_cc_enabled = true;
|
|
||||||
// Only allow ANA when send-side BWE is enabled.
|
// Only allow ANA when send-side BWE is enabled.
|
||||||
audio_send_config.audio_network_adaptor_config = params_.audio.ana_config;
|
audio_send_config.audio_network_adaptor_config = params_.audio.ana_config;
|
||||||
}
|
}
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user