| # Copyright 2017 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") |
| |
| source_set("filters") { |
| visibility = [ "//media/*" ] |
| |
| sources = [ |
| "audio_clock.cc", |
| "audio_clock.h", |
| "audio_renderer_algorithm.cc", |
| "audio_renderer_algorithm.h", |
| "audio_timestamp_validator.cc", |
| "audio_timestamp_validator.h", |
| "chunk_demuxer.cc", |
| "chunk_demuxer.h", |
| "context_3d.h", |
| "decoder_selector.cc", |
| "decoder_selector.h", |
| "decoder_stream.cc", |
| "decoder_stream.h", |
| "decoder_stream_traits.cc", |
| "decoder_stream_traits.h", |
| "decrypting_audio_decoder.cc", |
| "decrypting_audio_decoder.h", |
| "decrypting_demuxer_stream.cc", |
| "decrypting_demuxer_stream.h", |
| "decrypting_video_decoder.cc", |
| "decrypting_video_decoder.h", |
| "file_data_source.cc", |
| "file_data_source.h", |
| "frame_processor.cc", |
| "frame_processor.h", |
| "gpu_video_decoder.cc", |
| "gpu_video_decoder.h", |
| "h264_bit_reader.cc", |
| "h264_bit_reader.h", |
| "h264_parser.cc", |
| "h264_parser.h", |
| "ivf_parser.cc", |
| "ivf_parser.h", |
| "jpeg_parser.cc", |
| "jpeg_parser.h", |
| "memory_data_source.cc", |
| "memory_data_source.h", |
| "opus_constants.cc", |
| "opus_constants.h", |
| "pipeline_controller.cc", |
| "pipeline_controller.h", |
| "source_buffer_parse_warnings.h", |
| "source_buffer_range.cc", |
| "source_buffer_range.h", |
| "source_buffer_state.cc", |
| "source_buffer_state.h", |
| "source_buffer_stream.cc", |
| "source_buffer_stream.h", |
| "stream_parser_factory.cc", |
| "stream_parser_factory.h", |
| "video_cadence_estimator.cc", |
| "video_cadence_estimator.h", |
| "video_renderer_algorithm.cc", |
| "video_renderer_algorithm.h", |
| "vp8_bool_decoder.cc", |
| "vp8_bool_decoder.h", |
| "vp8_parser.cc", |
| "vp8_parser.h", |
| "vp9_bool_decoder.cc", |
| "vp9_bool_decoder.h", |
| "vp9_compressed_header_parser.cc", |
| "vp9_compressed_header_parser.h", |
| "vp9_parser.cc", |
| "vp9_parser.h", |
| "vp9_raw_bits_reader.cc", |
| "vp9_raw_bits_reader.h", |
| "vp9_uncompressed_header_parser.cc", |
| "vp9_uncompressed_header_parser.h", |
| "webvtt_util.h", |
| "wsola_internals.cc", |
| "wsola_internals.h", |
| ] |
| |
| # TODO(wolenetz): Fix size_t to int truncation in win64. |
| # See http://crbug.com/171009 |
| configs += [ "//build/config/compiler:no_size_t_to_int_warning" ] |
| |
| # TODO(a.suchit): Needs to create separate BUILD.gn file for video. |
| sources += [ |
| "//media/video/fake_video_encode_accelerator.cc", |
| "//media/video/fake_video_encode_accelerator.h", |
| "//media/video/gpu_memory_buffer_video_frame_pool.cc", |
| "//media/video/gpu_memory_buffer_video_frame_pool.h", |
| "//media/video/h264_poc.cc", |
| "//media/video/h264_poc.h", |
| "//media/video/half_float_maker.cc", |
| "//media/video/half_float_maker.h", |
| "//media/video/jpeg_decode_accelerator.cc", |
| "//media/video/jpeg_decode_accelerator.h", |
| "//media/video/picture.cc", |
| "//media/video/picture.h", |
| "//media/video/video_decode_accelerator.cc", |
| "//media/video/video_decode_accelerator.h", |
| "//media/video/video_encode_accelerator.cc", |
| "//media/video/video_encode_accelerator.h", |
| ] |
| |
| configs += [ |
| "//media:media_config", |
| "//media:media_implementation", |
| ] |
| all_dependent_configs = [ "//media:media_dependent_config" ] |
| |
| deps = [ |
| "//skia", |
| "//third_party/libyuv", |
| ] |
| |
| libs = [] |
| |
| public_deps = [ |
| "//media:media_features", |
| "//media/audio", |
| "//media/cdm", |
| "//media/muxers", |
| ] |
| |
| if (proprietary_codecs) { |
| sources += [ |
| "h264_to_annex_b_bitstream_converter.cc", |
| "h264_to_annex_b_bitstream_converter.h", |
| ] |
| } |
| |
| if (media_use_ffmpeg) { |
| public_deps += [ "//media/ffmpeg" ] |
| deps += [ |
| "//third_party/ffmpeg", |
| "//third_party/opus", |
| ] |
| sources += [ |
| "audio_file_reader.cc", |
| "audio_file_reader.h", |
| "blocking_url_protocol.cc", |
| "blocking_url_protocol.h", |
| "ffmpeg_audio_decoder.cc", |
| "ffmpeg_audio_decoder.h", |
| "ffmpeg_bitstream_converter.h", |
| "ffmpeg_demuxer.cc", |
| "ffmpeg_demuxer.h", |
| "ffmpeg_glue.cc", |
| "ffmpeg_glue.h", |
| "in_memory_url_protocol.cc", |
| "in_memory_url_protocol.h", |
| ] |
| if (!is_android) { |
| sources += [ |
| "audio_video_metadata_extractor.cc", |
| "audio_video_metadata_extractor.h", |
| "media_file_checker.cc", |
| "media_file_checker.h", |
| ] |
| } |
| } |
| |
| if (media_use_libvpx) { |
| sources += [ |
| "vpx_video_decoder.cc", |
| "vpx_video_decoder.h", |
| ] |
| deps += [ "//third_party/libvpx" ] |
| } |
| |
| if (proprietary_codecs && media_use_ffmpeg) { |
| sources += [ |
| "ffmpeg_aac_bitstream_converter.cc", |
| "ffmpeg_aac_bitstream_converter.h", |
| "ffmpeg_h264_to_annex_b_bitstream_converter.cc", |
| "ffmpeg_h264_to_annex_b_bitstream_converter.h", |
| ] |
| } |
| |
| if (proprietary_codecs && enable_hevc_demuxing) { |
| sources += [ |
| "h265_parser.cc", |
| "h265_parser.h", |
| ] |
| } |
| |
| if (media_use_ffmpeg && !disable_ffmpeg_video_decoders) { |
| sources += [ |
| "ffmpeg_video_decoder.cc", |
| "ffmpeg_video_decoder.h", |
| ] |
| } |
| |
| if (proprietary_codecs && media_use_ffmpeg && enable_hevc_demuxing) { |
| sources += [ |
| "ffmpeg_h265_to_annex_b_bitstream_converter.cc", |
| "ffmpeg_h265_to_annex_b_bitstream_converter.h", |
| ] |
| } |
| |
| if (is_android) { |
| sources -= [ |
| "decrypting_audio_decoder.cc", |
| "decrypting_audio_decoder.h", |
| "decrypting_video_decoder.cc", |
| "decrypting_video_decoder.h", |
| ] |
| sources += [ |
| "android/media_codec_audio_decoder.cc", |
| "android/media_codec_audio_decoder.h", |
| ] |
| } |
| |
| if (current_cpu != "arm" && is_chromeos) { |
| sources += [ |
| "h264_bitstream_buffer.cc", |
| "h264_bitstream_buffer.h", |
| ] |
| } |
| |
| if (use_low_memory_buffer) { |
| sources += [ |
| "source_buffer_platform.h", |
| "source_buffer_platform_lowmem.cc", |
| ] |
| } else { |
| sources += [ |
| "source_buffer_platform.cc", |
| "source_buffer_platform.h", |
| ] |
| } |
| } |