| # Copyright 2019 The Chromium Authors. All rights reserved. |
| # Use of this source code is governed by a BSD-style license that can be |
| # found in the LICENSE file. |
| |
| import("//media/media_options.gni") |
| import("//third_party/blink/renderer/modules/modules.gni") |
| import("//third_party/libprotobuf-mutator/fuzzable_proto_library.gni") |
| import("//third_party/protobuf/proto_library.gni") |
| |
| blink_modules_sources("webcodecs") { |
| sources = [ |
| "audio_decoder.cc", |
| "audio_decoder.h", |
| "audio_decoder_broker.cc", |
| "audio_decoder_broker.h", |
| "audio_encoder.cc", |
| "audio_encoder.h", |
| "audio_frame.cc", |
| "audio_frame.h", |
| "audio_frame_serialization_data.cc", |
| "audio_frame_serialization_data.h", |
| "codec_config_eval.h", |
| "codec_logger.cc", |
| "codec_logger.h", |
| "codec_state_helper.cc", |
| "codec_state_helper.h", |
| "decoder_selector.cc", |
| "decoder_selector.h", |
| "decoder_template.cc", |
| "decoder_template.h", |
| "encoded_audio_chunk.cc", |
| "encoded_audio_chunk.h", |
| "encoded_audio_metadata.h", |
| "encoded_video_chunk.cc", |
| "encoded_video_chunk.h", |
| "encoded_video_metadata.h", |
| "encoder_base.cc", |
| "encoder_base.h", |
| "hardware_preference.cc", |
| "hardware_preference.h", |
| "image_decoder_external.cc", |
| "image_decoder_external.h", |
| "plane.cc", |
| "plane.h", |
| "video_decoder.cc", |
| "video_decoder.h", |
| "video_decoder_broker.cc", |
| "video_decoder_broker.h", |
| "video_encoder.cc", |
| "video_encoder.h", |
| "video_frame.cc", |
| "video_frame.h", |
| "video_frame_attachment.cc", |
| "video_frame_attachment.h", |
| "video_frame_handle.cc", |
| "video_frame_handle.h", |
| "video_frame_logger.cc", |
| "video_frame_logger.h", |
| "video_track_reader.cc", |
| "video_track_reader.h", |
| "video_track_writer.cc", |
| "video_track_writer.h", |
| ] |
| deps = [ |
| "//media", |
| "//media/mojo:buildflags", |
| "//media/mojo/clients", |
| "//media/mojo/mojom", |
| "//third_party/libyuv:libyuv", |
| "//third_party/opus", |
| ] |
| if (media_use_openh264) { |
| deps += [ "//third_party/openh264:encoder" ] |
| } |
| public_deps = [ |
| "//third_party/blink/renderer/modules/mediastream:mediastream", |
| "//third_party/blink/renderer/modules/webaudio:webaudio", |
| ] |
| allow_circular_includes_from = |
| [ "//third_party/blink/renderer/modules/mediastream:mediastream" ] |
| } |
| |
| source_set("unit_tests") { |
| testonly = true |
| sources = [ |
| "audio_decoder_broker_test.cc", |
| "audio_frame_test.cc", |
| "decoder_selector_test.cc", |
| "encoded_video_chunk_test.cc", |
| "image_decoder_external_test.cc", |
| "video_decoder_broker_test.cc", |
| "video_frame_test.cc", |
| "video_track_reader_writer_test.cc", |
| ] |
| |
| configs += [ |
| "//third_party/blink/renderer:config", |
| "//third_party/blink/renderer:inside_blink", |
| "//third_party/blink/renderer/core:blink_core_pch", |
| ] |
| |
| deps = [ |
| "//base/test:test_support", |
| "//gpu/command_buffer/common", |
| "//media:test_support", |
| "//media/mojo/services:services", |
| "//testing/gmock", |
| "//testing/gtest", |
| "//third_party/blink/public:test_headers", |
| "//third_party/blink/renderer/controller:blink_bindings_test_sources", |
| "//third_party/blink/renderer/modules", |
| "//third_party/blink/renderer/platform", |
| "//third_party/blink/renderer/platform:test_support", |
| "//third_party/blink/renderer/platform/wtf", |
| "//third_party/libyuv", |
| ] |
| |
| data = [ "//third_party/blink/web_tests/images/resources/" ] |
| } |
| |
| fuzzable_proto_library("fuzzer_protos") { |
| generate_python = true |
| sources = [ "fuzzer_inputs.proto" ] |
| } |