Define FrameTransformerInterface for transforming encoded frames, and TransformedFrameCallback for receiving transformed frames. The FrameTransformerInterface will be implemented on the browser side, and will be set in WebRTC sender and receiver in follow up CLs: - Sender: https://webrtc-review.googlesource.com/c/src/+/169127 - Receiver: https://webrtc-review.googlesource.com/c/src/+/169129/1 Insertable Streams Web API explainer: https://github.com/alvestrand/webrtc-media-streams/blob/master/explainer.md Design doc for WebRTC library changes: http://doc/1eiLkjNUkRy2FssCPLUp6eH08BZuXXoHfbbBP1ZN7EVk Bug: webrtc:11380 Change-Id: Icf8ff159feb604f006e18157660f13d300a08b2b Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/169126 Reviewed-by: Karl Wiberg <kwiberg@webrtc.org> Reviewed-by: Danil Chapovalov <danilchap@webrtc.org> Commit-Queue: Marina Ciocea <marinaciocea@webrtc.org> Cr-Commit-Position: refs/heads/master@{#30637}
310 lines
6.2 KiB
Python
310 lines
6.2 KiB
Python
# This is supposed to be a complete list of top-level directories,
|
|
# excepting only api/ itself.
|
|
include_rules = [
|
|
"-audio",
|
|
"-base",
|
|
"-build",
|
|
"-buildtools",
|
|
"-build_overrides",
|
|
"-call",
|
|
"-common_audio",
|
|
"-common_video",
|
|
"-data",
|
|
"-examples",
|
|
"-ios",
|
|
"-infra",
|
|
"-logging",
|
|
"-media",
|
|
"-modules",
|
|
"-out",
|
|
"-p2p",
|
|
"-pc",
|
|
"-resources",
|
|
"-rtc_base",
|
|
"-rtc_tools",
|
|
"-sdk",
|
|
"-stats",
|
|
"-style-guide",
|
|
"-system_wrappers",
|
|
"-test",
|
|
"-testing",
|
|
"-third_party",
|
|
"-tools",
|
|
"-tools_webrtc",
|
|
"-video",
|
|
"-external/webrtc/webrtc", # Android platform build.
|
|
"-libyuv",
|
|
"-common_types.h",
|
|
"-WebRTC",
|
|
]
|
|
|
|
specific_include_rules = {
|
|
# Some internal headers are allowed even in API headers:
|
|
".*\.h": [
|
|
"+rtc_base/checks.h",
|
|
"+rtc_base/system/rtc_export.h",
|
|
"+rtc_base/system/rtc_export_template.h",
|
|
"+rtc_base/units/unit_base.h",
|
|
"+rtc_base/deprecation.h",
|
|
],
|
|
|
|
"array_view\.h": [
|
|
"+rtc_base/type_traits.h",
|
|
],
|
|
|
|
# Needed because AudioEncoderOpus is in the wrong place for
|
|
# backwards compatibilty reasons. See
|
|
# https://bugs.chromium.org/p/webrtc/issues/detail?id=7847
|
|
"audio_encoder_opus\.h": [
|
|
"+modules/audio_coding/codecs/opus/audio_encoder_opus.h",
|
|
],
|
|
|
|
"async_resolver_factory\.h": [
|
|
"+rtc_base/async_resolver_interface.h",
|
|
],
|
|
|
|
"candidate\.h": [
|
|
"+rtc_base/network_constants.h",
|
|
"+rtc_base/socket_address.h",
|
|
],
|
|
|
|
"data_channel_interface\.h": [
|
|
"+rtc_base/copy_on_write_buffer.h",
|
|
"+rtc_base/ref_count.h",
|
|
],
|
|
|
|
"data_channel_transport_interface\.h": [
|
|
"+rtc_base/copy_on_write_buffer.h",
|
|
],
|
|
|
|
"dtls_transport_interface\.h": [
|
|
"+rtc_base/ref_count.h",
|
|
"+rtc_base/ssl_certificate.h",
|
|
],
|
|
|
|
"dtmf_sender_interface\.h": [
|
|
"+rtc_base/ref_count.h",
|
|
],
|
|
|
|
"fec_controller\.h": [
|
|
"+modules/include/module_fec_types.h",
|
|
],
|
|
|
|
"frame_transformer_interface\.h": [
|
|
"+rtc_base/ref_count.h",
|
|
],
|
|
|
|
"ice_transport_interface\.h": [
|
|
"+rtc_base/ref_count.h",
|
|
],
|
|
|
|
"jsep\.h": [
|
|
"+rtc_base/ref_count.h",
|
|
],
|
|
|
|
"jsep_ice_candidate\.h": [
|
|
"+rtc_base/constructor_magic.h",
|
|
],
|
|
|
|
"jsep_session_description\.h": [
|
|
"+rtc_base/constructor_magic.h",
|
|
],
|
|
|
|
"media_stream_interface\.h": [
|
|
"+modules/audio_processing/include/audio_processing_statistics.h",
|
|
"+rtc_base/ref_count.h",
|
|
],
|
|
|
|
"media_transport_interface\.h": [
|
|
"+rtc_base/copy_on_write_buffer.h", # As used by datachannelinterface.h
|
|
"+rtc_base/network_route.h",
|
|
],
|
|
|
|
"packet_socket_factory\.h": [
|
|
"+rtc_base/proxy_info.h",
|
|
"+rtc_base/async_packet_socket.h",
|
|
],
|
|
|
|
"peer_connection_factory_proxy\.h": [
|
|
"+rtc_base/bind.h",
|
|
],
|
|
|
|
"peer_connection_interface\.h": [
|
|
"+media/base/media_config.h",
|
|
"+media/base/media_engine.h",
|
|
"+p2p/base/port_allocator.h",
|
|
"+rtc_base/network.h",
|
|
"+rtc_base/rtc_certificate.h",
|
|
"+rtc_base/rtc_certificate_generator.h",
|
|
"+rtc_base/socket_address.h",
|
|
"+rtc_base/ssl_certificate.h",
|
|
"+rtc_base/ssl_stream_adapter.h",
|
|
],
|
|
|
|
"proxy\.h": [
|
|
"+rtc_base/event.h",
|
|
"+rtc_base/message_handler.h", # Inherits from it.
|
|
"+rtc_base/ref_counted_object.h",
|
|
"+rtc_base/thread.h",
|
|
],
|
|
|
|
"ref_counted_base\.h": [
|
|
"+rtc_base/constructor_magic.h",
|
|
"+rtc_base/ref_count.h",
|
|
"+rtc_base/ref_counter.h",
|
|
],
|
|
|
|
"rtc_error\.h": [
|
|
"+rtc_base/logging.h",
|
|
],
|
|
"rtc_event_log_output_file.h": [
|
|
# For private member and constructor.
|
|
"+rtc_base/system/file_wrapper.h",
|
|
],
|
|
"rtp_receiver_interface\.h": [
|
|
"+rtc_base/ref_count.h",
|
|
],
|
|
|
|
"rtp_sender_interface\.h": [
|
|
"+rtc_base/ref_count.h",
|
|
],
|
|
|
|
"rtp_transceiver_interface\.h": [
|
|
"+rtc_base/ref_count.h",
|
|
],
|
|
|
|
"sctp_transport_interface\.h": [
|
|
"+rtc_base/ref_count.h",
|
|
],
|
|
|
|
"set_remote_description_observer_interface\.h": [
|
|
"+rtc_base/ref_count.h",
|
|
],
|
|
|
|
"stats_types\.h": [
|
|
"+rtc_base/constructor_magic.h",
|
|
"+rtc_base/ref_count.h",
|
|
"+rtc_base/string_encode.h",
|
|
"+rtc_base/thread_checker.h",
|
|
],
|
|
|
|
"uma_metrics\.h": [
|
|
"+rtc_base/ref_count.h",
|
|
],
|
|
|
|
"audio_frame\.h": [
|
|
"+rtc_base/constructor_magic.h",
|
|
],
|
|
|
|
"audio_mixer\.h": [
|
|
"+rtc_base/ref_count.h",
|
|
],
|
|
|
|
"audio_decoder\.h": [
|
|
"+rtc_base/buffer.h",
|
|
"+rtc_base/constructor_magic.h",
|
|
],
|
|
|
|
"audio_decoder_factory\.h": [
|
|
"+rtc_base/ref_count.h",
|
|
],
|
|
|
|
"audio_decoder_factory_template\.h": [
|
|
"+rtc_base/ref_counted_object.h",
|
|
],
|
|
|
|
"audio_encoder\.h": [
|
|
"+rtc_base/buffer.h",
|
|
],
|
|
|
|
"audio_encoder_factory\.h": [
|
|
"+rtc_base/ref_count.h",
|
|
],
|
|
|
|
"audio_encoder_factory_template\.h": [
|
|
"+rtc_base/ref_counted_object.h",
|
|
],
|
|
|
|
"frame_decryptor_interface\.h": [
|
|
"+rtc_base/ref_count.h",
|
|
],
|
|
|
|
"frame_encryptor_interface\.h": [
|
|
"+rtc_base/ref_count.h",
|
|
],
|
|
|
|
"rtc_stats_collector_callback\.h": [
|
|
"+rtc_base/ref_count.h",
|
|
],
|
|
|
|
"rtc_stats_report\.h": [
|
|
"+rtc_base/ref_count.h",
|
|
"+rtc_base/ref_counted_object.h",
|
|
],
|
|
|
|
"audioproc_float\.h": [
|
|
"+modules/audio_processing/include/audio_processing.h",
|
|
],
|
|
|
|
"fake_frame_decryptor\.h": [
|
|
"+rtc_base/ref_counted_object.h",
|
|
],
|
|
|
|
"fake_frame_encryptor\.h": [
|
|
"+rtc_base/ref_counted_object.h",
|
|
],
|
|
|
|
"mock.*\.h": [
|
|
"+test/gmock.h",
|
|
],
|
|
|
|
"simulated_network\.h": [
|
|
"+rtc_base/critical_section.h",
|
|
"+rtc_base/random.h",
|
|
"+rtc_base/thread_annotations.h",
|
|
],
|
|
|
|
"test_dependency_factory\.h": [
|
|
"+rtc_base/thread_checker.h",
|
|
],
|
|
|
|
"time_controller\.h": [
|
|
"+rtc_base/thread.h",
|
|
],
|
|
|
|
"videocodec_test_fixture\.h": [
|
|
"+modules/video_coding/include/video_codec_interface.h"
|
|
],
|
|
|
|
"video_encoder_config\.h": [
|
|
"+rtc_base/ref_count.h",
|
|
],
|
|
|
|
# .cc files in api/ should not be restricted in what they can #include,
|
|
# so we re-add all the top-level directories here. (That's because .h
|
|
# files leak their #includes to whoever's #including them, but .cc files
|
|
# do not since no one #includes them.)
|
|
".*\.cc": [
|
|
"+audio",
|
|
"+call",
|
|
"+common_audio",
|
|
"+common_video",
|
|
"+examples",
|
|
"+logging",
|
|
"+media",
|
|
"+modules",
|
|
"+p2p",
|
|
"+pc",
|
|
"+rtc_base",
|
|
"+rtc_tools",
|
|
"+sdk",
|
|
"+stats",
|
|
"+system_wrappers",
|
|
"+test",
|
|
"+tools",
|
|
"+tools_webrtc",
|
|
"+video",
|
|
"+third_party",
|
|
],
|
|
}
|