From f472699bbd955062dcf1413316d0810eb3e2dea9 Mon Sep 17 00:00:00 2001 From: perkj Date: Mon, 22 May 2017 10:12:26 -0700 Subject: [PATCH] Replace AudioSendStream::Config with rtclog::StreamConfig. BUG=webrtc:7538 Review-Url: https://codereview.webrtc.org/2856063003 Cr-Commit-Position: refs/heads/master@{#18224} --- webrtc/call/call.cc | 14 +++++++++++- .../rtc_event_log/mock/mock_rtc_event_log.h | 2 +- webrtc/logging/rtc_event_log/rtc_event_log.cc | 8 +++---- webrtc/logging/rtc_event_log/rtc_event_log.h | 8 +++---- .../rtc_event_log/rtc_event_log2text.cc | 6 ++--- .../rtc_event_log/rtc_event_log_parser.cc | 9 ++++---- .../rtc_event_log/rtc_event_log_parser.h | 4 ++-- .../rtc_event_log/rtc_event_log_unittest.cc | 10 ++++----- .../rtc_event_log_unittest_helper.cc | 22 ++++++------------- .../rtc_event_log_unittest_helper.h | 7 +++--- webrtc/tools/event_log_visualizer/analyzer.cc | 6 ++--- webrtc/voice_engine/channel.cc | 2 +- 12 files changed, 49 insertions(+), 49 deletions(-) diff --git a/webrtc/call/call.cc b/webrtc/call/call.cc index 0246bba6fb..87e41b0b41 100644 --- a/webrtc/call/call.cc +++ b/webrtc/call/call.cc @@ -133,6 +133,18 @@ rtclog::StreamConfig CreateRtcLogStreamConfig( return rtclog_config; } +rtclog::StreamConfig CreateRtcLogStreamConfig( + const AudioSendStream::Config& config) { + rtclog::StreamConfig rtclog_config; + rtclog_config.local_ssrc = config.rtp.ssrc; + rtclog_config.rtp_extensions = config.rtp.extensions; + if (config.send_codec_spec) { + rtclog_config.codecs.emplace_back(config.send_codec_spec->format.name, + config.send_codec_spec->payload_type, 0); + } + return rtclog_config; +} + } // namespace namespace internal { @@ -549,7 +561,7 @@ webrtc::AudioSendStream* Call::CreateAudioSendStream( const webrtc::AudioSendStream::Config& config) { TRACE_EVENT0("webrtc", "Call::CreateAudioSendStream"); RTC_DCHECK(configuration_thread_checker_.CalledOnValidThread()); - event_log_->LogAudioSendStreamConfig(config); + event_log_->LogAudioSendStreamConfig(CreateRtcLogStreamConfig(config)); AudioSendStream* send_stream = new AudioSendStream( config, config_.audio_state, &worker_queue_, transport_send_.get(), bitrate_allocator_.get(), event_log_, call_stats_->rtcp_rtt_stats()); diff --git a/webrtc/logging/rtc_event_log/mock/mock_rtc_event_log.h b/webrtc/logging/rtc_event_log/mock/mock_rtc_event_log.h index 4791c82731..cedc309509 100644 --- a/webrtc/logging/rtc_event_log/mock/mock_rtc_event_log.h +++ b/webrtc/logging/rtc_event_log/mock/mock_rtc_event_log.h @@ -39,7 +39,7 @@ class MockRtcEventLog : public RtcEventLog { void(const rtclog::StreamConfig& config)); MOCK_METHOD1(LogAudioSendStreamConfig, - void(const webrtc::AudioSendStream::Config& config)); + void(const rtclog::StreamConfig& config)); MOCK_METHOD4(LogRtpHeader, void(PacketDirection direction, diff --git a/webrtc/logging/rtc_event_log/rtc_event_log.cc b/webrtc/logging/rtc_event_log/rtc_event_log.cc index edaeabf85c..7469cf7c85 100644 --- a/webrtc/logging/rtc_event_log/rtc_event_log.cc +++ b/webrtc/logging/rtc_event_log/rtc_event_log.cc @@ -65,7 +65,7 @@ class RtcEventLogImpl final : public RtcEventLog { void LogVideoReceiveStreamConfig(const rtclog::StreamConfig& config) override; void LogVideoSendStreamConfig(const rtclog::StreamConfig& config) override; void LogAudioReceiveStreamConfig(const rtclog::StreamConfig& config) override; - void LogAudioSendStreamConfig(const AudioSendStream::Config& config) override; + void LogAudioSendStreamConfig(const rtclog::StreamConfig& config) override; void LogRtpHeader(PacketDirection direction, MediaType media_type, const uint8_t* header, @@ -370,16 +370,16 @@ void RtcEventLogImpl::LogAudioReceiveStreamConfig( } void RtcEventLogImpl::LogAudioSendStreamConfig( - const AudioSendStream::Config& config) { + const rtclog::StreamConfig& config) { std::unique_ptr event(new rtclog::Event()); event->set_timestamp_us(rtc::TimeMicros()); event->set_type(rtclog::Event::AUDIO_SENDER_CONFIG_EVENT); rtclog::AudioSendConfig* sender_config = event->mutable_audio_sender_config(); - sender_config->set_ssrc(config.rtp.ssrc); + sender_config->set_ssrc(config.local_ssrc); - for (const auto& e : config.rtp.extensions) { + for (const auto& e : config.rtp_extensions) { rtclog::RtpHeaderExtension* extension = sender_config->add_header_extensions(); extension->set_name(e.uri); diff --git a/webrtc/logging/rtc_event_log/rtc_event_log.h b/webrtc/logging/rtc_event_log/rtc_event_log.h index 8e8bd827c7..3f96556d8a 100644 --- a/webrtc/logging/rtc_event_log/rtc_event_log.h +++ b/webrtc/logging/rtc_event_log/rtc_event_log.h @@ -123,9 +123,8 @@ class RtcEventLog { virtual void LogAudioReceiveStreamConfig( const rtclog::StreamConfig& config) = 0; - // Logs configuration information for webrtc::AudioSendStream. - virtual void LogAudioSendStreamConfig( - const webrtc::AudioSendStream::Config& config) = 0; + // Logs configuration information for an audio send stream. + virtual void LogAudioSendStreamConfig(const rtclog::StreamConfig& config) = 0; // Logs the header of an incoming or outgoing RTP packet. packet_length // is the total length of the packet, including both header and payload. @@ -203,8 +202,7 @@ class RtcEventLogNullImpl final : public RtcEventLog { void LogVideoSendStreamConfig(const rtclog::StreamConfig& config) override {} void LogAudioReceiveStreamConfig( const rtclog::StreamConfig& config) override {} - void LogAudioSendStreamConfig( - const AudioSendStream::Config& config) override {} + void LogAudioSendStreamConfig(const rtclog::StreamConfig& config) override {} void LogRtpHeader(PacketDirection direction, MediaType media_type, const uint8_t* header, diff --git a/webrtc/logging/rtc_event_log/rtc_event_log2text.cc b/webrtc/logging/rtc_event_log/rtc_event_log2text.cc index da31615698..fab04c9c57 100644 --- a/webrtc/logging/rtc_event_log/rtc_event_log2text.cc +++ b/webrtc/logging/rtc_event_log/rtc_event_log2text.cc @@ -415,13 +415,13 @@ int main(int argc, char* argv[]) { } if (parsed_stream.GetEventType(i) == webrtc::ParsedRtcEventLog::AUDIO_SENDER_CONFIG_EVENT) { - webrtc::AudioSendStream::Config config(nullptr); + webrtc::rtclog::StreamConfig config; parsed_stream.GetAudioSendConfig(i, &config); - global_streams.emplace_back(config.rtp.ssrc, webrtc::MediaType::AUDIO, + global_streams.emplace_back(config.local_ssrc, webrtc::MediaType::AUDIO, webrtc::kOutgoingPacket); if (!FLAGS_noconfig && !FLAGS_noaudio && !FLAGS_nooutgoing) { std::cout << parsed_stream.GetTimestamp(i) << "\tAUDIO_SEND_CONFIG" - << "\tssrc=" << config.rtp.ssrc << std::endl; + << "\tssrc=" << config.local_ssrc << std::endl; } } if (!FLAGS_nortp && diff --git a/webrtc/logging/rtc_event_log/rtc_event_log_parser.cc b/webrtc/logging/rtc_event_log/rtc_event_log_parser.cc index 88f26a68d4..6194d3a56d 100644 --- a/webrtc/logging/rtc_event_log/rtc_event_log_parser.cc +++ b/webrtc/logging/rtc_event_log/rtc_event_log_parser.cc @@ -436,9 +436,8 @@ void ParsedRtcEventLog::GetAudioReceiveConfig( receiver_config.header_extensions()); } -void ParsedRtcEventLog::GetAudioSendConfig( - size_t index, - AudioSendStream::Config* config) const { +void ParsedRtcEventLog::GetAudioSendConfig(size_t index, + rtclog::StreamConfig* config) const { RTC_CHECK_LT(index, GetNumberOfEvents()); const rtclog::Event& event = events_[index]; RTC_CHECK(config != nullptr); @@ -448,9 +447,9 @@ void ParsedRtcEventLog::GetAudioSendConfig( const rtclog::AudioSendConfig& sender_config = event.audio_sender_config(); // Get SSRCs. RTC_CHECK(sender_config.has_ssrc()); - config->rtp.ssrc = sender_config.ssrc(); + config->local_ssrc = sender_config.ssrc(); // Get header extensions. - GetHeaderExtensions(&config->rtp.extensions, + GetHeaderExtensions(&config->rtp_extensions, sender_config.header_extensions()); } diff --git a/webrtc/logging/rtc_event_log/rtc_event_log_parser.h b/webrtc/logging/rtc_event_log/rtc_event_log_parser.h index d5aee96766..966f00dfe0 100644 --- a/webrtc/logging/rtc_event_log/rtc_event_log_parser.h +++ b/webrtc/logging/rtc_event_log/rtc_event_log_parser.h @@ -126,9 +126,9 @@ class ParsedRtcEventLog { // Only the fields that are stored in the protobuf will be written. void GetAudioReceiveConfig(size_t index, rtclog::StreamConfig* config) const; - // Reads a config event to a (non-NULL) AudioSendStream::Config struct. + // Reads a config event to a (non-NULL) StreamConfig struct. // Only the fields that are stored in the protobuf will be written. - void GetAudioSendConfig(size_t index, AudioSendStream::Config* config) const; + void GetAudioSendConfig(size_t index, rtclog::StreamConfig* config) const; // Reads the SSRC from the audio playout event at |index|. The SSRC is stored // in the output parameter ssrc. The output parameter can be set to nullptr diff --git a/webrtc/logging/rtc_event_log/rtc_event_log_unittest.cc b/webrtc/logging/rtc_event_log/rtc_event_log_unittest.cc index fea07b81ca..e655b4b513 100644 --- a/webrtc/logging/rtc_event_log/rtc_event_log_unittest.cc +++ b/webrtc/logging/rtc_event_log/rtc_event_log_unittest.cc @@ -206,14 +206,14 @@ void GenerateAudioReceiveConfig(uint32_t extensions_bitvector, } void GenerateAudioSendConfig(uint32_t extensions_bitvector, - AudioSendStream::Config* config, + rtclog::StreamConfig* config, Random* prng) { // Add SSRC to the stream. - config->rtp.ssrc = prng->Rand(); + config->local_ssrc = prng->Rand(); // Add header extensions. for (unsigned i = 0; i < kNumExtensions; i++) { if (extensions_bitvector & (1u << i)) { - config->rtp.extensions.push_back( + config->rtp_extensions.push_back( RtpExtension(kExtensionNames[i], prng->Rand())); } } @@ -788,7 +788,7 @@ class AudioReceiveConfigReadWriteTest : public ConfigReadWriteTest { class AudioSendConfigReadWriteTest : public ConfigReadWriteTest { public: - AudioSendConfigReadWriteTest() : config(nullptr) {} + AudioSendConfigReadWriteTest() {} void GenerateConfig(uint32_t extensions_bitvector) override { GenerateAudioSendConfig(extensions_bitvector, &config, &prng); } @@ -800,7 +800,7 @@ class AudioSendConfigReadWriteTest : public ConfigReadWriteTest { RtcEventLogTestHelper::VerifyAudioSendStreamConfig(parsed_log, index, config); } - AudioSendStream::Config config; + rtclog::StreamConfig config; }; class VideoReceiveConfigReadWriteTest : public ConfigReadWriteTest { diff --git a/webrtc/logging/rtc_event_log/rtc_event_log_unittest_helper.cc b/webrtc/logging/rtc_event_log/rtc_event_log_unittest_helper.cc index 152f10f4d8..8b4ea6bd0e 100644 --- a/webrtc/logging/rtc_event_log/rtc_event_log_unittest_helper.cc +++ b/webrtc/logging/rtc_event_log/rtc_event_log_unittest_helper.cc @@ -339,37 +339,29 @@ void RtcEventLogTestHelper::VerifyAudioReceiveStreamConfig( void RtcEventLogTestHelper::VerifyAudioSendStreamConfig( const ParsedRtcEventLog& parsed_log, size_t index, - const AudioSendStream::Config& config) { + const rtclog::StreamConfig& config) { const rtclog::Event& event = parsed_log.events_[index]; ASSERT_TRUE(IsValidBasicEvent(event)); ASSERT_EQ(rtclog::Event::AUDIO_SENDER_CONFIG_EVENT, event.type()); const rtclog::AudioSendConfig& sender_config = event.audio_sender_config(); // Check SSRCs. - EXPECT_EQ(config.rtp.ssrc, sender_config.ssrc()); + EXPECT_EQ(config.local_ssrc, sender_config.ssrc()); // Check header extensions. - ASSERT_EQ(static_cast(config.rtp.extensions.size()), + ASSERT_EQ(static_cast(config.rtp_extensions.size()), sender_config.header_extensions_size()); for (int i = 0; i < sender_config.header_extensions_size(); i++) { ASSERT_TRUE(sender_config.header_extensions(i).has_name()); ASSERT_TRUE(sender_config.header_extensions(i).has_id()); const std::string& name = sender_config.header_extensions(i).name(); int id = sender_config.header_extensions(i).id(); - EXPECT_EQ(config.rtp.extensions[i].id, id); - EXPECT_EQ(config.rtp.extensions[i].uri, name); + EXPECT_EQ(config.rtp_extensions[i].id, id); + EXPECT_EQ(config.rtp_extensions[i].uri, name); } // Check consistency of the parser. - AudioSendStream::Config parsed_config(nullptr); + rtclog::StreamConfig parsed_config; parsed_log.GetAudioSendConfig(index, &parsed_config); - // Check SSRCs - EXPECT_EQ(config.rtp.ssrc, parsed_config.rtp.ssrc); - // Check header extensions. - EXPECT_EQ(config.rtp.extensions.size(), parsed_config.rtp.extensions.size()); - for (size_t i = 0; i < parsed_config.rtp.extensions.size(); i++) { - EXPECT_EQ(config.rtp.extensions[i].uri, - parsed_config.rtp.extensions[i].uri); - EXPECT_EQ(config.rtp.extensions[i].id, parsed_config.rtp.extensions[i].id); - } + VerifyStreamConfigsAreEqual(config, parsed_config); } void RtcEventLogTestHelper::VerifyRtpEvent(const ParsedRtcEventLog& parsed_log, diff --git a/webrtc/logging/rtc_event_log/rtc_event_log_unittest_helper.h b/webrtc/logging/rtc_event_log/rtc_event_log_unittest_helper.h index a23f50c3fa..c0fc493117 100644 --- a/webrtc/logging/rtc_event_log/rtc_event_log_unittest_helper.h +++ b/webrtc/logging/rtc_event_log/rtc_event_log_unittest_helper.h @@ -29,10 +29,9 @@ class RtcEventLogTestHelper { const ParsedRtcEventLog& parsed_log, size_t index, const rtclog::StreamConfig& config); - static void VerifyAudioSendStreamConfig( - const ParsedRtcEventLog& parsed_log, - size_t index, - const AudioSendStream::Config& config); + static void VerifyAudioSendStreamConfig(const ParsedRtcEventLog& parsed_log, + size_t index, + const rtclog::StreamConfig& config); static void VerifyRtpEvent(const ParsedRtcEventLog& parsed_log, size_t index, PacketDirection direction, diff --git a/webrtc/tools/event_log_visualizer/analyzer.cc b/webrtc/tools/event_log_visualizer/analyzer.cc index 71f89092f9..a34d855fe2 100644 --- a/webrtc/tools/event_log_visualizer/analyzer.cc +++ b/webrtc/tools/event_log_visualizer/analyzer.cc @@ -365,10 +365,10 @@ EventLogAnalyzer::EventLogAnalyzer(const ParsedRtcEventLog& log) break; } case ParsedRtcEventLog::AUDIO_SENDER_CONFIG_EVENT: { - AudioSendStream::Config config(nullptr); + rtclog::StreamConfig config; parsed_log_.GetAudioSendConfig(i, &config); - StreamId stream(config.rtp.ssrc, kOutgoingPacket); - extension_maps[stream] = RtpHeaderExtensionMap(config.rtp.extensions); + StreamId stream(config.local_ssrc, kOutgoingPacket); + extension_maps[stream] = RtpHeaderExtensionMap(config.rtp_extensions); audio_ssrcs_.insert(stream); break; } diff --git a/webrtc/voice_engine/channel.cc b/webrtc/voice_engine/channel.cc index dddfe6d3b0..bf7d30ca43 100644 --- a/webrtc/voice_engine/channel.cc +++ b/webrtc/voice_engine/channel.cc @@ -93,7 +93,7 @@ class RtcEventLogProxy final : public webrtc::RtcEventLog { } void LogAudioSendStreamConfig( - const webrtc::AudioSendStream::Config& config) override { + const webrtc::rtclog::StreamConfig& config) override { rtc::CritScope lock(&crit_); if (event_log_) { event_log_->LogAudioSendStreamConfig(config);