Break up rtc_event_log_api to solve circular dependencies.
The original rtc_event_log_api is refactored to a pure API target plus multiple targets coupled with WebRTC implementations. Bug: None Change-Id: Iab9eee3f7bf4228c52d94a5f26fc39bb99b5033f Reviewed-on: https://webrtc-review.googlesource.com/43247 Reviewed-by: Taylor Brandstetter <deadbeef@webrtc.org> Reviewed-by: Björn Terelius <terelius@webrtc.org> Reviewed-by: Stefan Holmer <stefan@webrtc.org> Commit-Queue: Qingsi Wang <qingsi@google.com> Cr-Commit-Position: refs/heads/master@{#21811}
This commit is contained in:
@ -58,6 +58,7 @@ rtc_static_library("audio") {
|
||||
"../call:call_interfaces",
|
||||
"../call:rtp_interfaces",
|
||||
"../common_audio",
|
||||
"../logging:rtc_event_audio",
|
||||
"../logging:rtc_event_log_api",
|
||||
"../modules:module_api",
|
||||
"../modules/audio_coding",
|
||||
|
@ -142,8 +142,11 @@ rtc_static_library("call") {
|
||||
"../api:optional",
|
||||
"../api:transport_api",
|
||||
"../audio",
|
||||
"../logging:rtc_event_audio",
|
||||
"../logging:rtc_event_log_api",
|
||||
"../logging:rtc_event_log_impl",
|
||||
"../logging:rtc_event_rtp_rtcp",
|
||||
"../logging:rtc_event_video",
|
||||
"../logging:rtc_stream_config",
|
||||
"../modules/bitrate_controller",
|
||||
"../modules/congestion_controller",
|
||||
"../modules/pacing",
|
||||
@ -214,6 +217,7 @@ if (rtc_include_tests) {
|
||||
"../api/audio_codecs:builtin_audio_decoder_factory",
|
||||
"../audio:audio",
|
||||
"../logging:rtc_event_log_api",
|
||||
"../logging:rtc_event_log_impl_base",
|
||||
"../modules/audio_device:mock_audio_device",
|
||||
"../modules/audio_mixer",
|
||||
"../modules/audio_mixer:audio_mixer_impl",
|
||||
|
175
logging/BUILD.gn
175
logging/BUILD.gn
@ -17,8 +17,16 @@ if (is_android) {
|
||||
|
||||
group("logging") {
|
||||
deps = [
|
||||
":rtc_event_log_impl",
|
||||
":rtc_event_audio",
|
||||
":rtc_event_bwe",
|
||||
":rtc_event_log_impl_base",
|
||||
":rtc_event_log_impl_encoder",
|
||||
":rtc_event_log_impl_output",
|
||||
":rtc_event_pacing",
|
||||
":rtc_event_rtp_rtcp",
|
||||
":rtc_event_video",
|
||||
]
|
||||
|
||||
if (rtc_enable_protobuf) {
|
||||
deps += [ ":rtc_event_log_parser" ]
|
||||
}
|
||||
@ -26,9 +34,45 @@ group("logging") {
|
||||
|
||||
rtc_source_set("rtc_event_log_api") {
|
||||
sources = [
|
||||
"rtc_event_log/encoder/rtc_event_log_encoder.h",
|
||||
"rtc_event_log/events/rtc_event.h",
|
||||
"rtc_event_log/rtc_event_log.h",
|
||||
"rtc_event_log/rtc_event_log_factory_interface.h",
|
||||
]
|
||||
|
||||
deps = [
|
||||
"../api:libjingle_logging_api",
|
||||
"../rtc_base:rtc_base_approved",
|
||||
]
|
||||
}
|
||||
|
||||
rtc_source_set("rtc_stream_config") {
|
||||
sources = [
|
||||
"rtc_event_log/rtc_stream_config.cc",
|
||||
"rtc_event_log/rtc_stream_config.h",
|
||||
]
|
||||
|
||||
deps = [
|
||||
":rtc_event_log_api",
|
||||
"..:webrtc_common",
|
||||
"../api:libjingle_peerconnection_api",
|
||||
]
|
||||
}
|
||||
|
||||
rtc_source_set("rtc_event_pacing") {
|
||||
sources = [
|
||||
"rtc_event_log/events/rtc_event_alr_state.cc",
|
||||
"rtc_event_log/events/rtc_event_alr_state.h",
|
||||
]
|
||||
|
||||
deps = [
|
||||
":rtc_event_log_api",
|
||||
"../:typedefs",
|
||||
]
|
||||
}
|
||||
|
||||
rtc_source_set("rtc_event_audio") {
|
||||
sources = [
|
||||
"rtc_event_log/events/rtc_event_audio_network_adaptation.cc",
|
||||
"rtc_event_log/events/rtc_event_audio_network_adaptation.h",
|
||||
"rtc_event_log/events/rtc_event_audio_playout.cc",
|
||||
@ -37,6 +81,17 @@ rtc_source_set("rtc_event_log_api") {
|
||||
"rtc_event_log/events/rtc_event_audio_receive_stream_config.h",
|
||||
"rtc_event_log/events/rtc_event_audio_send_stream_config.cc",
|
||||
"rtc_event_log/events/rtc_event_audio_send_stream_config.h",
|
||||
]
|
||||
|
||||
deps = [
|
||||
":rtc_event_log_api",
|
||||
":rtc_stream_config",
|
||||
"../modules/audio_coding:audio_network_adaptor_config",
|
||||
]
|
||||
}
|
||||
|
||||
rtc_source_set("rtc_event_bwe") {
|
||||
sources = [
|
||||
"rtc_event_log/events/rtc_event_bwe_update_delay_based.cc",
|
||||
"rtc_event_log/events/rtc_event_bwe_update_delay_based.h",
|
||||
"rtc_event_log/events/rtc_event_bwe_update_loss_based.cc",
|
||||
@ -47,6 +102,16 @@ rtc_source_set("rtc_event_log_api") {
|
||||
"rtc_event_log/events/rtc_event_probe_result_failure.h",
|
||||
"rtc_event_log/events/rtc_event_probe_result_success.cc",
|
||||
"rtc_event_log/events/rtc_event_probe_result_success.h",
|
||||
]
|
||||
|
||||
deps = [
|
||||
":rtc_event_log_api",
|
||||
"../modules/remote_bitrate_estimator:remote_bitrate_estimator",
|
||||
]
|
||||
}
|
||||
|
||||
rtc_source_set("rtc_event_rtp_rtcp") {
|
||||
sources = [
|
||||
"rtc_event_log/events/rtc_event_rtcp_packet_incoming.cc",
|
||||
"rtc_event_log/events/rtc_event_rtcp_packet_incoming.h",
|
||||
"rtc_event_log/events/rtc_event_rtcp_packet_outgoing.cc",
|
||||
@ -55,63 +120,53 @@ rtc_source_set("rtc_event_log_api") {
|
||||
"rtc_event_log/events/rtc_event_rtp_packet_incoming.h",
|
||||
"rtc_event_log/events/rtc_event_rtp_packet_outgoing.cc",
|
||||
"rtc_event_log/events/rtc_event_rtp_packet_outgoing.h",
|
||||
]
|
||||
|
||||
deps = [
|
||||
":rtc_event_log_api",
|
||||
"../api:array_view",
|
||||
"../modules/rtp_rtcp:rtp_rtcp_format",
|
||||
"../rtc_base:rtc_base_approved",
|
||||
]
|
||||
}
|
||||
|
||||
rtc_source_set("rtc_event_video") {
|
||||
sources = [
|
||||
"rtc_event_log/events/rtc_event_video_receive_stream_config.cc",
|
||||
"rtc_event_log/events/rtc_event_video_receive_stream_config.h",
|
||||
"rtc_event_log/events/rtc_event_video_send_stream_config.cc",
|
||||
"rtc_event_log/events/rtc_event_video_send_stream_config.h",
|
||||
"rtc_event_log/output/rtc_event_log_output_file.cc",
|
||||
"rtc_event_log/output/rtc_event_log_output_file.h",
|
||||
"rtc_event_log/rtc_event_log.h",
|
||||
"rtc_event_log/rtc_event_log_factory_interface.h",
|
||||
"rtc_event_log/rtc_stream_config.cc",
|
||||
"rtc_event_log/rtc_stream_config.h",
|
||||
]
|
||||
|
||||
deps = [
|
||||
"..:webrtc_common",
|
||||
"../:typedefs",
|
||||
"../api:array_view",
|
||||
"../api:libjingle_logging_api",
|
||||
"../api:libjingle_peerconnection_api",
|
||||
"../call:video_stream_api",
|
||||
"../modules/audio_coding:audio_network_adaptor_config",
|
||||
"../modules/remote_bitrate_estimator:remote_bitrate_estimator",
|
||||
"../modules/rtp_rtcp:rtp_rtcp_format",
|
||||
"../rtc_base:checks",
|
||||
"../rtc_base:rtc_base_approved",
|
||||
":rtc_event_log_api",
|
||||
":rtc_stream_config",
|
||||
]
|
||||
|
||||
# TODO(eladalon): Remove this.
|
||||
if (!build_with_chromium && is_clang) {
|
||||
# Suppress warnings from the Chromium Clang plugin (bugs.webrtc.org/163).
|
||||
suppressed_configs += [ "//build/config/clang:find_bad_constructs" ]
|
||||
}
|
||||
}
|
||||
|
||||
rtc_static_library("rtc_event_log_impl") {
|
||||
rtc_static_library("rtc_event_log_impl_encoder") {
|
||||
visibility = [ "*" ]
|
||||
sources = [
|
||||
"rtc_event_log/encoder/rtc_event_log_encoder.h",
|
||||
"rtc_event_log/encoder/rtc_event_log_encoder_legacy.cc",
|
||||
"rtc_event_log/encoder/rtc_event_log_encoder_legacy.h",
|
||||
"rtc_event_log/rtc_event_log.cc",
|
||||
"rtc_event_log/rtc_event_log_factory.cc",
|
||||
"rtc_event_log/rtc_event_log_factory.h",
|
||||
]
|
||||
|
||||
defines = []
|
||||
|
||||
deps = [
|
||||
":rtc_event_audio",
|
||||
":rtc_event_bwe",
|
||||
":rtc_event_log_api",
|
||||
"..:webrtc_common",
|
||||
":rtc_event_log_impl_output",
|
||||
":rtc_event_pacing",
|
||||
":rtc_event_rtp_rtcp",
|
||||
":rtc_event_video",
|
||||
":rtc_stream_config",
|
||||
"../modules/audio_coding:audio_network_adaptor",
|
||||
"../modules/remote_bitrate_estimator:remote_bitrate_estimator",
|
||||
"../modules/rtp_rtcp:rtp_rtcp_format",
|
||||
"../rtc_base:checks",
|
||||
"../rtc_base:protobuf_utils",
|
||||
"../rtc_base:rtc_base_approved",
|
||||
"../rtc_base:rtc_task_queue",
|
||||
"../rtc_base:sequenced_task_checker",
|
||||
]
|
||||
|
||||
if (rtc_enable_protobuf) {
|
||||
@ -126,6 +181,46 @@ rtc_static_library("rtc_event_log_impl") {
|
||||
}
|
||||
}
|
||||
|
||||
rtc_source_set("rtc_event_log_impl_output") {
|
||||
sources = [
|
||||
"rtc_event_log/output/rtc_event_log_output_file.cc",
|
||||
"rtc_event_log/output/rtc_event_log_output_file.h",
|
||||
]
|
||||
|
||||
deps = [
|
||||
":rtc_event_log_api",
|
||||
"../api:libjingle_logging_api",
|
||||
"../rtc_base:checks",
|
||||
"../rtc_base:rtc_base_approved",
|
||||
]
|
||||
}
|
||||
|
||||
rtc_static_library("rtc_event_log_impl_base") {
|
||||
visibility = [ "*" ]
|
||||
sources = [
|
||||
"rtc_event_log/rtc_event_log_factory.cc",
|
||||
"rtc_event_log/rtc_event_log_factory.h",
|
||||
"rtc_event_log/rtc_event_log_impl.cc",
|
||||
]
|
||||
|
||||
defines = []
|
||||
|
||||
deps = [
|
||||
":rtc_event_log_api",
|
||||
":rtc_event_log_impl_encoder",
|
||||
":rtc_event_log_impl_output",
|
||||
"../rtc_base:checks",
|
||||
"../rtc_base:rtc_base_approved",
|
||||
"../rtc_base:rtc_task_queue_api",
|
||||
"../rtc_base:sequenced_task_checker",
|
||||
]
|
||||
|
||||
if (rtc_enable_protobuf) {
|
||||
defines += [ "ENABLE_RTC_EVENT_LOG" ]
|
||||
deps += [ ":rtc_event_log_proto" ]
|
||||
}
|
||||
}
|
||||
|
||||
if (rtc_enable_protobuf) {
|
||||
proto_library("rtc_event_log_proto") {
|
||||
sources = [
|
||||
@ -148,9 +243,11 @@ if (rtc_enable_protobuf) {
|
||||
]
|
||||
|
||||
deps = [
|
||||
":rtc_event_bwe",
|
||||
":rtc_event_log2_proto",
|
||||
":rtc_event_log_api",
|
||||
":rtc_event_log_proto",
|
||||
":rtc_stream_config",
|
||||
"..:webrtc_common",
|
||||
"../call:video_stream_api",
|
||||
"../modules/audio_coding:audio_network_adaptor",
|
||||
@ -184,10 +281,17 @@ if (rtc_enable_protobuf) {
|
||||
"rtc_event_log/rtc_event_log_unittest_helper.h",
|
||||
]
|
||||
deps = [
|
||||
":rtc_event_audio",
|
||||
":rtc_event_bwe",
|
||||
":rtc_event_log_api",
|
||||
":rtc_event_log_impl",
|
||||
":rtc_event_log_impl_base",
|
||||
":rtc_event_log_impl_encoder",
|
||||
":rtc_event_log_impl_output",
|
||||
":rtc_event_log_parser",
|
||||
":rtc_event_log_proto",
|
||||
":rtc_event_rtp_rtcp",
|
||||
":rtc_event_video",
|
||||
":rtc_stream_config",
|
||||
"../api:libjingle_peerconnection_api",
|
||||
"../call",
|
||||
"../call:call_interfaces",
|
||||
@ -212,7 +316,6 @@ if (rtc_enable_protobuf) {
|
||||
]
|
||||
deps = [
|
||||
":rtc_event_log_api",
|
||||
":rtc_event_log_impl",
|
||||
":rtc_event_log_parser",
|
||||
"../modules/rtp_rtcp",
|
||||
"../modules/rtp_rtcp:rtp_rtcp_format",
|
||||
@ -238,7 +341,6 @@ if (rtc_enable_protobuf) {
|
||||
]
|
||||
deps = [
|
||||
":rtc_event_log_api",
|
||||
":rtc_event_log_impl",
|
||||
":rtc_event_log_parser",
|
||||
"../:webrtc_common",
|
||||
"../call:video_stream_api",
|
||||
@ -266,7 +368,6 @@ if (rtc_enable_protobuf) {
|
||||
]
|
||||
deps = [
|
||||
":rtc_event_log_api",
|
||||
":rtc_event_log_impl",
|
||||
":rtc_event_log_proto",
|
||||
"../rtc_base:checks",
|
||||
"../rtc_base:rtc_base_approved",
|
||||
|
@ -57,9 +57,7 @@ class RtcEventLog {
|
||||
class RtcEventLogNullImpl : public RtcEventLog {
|
||||
public:
|
||||
bool StartLogging(std::unique_ptr<RtcEventLogOutput> output,
|
||||
int64_t output_period_ms) override {
|
||||
return false;
|
||||
}
|
||||
int64_t output_period_ms) override;
|
||||
void StopLogging() override {}
|
||||
void Log(std::unique_ptr<RtcEvent> event) override {}
|
||||
};
|
||||
|
@ -377,4 +377,10 @@ std::unique_ptr<RtcEventLog> RtcEventLog::CreateNull() {
|
||||
return std::unique_ptr<RtcEventLog>(new RtcEventLogNullImpl());
|
||||
}
|
||||
|
||||
bool RtcEventLogNullImpl::StartLogging(
|
||||
std::unique_ptr<RtcEventLogOutput> output,
|
||||
int64_t output_period_ms) {
|
||||
return false;
|
||||
}
|
||||
|
||||
} // namespace webrtc
|
@ -608,6 +608,7 @@ if (rtc_include_tests) {
|
||||
"../call:call_interfaces",
|
||||
"../common_video:common_video",
|
||||
"../logging:rtc_event_log_api",
|
||||
"../logging:rtc_event_log_impl_base",
|
||||
"../modules/audio_device:mock_audio_device",
|
||||
"../modules/audio_processing:audio_processing",
|
||||
"../modules/video_coding:simulcast_test_utility",
|
||||
|
@ -955,6 +955,7 @@ rtc_static_library("audio_network_adaptor") {
|
||||
"../../api:optional",
|
||||
"../../api/audio_codecs:audio_codecs_api",
|
||||
"../../common_audio",
|
||||
"../../logging:rtc_event_audio",
|
||||
"../../logging:rtc_event_log_api",
|
||||
"../../rtc_base:checks",
|
||||
"../../rtc_base:protobuf_utils",
|
||||
@ -2171,6 +2172,7 @@ if (rtc_include_tests) {
|
||||
"../../common_audio",
|
||||
"../../common_audio:mock_common_audio",
|
||||
"../../logging:mocks",
|
||||
"../../logging:rtc_event_audio",
|
||||
"../../logging:rtc_event_log_api",
|
||||
"../../rtc_base:checks",
|
||||
"../../rtc_base:protobuf_utils",
|
||||
|
@ -34,6 +34,7 @@ rtc_static_library("bitrate_controller") {
|
||||
|
||||
deps = [
|
||||
"..:module_api",
|
||||
"../../logging:rtc_event_bwe",
|
||||
"../../logging:rtc_event_log_api",
|
||||
"../../rtc_base:checks",
|
||||
"../../rtc_base:rtc_base_approved",
|
||||
@ -70,6 +71,7 @@ if (rtc_include_tests) {
|
||||
deps = [
|
||||
":bitrate_controller",
|
||||
"../../logging:mocks",
|
||||
"../../logging:rtc_event_bwe",
|
||||
"../../logging:rtc_event_log_api",
|
||||
"../../test:field_trial",
|
||||
"../../test:test_support",
|
||||
|
@ -102,6 +102,7 @@ rtc_source_set("estimators") {
|
||||
|
||||
deps = [
|
||||
"../../api:optional",
|
||||
"../../logging:rtc_event_bwe",
|
||||
"../../logging:rtc_event_log_api",
|
||||
"../../rtc_base:checks",
|
||||
"../../rtc_base:rtc_base_approved",
|
||||
@ -122,6 +123,7 @@ rtc_source_set("delay_based_bwe") {
|
||||
deps = [
|
||||
":estimators",
|
||||
"../../:typedefs",
|
||||
"../../logging:rtc_event_bwe",
|
||||
"../../logging:rtc_event_log_api",
|
||||
"../../rtc_base:checks",
|
||||
"../../rtc_base:rtc_base_approved",
|
||||
|
@ -37,7 +37,9 @@ rtc_static_library("pacing") {
|
||||
"../../:typedefs",
|
||||
"../../:webrtc_common",
|
||||
"../../api:optional",
|
||||
"../../logging:rtc_event_bwe",
|
||||
"../../logging:rtc_event_log_api",
|
||||
"../../logging:rtc_event_pacing",
|
||||
"../../rtc_base:checks",
|
||||
"../../rtc_base:rtc_base_approved",
|
||||
"../../rtc_base/experiments:alr_experiment",
|
||||
|
@ -201,7 +201,9 @@ rtc_static_library("rtp_rtcp") {
|
||||
"../../api:transport_api",
|
||||
"../../api/audio_codecs:audio_codecs_api",
|
||||
"../../common_video",
|
||||
"../../logging:rtc_event_audio",
|
||||
"../../logging:rtc_event_log_api",
|
||||
"../../logging:rtc_event_rtp_rtcp",
|
||||
"../../rtc_base:checks",
|
||||
"../../rtc_base:deprecation",
|
||||
"../../rtc_base:gtest_prod",
|
||||
|
@ -39,6 +39,7 @@ rtc_static_library("ortc") {
|
||||
"../call:call_interfaces",
|
||||
"../call:rtp_sender",
|
||||
"../logging:rtc_event_log_api",
|
||||
"../logging:rtc_event_log_impl_base",
|
||||
"../media:rtc_audio_video",
|
||||
"../media:rtc_media",
|
||||
"../media:rtc_media_base",
|
||||
|
@ -188,6 +188,7 @@ rtc_static_library("peerconnection") {
|
||||
"../call:call_interfaces",
|
||||
"../common_video:common_video",
|
||||
"../logging:rtc_event_log_api",
|
||||
"../logging:rtc_event_log_impl_output",
|
||||
"../media:rtc_data",
|
||||
"../media:rtc_media_base",
|
||||
"../p2p:rtc_p2p",
|
||||
@ -221,6 +222,7 @@ rtc_static_library("create_pc_factory") {
|
||||
"../call",
|
||||
"../call:call_interfaces",
|
||||
"../logging:rtc_event_log_api",
|
||||
"../logging:rtc_event_log_impl_base",
|
||||
"../media:rtc_audio_video",
|
||||
"../media:rtc_media_base",
|
||||
"../modules/audio_device:audio_device",
|
||||
@ -481,7 +483,8 @@ if (rtc_include_tests) {
|
||||
"../api/audio_codecs/L16:audio_encoder_L16",
|
||||
"../call:call_interfaces",
|
||||
"../logging:rtc_event_log_api",
|
||||
"../logging:rtc_event_log_impl",
|
||||
"../logging:rtc_event_log_impl_base",
|
||||
"../logging:rtc_event_log_impl_output",
|
||||
"../media:rtc_audio_video",
|
||||
"../media:rtc_data", # TODO(phoglund): AFAIK only used for one sctp constant.
|
||||
"../media:rtc_media_base",
|
||||
|
@ -224,8 +224,9 @@ if (!build_with_chromium) {
|
||||
"../call:call_interfaces",
|
||||
"../call:video_stream_api",
|
||||
"../logging:rtc_event_log_api",
|
||||
"../logging:rtc_event_log_impl",
|
||||
"../logging:rtc_event_log_impl_base",
|
||||
"../logging:rtc_event_log_parser",
|
||||
"../logging:rtc_stream_config",
|
||||
"../modules:module_api",
|
||||
"../modules/audio_coding:ana_debug_dump_proto",
|
||||
"../modules/audio_coding:audio_network_adaptor",
|
||||
|
@ -438,6 +438,8 @@ rtc_static_library("peerconnection_jni") {
|
||||
"../../api:libjingle_peerconnection_api",
|
||||
"../../api:peerconnection_and_implicit_call_api",
|
||||
"../../api/video_codecs:video_codecs_api",
|
||||
"../../logging:rtc_event_log_api",
|
||||
"../../logging:rtc_event_log_impl_base",
|
||||
"../../media:rtc_data",
|
||||
"../../media:rtc_media_base",
|
||||
"../../modules/audio_device:audio_device",
|
||||
|
@ -613,6 +613,7 @@ rtc_source_set("test_common") {
|
||||
"../call:video_stream_api",
|
||||
"../common_video",
|
||||
"../logging:rtc_event_log_api",
|
||||
"../logging:rtc_event_log_impl_base",
|
||||
"../media:rtc_media_base",
|
||||
"../modules/audio_device:mock_audio_device",
|
||||
"../modules/audio_mixer:audio_mixer_impl",
|
||||
|
@ -231,7 +231,7 @@ webrtc_fuzzer_test("congestion_controller_feedback_fuzzer") {
|
||||
]
|
||||
deps = [
|
||||
"../../logging:rtc_event_log_api",
|
||||
"../../logging:rtc_event_log_impl",
|
||||
"../../logging:rtc_event_log_impl_base",
|
||||
"../../modules/congestion_controller",
|
||||
"../../modules/pacing",
|
||||
"../../modules/remote_bitrate_estimator:remote_bitrate_estimator",
|
||||
|
@ -112,6 +112,7 @@ if (rtc_include_tests) {
|
||||
]
|
||||
deps = [
|
||||
"../logging:rtc_event_log_api",
|
||||
"../logging:rtc_event_log_impl_output",
|
||||
"../media:rtc_audio_video",
|
||||
"../media:rtc_internal_video_codecs",
|
||||
"../modules/audio_mixer:audio_mixer_impl",
|
||||
|
Reference in New Issue
Block a user