@@ -388,6 +388,18 @@ if (rtc_use_h264 && rtc_system_openh264) {
388388 }
389389}
390390
391+ rtc_library (" frame_sampler" ) {
392+ visibility = [ " *" ]
393+ sources = [
394+ " utility/frame_sampler.cc" ,
395+ " utility/frame_sampler.h" ,
396+ ]
397+ deps = [
398+ " ..:module_api_public" ,
399+ " ../../api/video:video_frame" ,
400+ ]
401+ }
402+
391403rtc_library (" video_coding_utility" ) {
392404 visibility = [ " *" ]
393405 sources = [
@@ -488,6 +500,7 @@ rtc_library("webrtc_h264") {
488500 defines = []
489501 deps = [
490502 " :codec_globals_headers" ,
503+ " :frame_sampler" ,
491504 " :video_codec_interface" ,
492505 " :video_coding_utility" ,
493506 " ../../api:scoped_refptr" ,
@@ -514,6 +527,7 @@ rtc_library("webrtc_h264") {
514527 " ../../rtc_base:timeutils" ,
515528 " ../../rtc_base/system:rtc_export" ,
516529 " ../../system_wrappers:metrics" ,
530+ " ../rtp_rtcp:rtp_rtcp_format" ,
517531 " svc:scalability_structures" ,
518532 " svc:scalable_video_controller" ,
519533 " //third_party/abseil-cpp/absl/base:nullability" ,
@@ -575,6 +589,7 @@ rtc_library("webrtc_vp8") {
575589
576590 deps = [
577591 " :codec_globals_headers" ,
592+ " :frame_sampler" ,
578593 " :video_codec_interface" ,
579594 " :video_coding_utility" ,
580595 " :webrtc_libvpx_interface" ,
@@ -608,6 +623,7 @@ rtc_library("webrtc_vp8") {
608623 " ../../rtc_base/experiments:field_trial_parser" ,
609624 " ../../rtc_base/experiments:rate_control_settings" ,
610625 " ../../system_wrappers:metrics" ,
626+ " ../rtp_rtcp:rtp_rtcp_format" ,
611627 " svc:scalability_mode_util" ,
612628 " //third_party/abseil-cpp/absl/algorithm:container" ,
613629 " //third_party/abseil-cpp/absl/base:nullability" ,
@@ -701,6 +717,7 @@ rtc_library("webrtc_vp9") {
701717
702718 deps = [
703719 " :codec_globals_headers" ,
720+ " :frame_sampler" ,
704721 " :video_codec_interface" ,
705722 " :video_coding_utility" ,
706723 " :webrtc_libvpx_interface" ,
@@ -1209,6 +1226,7 @@ if (rtc_include_tests) {
12091226 " utility/corruption_detection_settings_generator_unittest.cc" ,
12101227 " utility/decoded_frames_history_unittest.cc" ,
12111228 " utility/frame_dropper_unittest.cc" ,
1229+ " utility/frame_sampler_unittest.cc" ,
12121230 " utility/framerate_controller_deprecated_unittest.cc" ,
12131231 " utility/ivf_file_reader_unittest.cc" ,
12141232 " utility/ivf_file_writer_unittest.cc" ,
@@ -1233,6 +1251,7 @@ if (rtc_include_tests) {
12331251 " :encoded_frame" ,
12341252 " :frame_dependencies_calculator" ,
12351253 " :frame_helpers" ,
1254+ " :frame_sampler" ,
12361255 " :h264_sprop_parameter_sets" ,
12371256 " :h26x_packet_buffer" ,
12381257 " :nack_requester" ,
0 commit comments