16e8cce623b6e4fe0c9e4af605d675dd9d0338c38Torne (Richard Coles)# Copyright 2014 The Chromium Authors. All rights reserved.
26e8cce623b6e4fe0c9e4af605d675dd9d0338c38Torne (Richard Coles)# Use of this source code is governed by a BSD-style license that can be
36e8cce623b6e4fe0c9e4af605d675dd9d0338c38Torne (Richard Coles)# found in the LICENSE file.
46e8cce623b6e4fe0c9e4af605d675dd9d0338c38Torne (Richard Coles)
56e8cce623b6e4fe0c9e4af605d675dd9d0338c38Torne (Richard Coles)import("//build/config/android/config.gni")
66e8cce623b6e4fe0c9e4af605d675dd9d0338c38Torne (Richard Coles)import("//build/config/android/rules.gni")
76e8cce623b6e4fe0c9e4af605d675dd9d0338c38Torne (Richard Coles)import("//build/config/arm.gni")
86e8cce623b6e4fe0c9e4af605d675dd9d0338c38Torne (Richard Coles)import("//build/config/ui.gni")
96e8cce623b6e4fe0c9e4af605d675dd9d0338c38Torne (Richard Coles)import("//media/media_options.gni")
106e8cce623b6e4fe0c9e4af605d675dd9d0338c38Torne (Richard Coles)
116e8cce623b6e4fe0c9e4af605d675dd9d0338c38Torne (Richard Coles)assert(is_android)
126e8cce623b6e4fe0c9e4af605d675dd9d0338c38Torne (Richard Coles)
136e8cce623b6e4fe0c9e4af605d675dd9d0338c38Torne (Richard Coles)source_set("android") {
146e8cce623b6e4fe0c9e4af605d675dd9d0338c38Torne (Richard Coles)  sources = [
156e8cce623b6e4fe0c9e4af605d675dd9d0338c38Torne (Richard Coles)    "audio_decoder_job.cc",
166e8cce623b6e4fe0c9e4af605d675dd9d0338c38Torne (Richard Coles)    "audio_decoder_job.h",
176e8cce623b6e4fe0c9e4af605d675dd9d0338c38Torne (Richard Coles)    "browser_cdm_factory_android.cc",
186e8cce623b6e4fe0c9e4af605d675dd9d0338c38Torne (Richard Coles)    "demuxer_android.h",
196e8cce623b6e4fe0c9e4af605d675dd9d0338c38Torne (Richard Coles)    "demuxer_stream_player_params.cc",
206e8cce623b6e4fe0c9e4af605d675dd9d0338c38Torne (Richard Coles)    "demuxer_stream_player_params.h",
216e8cce623b6e4fe0c9e4af605d675dd9d0338c38Torne (Richard Coles)    "media_codec_bridge.cc",
226e8cce623b6e4fe0c9e4af605d675dd9d0338c38Torne (Richard Coles)    "media_codec_bridge.h",
236e8cce623b6e4fe0c9e4af605d675dd9d0338c38Torne (Richard Coles)    "media_decoder_job.cc",
246e8cce623b6e4fe0c9e4af605d675dd9d0338c38Torne (Richard Coles)    "media_decoder_job.h",
256e8cce623b6e4fe0c9e4af605d675dd9d0338c38Torne (Richard Coles)    "media_drm_bridge.cc",
266e8cce623b6e4fe0c9e4af605d675dd9d0338c38Torne (Richard Coles)    "media_drm_bridge.h",
276e8cce623b6e4fe0c9e4af605d675dd9d0338c38Torne (Richard Coles)    "media_jni_registrar.cc",
286e8cce623b6e4fe0c9e4af605d675dd9d0338c38Torne (Richard Coles)    "media_jni_registrar.h",
296e8cce623b6e4fe0c9e4af605d675dd9d0338c38Torne (Richard Coles)    "media_player_android.cc",
306e8cce623b6e4fe0c9e4af605d675dd9d0338c38Torne (Richard Coles)    "media_player_android.h",
316e8cce623b6e4fe0c9e4af605d675dd9d0338c38Torne (Richard Coles)    "media_player_bridge.cc",
326e8cce623b6e4fe0c9e4af605d675dd9d0338c38Torne (Richard Coles)    "media_player_bridge.h",
336e8cce623b6e4fe0c9e4af605d675dd9d0338c38Torne (Richard Coles)    "media_player_listener.cc",
346e8cce623b6e4fe0c9e4af605d675dd9d0338c38Torne (Richard Coles)    "media_player_listener.h",
356e8cce623b6e4fe0c9e4af605d675dd9d0338c38Torne (Richard Coles)    "media_player_manager.h",
366e8cce623b6e4fe0c9e4af605d675dd9d0338c38Torne (Richard Coles)    "media_resource_getter.cc",
376e8cce623b6e4fe0c9e4af605d675dd9d0338c38Torne (Richard Coles)    "media_resource_getter.h",
386e8cce623b6e4fe0c9e4af605d675dd9d0338c38Torne (Richard Coles)    "media_source_player.cc",
396e8cce623b6e4fe0c9e4af605d675dd9d0338c38Torne (Richard Coles)    "media_source_player.h",
406e8cce623b6e4fe0c9e4af605d675dd9d0338c38Torne (Richard Coles)    "media_url_interceptor.h",
416e8cce623b6e4fe0c9e4af605d675dd9d0338c38Torne (Richard Coles)    "video_decoder_job.cc",
426e8cce623b6e4fe0c9e4af605d675dd9d0338c38Torne (Richard Coles)    "video_decoder_job.h",
436e8cce623b6e4fe0c9e4af605d675dd9d0338c38Torne (Richard Coles)    "webaudio_media_codec_bridge.cc",
446e8cce623b6e4fe0c9e4af605d675dd9d0338c38Torne (Richard Coles)    "webaudio_media_codec_bridge.h",
456e8cce623b6e4fe0c9e4af605d675dd9d0338c38Torne (Richard Coles)    "webaudio_media_codec_info.h",
466e8cce623b6e4fe0c9e4af605d675dd9d0338c38Torne (Richard Coles)  ]
476e8cce623b6e4fe0c9e4af605d675dd9d0338c38Torne (Richard Coles)  configs += [ "//media:media_config" ]
4803b57e008b61dfcb1fbad3aea950ae0e001748b0Torne (Richard Coles)  deps = [
4903b57e008b61dfcb1fbad3aea950ae0e001748b0Torne (Richard Coles)    ":media_jni_headers",
5003b57e008b61dfcb1fbad3aea950ae0e001748b0Torne (Richard Coles)    "//third_party/widevine/cdm:version_h",
5103b57e008b61dfcb1fbad3aea950ae0e001748b0Torne (Richard Coles)  ]
526e8cce623b6e4fe0c9e4af605d675dd9d0338c38Torne (Richard Coles)}
536e8cce623b6e4fe0c9e4af605d675dd9d0338c38Torne (Richard Coles)
546e8cce623b6e4fe0c9e4af605d675dd9d0338c38Torne (Richard Coles)source_set("unittests") {
551320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tucci  testonly = true
566e8cce623b6e4fe0c9e4af605d675dd9d0338c38Torne (Richard Coles)  sources = [
576e8cce623b6e4fe0c9e4af605d675dd9d0338c38Torne (Richard Coles)    "media_codec_bridge_unittest.cc",
586e8cce623b6e4fe0c9e4af605d675dd9d0338c38Torne (Richard Coles)    "media_drm_bridge_unittest.cc",
596e8cce623b6e4fe0c9e4af605d675dd9d0338c38Torne (Richard Coles)    "media_source_player_unittest.cc",
606e8cce623b6e4fe0c9e4af605d675dd9d0338c38Torne (Richard Coles)  ]
616e8cce623b6e4fe0c9e4af605d675dd9d0338c38Torne (Richard Coles)  deps = [
626e8cce623b6e4fe0c9e4af605d675dd9d0338c38Torne (Richard Coles)    ":android",
636e8cce623b6e4fe0c9e4af605d675dd9d0338c38Torne (Richard Coles)    "//media/base:test_support",
646e8cce623b6e4fe0c9e4af605d675dd9d0338c38Torne (Richard Coles)    "//testing/gmock",
656e8cce623b6e4fe0c9e4af605d675dd9d0338c38Torne (Richard Coles)    "//testing/gtest",
6603b57e008b61dfcb1fbad3aea950ae0e001748b0Torne (Richard Coles)    "//third_party/widevine/cdm:version_h",
676e8cce623b6e4fe0c9e4af605d675dd9d0338c38Torne (Richard Coles)  ]
686e8cce623b6e4fe0c9e4af605d675dd9d0338c38Torne (Richard Coles)  configs += [ "//media:media_config" ]
696e8cce623b6e4fe0c9e4af605d675dd9d0338c38Torne (Richard Coles)}
706e8cce623b6e4fe0c9e4af605d675dd9d0338c38Torne (Richard Coles)
716e8cce623b6e4fe0c9e4af605d675dd9d0338c38Torne (Richard Coles)generate_jni("media_jni_headers") {
726e8cce623b6e4fe0c9e4af605d675dd9d0338c38Torne (Richard Coles)  sources = [
736e8cce623b6e4fe0c9e4af605d675dd9d0338c38Torne (Richard Coles)    "java/src/org/chromium/media/AudioManagerAndroid.java",
746e8cce623b6e4fe0c9e4af605d675dd9d0338c38Torne (Richard Coles)    "java/src/org/chromium/media/AudioRecordInput.java",
756e8cce623b6e4fe0c9e4af605d675dd9d0338c38Torne (Richard Coles)    "java/src/org/chromium/media/MediaCodecBridge.java",
766e8cce623b6e4fe0c9e4af605d675dd9d0338c38Torne (Richard Coles)    "java/src/org/chromium/media/MediaDrmBridge.java",
776e8cce623b6e4fe0c9e4af605d675dd9d0338c38Torne (Richard Coles)    "java/src/org/chromium/media/MediaPlayerBridge.java",
786e8cce623b6e4fe0c9e4af605d675dd9d0338c38Torne (Richard Coles)    "java/src/org/chromium/media/MediaPlayerListener.java",
796e8cce623b6e4fe0c9e4af605d675dd9d0338c38Torne (Richard Coles)    "java/src/org/chromium/media/UsbMidiDeviceAndroid.java",
806e8cce623b6e4fe0c9e4af605d675dd9d0338c38Torne (Richard Coles)    "java/src/org/chromium/media/UsbMidiDeviceFactoryAndroid.java",
816e8cce623b6e4fe0c9e4af605d675dd9d0338c38Torne (Richard Coles)    "java/src/org/chromium/media/WebAudioMediaCodecBridge.java",
826e8cce623b6e4fe0c9e4af605d675dd9d0338c38Torne (Richard Coles)  ]
836e8cce623b6e4fe0c9e4af605d675dd9d0338c38Torne (Richard Coles)  jni_package = "media"
846e8cce623b6e4fe0c9e4af605d675dd9d0338c38Torne (Richard Coles)}
856e8cce623b6e4fe0c9e4af605d675dd9d0338c38Torne (Richard Coles)
866e8cce623b6e4fe0c9e4af605d675dd9d0338c38Torne (Richard Coles)generate_jni("video_capture_jni_headers") {
876e8cce623b6e4fe0c9e4af605d675dd9d0338c38Torne (Richard Coles)  sources = [
886e8cce623b6e4fe0c9e4af605d675dd9d0338c38Torne (Richard Coles)    "java/src/org/chromium/media/VideoCapture.java",
896e8cce623b6e4fe0c9e4af605d675dd9d0338c38Torne (Richard Coles)    "java/src/org/chromium/media/VideoCaptureFactory.java",
906e8cce623b6e4fe0c9e4af605d675dd9d0338c38Torne (Richard Coles)  ]
916e8cce623b6e4fe0c9e4af605d675dd9d0338c38Torne (Richard Coles)  jni_package = "media"
926e8cce623b6e4fe0c9e4af605d675dd9d0338c38Torne (Richard Coles)}
931320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tucci
941320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tuccijava_cpp_template("media_android_imageformat_list") {
951320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tucci  package_name = "org/chromium/media"
961320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tucci  sources = [
971320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tucci    "java/src/org/chromium/media/ImageFormat.template",
981320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tucci  ]
991320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tucci  inputs = [
1001320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tucci    "//media/video/capture/android/imageformat_list.h"
1011320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tucci  ]
1021320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tucci}
1031320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tucci
1041320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tucciandroid_library("media_java") {
1051320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tucci  deps = [
1061320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tucci    "//base:base_java",
1071320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tucci  ]
1081320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tucci
1091320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tucci  srcjar_deps = [
1101320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tucci    ":media_android_imageformat_list",
1111320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tucci  ]
1121320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tucci
1131320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tucci  DEPRECATED_java_in_dir = "java/src"
1141320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tucci}
115