Clean VideoReceiveStream2 includes

Moves FrameBuffer2 to its own GN target to reduce the binary size of the
video target.

Bug: None
Change-Id: I40e86a1eabc0c9e8e6fada3dcdb4e3a043c61c6c
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/271286
Commit-Queue: Evan Shrubsole <eshr@webrtc.org>
Reviewed-by: Erik Språng <sprang@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#37803}
This commit is contained in:
Evan Shrubsole
2022-08-16 11:01:46 +00:00
committed by WebRTC LUCI CQ
parent 214cab5727
commit 29d7292a34
5 changed files with 42 additions and 35 deletions

View File

@ -160,6 +160,42 @@ rtc_library("frame_helpers") {
absl_deps = [ "//third_party/abseil-cpp/absl/container:inlined_vector" ]
}
rtc_library("frame_buffer2") {
sources = [
"frame_buffer2.cc",
"frame_buffer2.h",
]
deps = [
":frame_helpers",
":video_codec_interface",
":video_coding_utility",
"../../api:field_trials_view",
"../../api:sequence_checker",
"../../api/task_queue",
"../../api/units:data_size",
"../../api/units:time_delta",
"../../api/video:encoded_frame",
"../../api/video:encoded_image",
"../../api/video:video_rtp_headers",
"../../rtc_base:checks",
"../../rtc_base:event_tracer",
"../../rtc_base:logging",
"../../rtc_base:macromagic",
"../../rtc_base:rtc_event",
"../../rtc_base:rtc_numerics",
"../../rtc_base/experiments:field_trial_parser",
"../../rtc_base/experiments:rtt_mult_experiment",
"../../rtc_base/synchronization:mutex",
"../../rtc_base/system:no_unique_address",
"../../rtc_base/task_utils:repeating_task",
"../../system_wrappers",
"timing:inter_frame_delay",
"timing:jitter_estimator",
"timing:timing_module",
]
absl_deps = [ "//third_party/abseil-cpp/absl/container:inlined_vector" ]
}
rtc_library("video_coding") {
visibility = [ "*" ]
sources = [
@ -168,8 +204,6 @@ rtc_library("video_coding") {
"fec_controller_default.cc",
"fec_controller_default.h",
"fec_rate_table.h",
"frame_buffer2.cc",
"frame_buffer2.h",
"frame_object.cc",
"frame_object.h",
"generic_decoder.cc",
@ -1128,6 +1162,7 @@ if (rtc_include_tests) {
":chain_diff_calculator",
":codec_globals_headers",
":encoded_frame",
":frame_buffer2",
":frame_dependencies_calculator",
":h264_packet_buffer",
":nack_requester",

View File

@ -621,7 +621,7 @@ webrtc_fuzzer_test("frame_buffer2_fuzzer") {
sources = [ "frame_buffer2_fuzzer.cc" ]
deps = [
"../../api/task_queue",
"../../modules/video_coding/",
"../../modules/video_coding:frame_buffer2",
"../../modules/video_coding/timing:timing_module",
"../../test:scoped_key_value_config",
"../time_controller:time_controller",

View File

@ -54,31 +54,26 @@ rtc_library("video") {
deps = [
":frame_cadence_adapter",
":frame_decode_scheduler",
":frame_dumping_decoder",
":unique_timestamp_counter",
":video_receive_stream_timeout_tracker",
":video_stream_buffer_controller",
":video_stream_encoder_impl",
"../api:array_view",
"../api:fec_controller_api",
"../api:field_trials_view",
"../api:frame_transformer_interface",
"../api:libjingle_peerconnection_api",
"../api:rtp_parameters",
"../api:scoped_refptr",
"../api:sequence_checker",
"../api:transport_api",
"../api/crypto:frame_decryptor_interface",
"../api/crypto:options",
"../api/rtc_event_log",
"../api/task_queue",
"../api/task_queue:pending_task_safety_flag",
"../api/units:frequency",
"../api/units:time_delta",
"../api/units:timestamp",
"../api/video:encoded_image",
"../api/video:frame_buffer",
"../api/video:recordable_encoded_frame",
"../api/video:video_bitrate_allocation",
"../api/video:video_bitrate_allocator",
@ -90,7 +85,7 @@ rtc_library("video") {
"../call:bitrate_allocator",
"../call:call_interfaces",
"../call:rtp_interfaces",
"../call:rtp_receiver", # For RtxReceiveStream.
"../call:rtp_receiver",
"../call:rtp_sender",
"../call:video_stream_api",
"../common_video",
@ -102,15 +97,11 @@ rtc_library("video") {
"../modules/rtp_rtcp:rtp_rtcp_format",
"../modules/rtp_rtcp:rtp_video_header",
"../modules/video_coding",
"../modules/video_coding:codec_globals_headers",
"../modules/video_coding:frame_helpers",
"../modules/video_coding:nack_requester",
"../modules/video_coding:packet_buffer",
"../modules/video_coding:video_codec_interface",
"../modules/video_coding:video_coding_utility",
"../modules/video_coding/timing:inter_frame_delay",
"../modules/video_coding/timing:timing_module",
"../modules/video_processing",
"../rtc_base:checks",
"../rtc_base:event_tracer",
"../rtc_base:histogram_percentile_counter",
@ -120,10 +111,8 @@ rtc_library("video") {
"../rtc_base:mod_ops",
"../rtc_base:moving_max_counter",
"../rtc_base:platform_thread",
"../rtc_base:rate_limiter",
"../rtc_base:rate_statistics",
"../rtc_base:rate_tracker",
"../rtc_base:rtc_base",
"../rtc_base:rtc_event",
"../rtc_base:rtc_numerics",
"../rtc_base:rtc_task_queue",
@ -132,28 +121,21 @@ rtc_library("video") {
"../rtc_base:stringutils",
"../rtc_base:threading",
"../rtc_base:timeutils",
"../rtc_base:weak_ptr",
"../rtc_base/experiments:alr_experiment",
"../rtc_base/experiments:field_trial_parser",
"../rtc_base/experiments:keyframe_interval_settings_experiment",
"../rtc_base/experiments:min_video_bitrate_experiment",
"../rtc_base/experiments:quality_scaling_experiment",
"../rtc_base/experiments:rate_control_settings",
"../rtc_base/experiments:rtt_mult_experiment",
"../rtc_base/synchronization:mutex",
"../rtc_base/system:no_unique_address",
"../rtc_base/task_utils:repeating_task",
"../rtc_base/time:timestamp_extrapolator",
"../system_wrappers",
"../system_wrappers:field_trial",
"../system_wrappers:metrics",
"./adaptation:video_adaptation",
"adaptation:video_adaptation",
]
absl_deps = [
"//third_party/abseil-cpp/absl/algorithm:container",
"//third_party/abseil-cpp/absl/base:core_headers",
"//third_party/abseil-cpp/absl/container:inlined_vector",
"//third_party/abseil-cpp/absl/functional:bind_front",
"//third_party/abseil-cpp/absl/memory",
"//third_party/abseil-cpp/absl/strings",
"//third_party/abseil-cpp/absl/types:optional",
@ -183,6 +165,7 @@ rtc_library("video_stream_decoder_impl") {
"../api/video:video_stream_decoder",
"../api/video_codecs:video_codecs_api",
"../modules/video_coding",
"../modules/video_coding:frame_buffer2",
"../modules/video_coding/timing:timing_module",
"../rtc_base:logging",
"../rtc_base:mod_ops",

View File

@ -20,8 +20,6 @@
#include <utility>
#include "absl/algorithm/container.h"
#include "absl/container/inlined_vector.h"
#include "absl/functional/bind_front.h"
#include "absl/types/optional.h"
#include "api/array_view.h"
#include "api/crypto/frame_decryptor_interface.h"
@ -33,25 +31,19 @@
#include "api/units/time_delta.h"
#include "api/units/timestamp.h"
#include "api/video/encoded_image.h"
#include "api/video/frame_buffer.h"
#include "api/video_codecs/h264_profile_level_id.h"
#include "api/video_codecs/sdp_video_format.h"
#include "api/video_codecs/video_codec.h"
#include "api/video_codecs/video_decoder_factory.h"
#include "api/video_codecs/video_encoder.h"
#include "call/rtp_stream_receiver_controller_interface.h"
#include "call/rtx_receive_stream.h"
#include "common_video/include/incoming_video_stream.h"
#include "modules/video_coding/frame_buffer2.h"
#include "modules/video_coding/frame_helpers.h"
#include "modules/video_coding/include/video_codec_interface.h"
#include "modules/video_coding/include/video_coding_defines.h"
#include "modules/video_coding/include/video_error_codes.h"
#include "modules/video_coding/timing/timing.h"
#include "modules/video_coding/utility/vp8_header_parser.h"
#include "rtc_base/checks.h"
#include "rtc_base/experiments/rtt_mult_experiment.h"
#include "rtc_base/location.h"
#include "rtc_base/event.h"
#include "rtc_base/logging.h"
#include "rtc_base/strings/string_builder.h"
#include "rtc_base/synchronization/mutex.h"
@ -60,10 +52,8 @@
#include "rtc_base/trace_event.h"
#include "system_wrappers/include/clock.h"
#include "video/call_stats2.h"
#include "video/frame_decode_scheduler.h"
#include "video/frame_dumping_decoder.h"
#include "video/receive_statistics_proxy2.h"
#include "video/video_receive_stream_timeout_tracker.h"
namespace webrtc {

View File

@ -26,7 +26,6 @@
#include "call/rtp_packet_sink_interface.h"
#include "call/syncable.h"
#include "call/video_receive_stream.h"
#include "modules/rtp_rtcp/include/flexfec_receiver.h"
#include "modules/rtp_rtcp/source/source_tracker.h"
#include "modules/video_coding/nack_requester.h"
#include "modules/video_coding/video_receiver2.h"