# 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("formats") { visibility = [ "//media/*" ] sources = [ "ac3/ac3_util.cc", "ac3/ac3_util.h", "common/offset_byte_queue.cc", "common/offset_byte_queue.h", "webm/webm_audio_client.cc", "webm/webm_audio_client.h", "webm/webm_cluster_parser.cc", "webm/webm_cluster_parser.h", "webm/webm_colour_parser.cc", "webm/webm_colour_parser.h", "webm/webm_constants.cc", "webm/webm_constants.h", "webm/webm_content_encodings.cc", "webm/webm_content_encodings.h", "webm/webm_content_encodings_client.cc", "webm/webm_content_encodings_client.h", "webm/webm_crypto_helpers.cc", "webm/webm_crypto_helpers.h", "webm/webm_info_parser.cc", "webm/webm_info_parser.h", "webm/webm_parser.cc", "webm/webm_parser.h", "webm/webm_stream_parser.cc", "webm/webm_stream_parser.h", "webm/webm_tracks_parser.cc", "webm/webm_tracks_parser.h", "webm/webm_video_client.cc", "webm/webm_video_client.h", "webm/webm_webvtt_parser.cc", "webm/webm_webvtt_parser.h", ] deps = [ "//skia", ] public_deps = [ "//media/base", ] configs += [ "//media:media_implementation", # TODO(wolenetz): Fix size_t to int trunctaion in win64. # See http://crbug.com/171009 "//build/config/compiler:no_size_t_to_int_warning", ] if (proprietary_codecs) { sources += [ "mp4/aac.cc", "mp4/aac.h", "mp4/avc.cc", "mp4/avc.h", "mp4/bitstream_converter.cc", "mp4/bitstream_converter.h", "mp4/box_definitions.cc", "mp4/box_definitions.h", "mp4/box_reader.cc", "mp4/box_reader.h", "mp4/es_descriptor.cc", "mp4/es_descriptor.h", "mp4/mp4_stream_parser.cc", "mp4/mp4_stream_parser.h", "mp4/sample_to_group_iterator.cc", "mp4/sample_to_group_iterator.h", "mp4/track_run_iterator.cc", "mp4/track_run_iterator.h", "mpeg/adts_constants.cc", "mpeg/adts_constants.h", "mpeg/adts_stream_parser.cc", "mpeg/adts_stream_parser.h", "mpeg/mpeg1_audio_stream_parser.cc", "mpeg/mpeg1_audio_stream_parser.h", "mpeg/mpeg_audio_stream_parser_base.cc", "mpeg/mpeg_audio_stream_parser_base.h", ] } if (proprietary_codecs && enable_hevc_demuxing) { sources += [ "mp4/hevc.cc", "mp4/hevc.h", ] } if (proprietary_codecs && enable_dolby_vision_demuxing) { sources += [ "mp4/dolby_vision.cc", "mp4/dolby_vision.h", ] } if (proprietary_codecs && enable_mse_mpeg2ts_stream_parser) { sources += [ "mp2t/descriptors.cc", "mp2t/descriptors.h", "mp2t/es_adapter_video.cc", "mp2t/es_adapter_video.h", "mp2t/es_parser.cc", "mp2t/es_parser.h", "mp2t/es_parser_adts.cc", "mp2t/es_parser_adts.h", "mp2t/es_parser_h264.cc", "mp2t/es_parser_h264.h", "mp2t/es_parser_mpeg1audio.cc", "mp2t/es_parser_mpeg1audio.h", "mp2t/mp2t_common.h", "mp2t/mp2t_stream_parser.cc", "mp2t/mp2t_stream_parser.h", "mp2t/timestamp_unroller.cc", "mp2t/timestamp_unroller.h", "mp2t/ts_packet.cc", "mp2t/ts_packet.h", "mp2t/ts_section.h", "mp2t/ts_section_pat.cc", "mp2t/ts_section_pat.h", "mp2t/ts_section_pes.cc", "mp2t/ts_section_pes.h", "mp2t/ts_section_pmt.cc", "mp2t/ts_section_pmt.h", "mp2t/ts_section_psi.cc", "mp2t/ts_section_psi.h", ] } if (proprietary_codecs && enable_mse_mpeg2ts_stream_parser && enable_hls_sample_aes) { sources += [ "mp2t/ts_section_cat.cc", "mp2t/ts_section_cat.h", "mp2t/ts_section_cets_ecm.cc", "mp2t/ts_section_cets_ecm.h", "mp2t/ts_section_cets_pssh.cc", "mp2t/ts_section_cets_pssh.h", ] } } source_set("unit_tests") { testonly = true visibility = [ "//media/*" ] sources = [ "ac3/ac3_util_unittest.cc", "common/offset_byte_queue_unittest.cc", "webm/cluster_builder.cc", "webm/cluster_builder.h", "webm/opus_packet_builder.cc", "webm/opus_packet_builder.h", "webm/tracks_builder.cc", "webm/tracks_builder.h", "webm/webm_cluster_parser_unittest.cc", "webm/webm_content_encodings_client_unittest.cc", "webm/webm_crypto_helpers_unittest.cc", "webm/webm_parser_unittest.cc", "webm/webm_stream_parser_unittest.cc", "webm/webm_tracks_parser_unittest.cc", "webm/webm_webvtt_parser_unittest.cc", ] deps = [ "//skia", "//testing/gmock", ] # 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" ] if (proprietary_codecs) { sources += [ "common/stream_parser_test_base.cc", "common/stream_parser_test_base.h", "mp4/aac_unittest.cc", "mp4/avc_unittest.cc", "mp4/box_reader_unittest.cc", "mp4/es_descriptor_unittest.cc", "mp4/mp4_stream_parser_unittest.cc", "mp4/sample_to_group_iterator_unittest.cc", "mp4/track_run_iterator_unittest.cc", "mpeg/adts_stream_parser_unittest.cc", "mpeg/mpeg1_audio_stream_parser_unittest.cc", ] } if (proprietary_codecs && enable_mse_mpeg2ts_stream_parser) { sources += [ "mp2t/es_adapter_video_unittest.cc", "mp2t/es_parser_adts_unittest.cc", "mp2t/es_parser_h264_unittest.cc", "mp2t/es_parser_mpeg1audio_unittest.cc", "mp2t/es_parser_test_base.cc", "mp2t/es_parser_test_base.h", "mp2t/mp2t_stream_parser_unittest.cc", "mp2t/timestamp_unroller_unittest.cc", ] } if (proprietary_codecs && enable_dolby_vision_demuxing) { sources += [ "mp4/dolby_vision_unittest.cc" ] } }