Reland: Web MIDI: split build rules for media/midi
Changes from the first coommit. - Define right dependencies to xdisplaycheck - Fix build rules for midi_unittests_apk to run on Android - Rebase error fixes (build rule deopendency adjustments) Original commit is: https://crrev.com/31624cad1a3b5cf26950b864837ba44b3aa38331 Original description follows: Split MIDI related stuffs from media as a component in build files. Also, MIDI related unit tests are split into midi_unittests. BUG=475869 TEST=git cl try TEST=ninja midi_unittests_apk && ./build/android/test_runner.py gtest midi_unittests Review URL: https://codereview.chromium.org/1065743003 Cr-Commit-Position: refs/heads/master@{#327712}
This commit is contained in:
BUILD.gn
android_webview
build
chromecast
content
media
BUILD.gnOWNERS
base
media.gypmidi
testing/buildbot
chromium.chromiumos.jsonchromium.fyi.jsonchromium.linux.jsonchromium.mac.jsonchromium.memory.fyi.jsonchromium.memory.jsonchromium.webkit.jsonchromium.win.jsonchromium_memory_trybot.jsonchromium_trybot.json
tools/valgrind
4
BUILD.gn
4
BUILD.gn
@ -84,6 +84,7 @@ group("both_gn_and_gyp") {
|
||||
"//jingle:jingle_unittests",
|
||||
"//media:media_unittests",
|
||||
"//media/cast:cast_unittests",
|
||||
"//media/midi:midi_unittests",
|
||||
"//mojo",
|
||||
"//mojo/application",
|
||||
"//mojo/common:mojo_common_unittests",
|
||||
@ -740,8 +741,9 @@ if (is_linux) {
|
||||
"//ipc:ipc_tests", # PASSES 2/25/2015
|
||||
"//ipc/mojo:ipc_mojo_unittests", # PASSES 2/25/2015
|
||||
"//jingle:jingle_unittests", # PASSES 2/25/2015
|
||||
"//media/cast:cast_unittests", # PASSES 2/25/2015
|
||||
"//media:media_unittests", # PASSES 3/3/2015
|
||||
"//media/cast:cast_unittests", # PASSES 2/25/2015
|
||||
"//media/midi:midi_unittests", # PASSES 4/10/2015
|
||||
"//mojo/common:mojo_common_unittests", # PASSES 2/25/2015
|
||||
"//net:net_unittests", # PASSES 2/25/2015
|
||||
"//ppapi:ppapi_unittests", # PASSES 2/26/2015
|
||||
|
@ -181,6 +181,7 @@
|
||||
'../gpu/gpu.gyp:gles2_implementation',
|
||||
'../gpu/skia_bindings/skia_bindings.gyp:gpu_skia_bindings',
|
||||
'../media/media.gyp:media',
|
||||
'../media/midi/midi.gyp:midi',
|
||||
'../printing/printing.gyp:printing',
|
||||
'../skia/skia.gyp:skia',
|
||||
'../third_party/WebKit/public/blink.gyp:blink',
|
||||
|
@ -124,6 +124,7 @@
|
||||
'../jingle/jingle.gyp:*',
|
||||
'../media/cast/cast.gyp:*',
|
||||
'../media/media.gyp:*',
|
||||
'../media/midi/midi.gyp:*',
|
||||
'../mojo/mojo.gyp:*',
|
||||
'../mojo/mojo_base.gyp:*',
|
||||
'../ppapi/ppapi.gyp:*',
|
||||
@ -344,6 +345,7 @@
|
||||
'../jingle/jingle.gyp:jingle_unittests',
|
||||
'../media/cast/cast.gyp:cast_unittests',
|
||||
'../media/media.gyp:media_unittests',
|
||||
'../media/midi/midi.gyp:midi_unittests',
|
||||
'../mojo/mojo.gyp:mojo',
|
||||
'../ppapi/ppapi_internal.gyp:ppapi_unittests',
|
||||
'../remoting/remoting.gyp:remoting_unittests',
|
||||
@ -567,6 +569,7 @@
|
||||
'../content/content_shell_and_tests.gyp:content_shell',
|
||||
'../gpu/gpu.gyp:gpu_perftests',
|
||||
'../media/media.gyp:media_perftests',
|
||||
'../media/midi/midi.gyp:midi_unittests',
|
||||
'../tools/perf/clear_system_cache/clear_system_cache.gyp:*',
|
||||
'../tools/telemetry/telemetry.gyp:*',
|
||||
],
|
||||
@ -681,6 +684,7 @@
|
||||
'../content/content_shell_and_tests.gyp:content_browsertests',
|
||||
'../content/content_shell_and_tests.gyp:content_unittests',
|
||||
'../media/media.gyp:media_unittests',
|
||||
'../media/midi/midi.gyp:midi_unittests',
|
||||
'../third_party/webrtc/tools/tools.gyp:frame_analyzer',
|
||||
'../third_party/webrtc/tools/tools.gyp:rgba_to_i420_converter',
|
||||
],
|
||||
@ -814,6 +818,8 @@
|
||||
'../ipc/ipc.gyp:ipc_tests',
|
||||
'../media/media.gyp:media_perftests_apk',
|
||||
'../media/media.gyp:media_unittests',
|
||||
'../media/midi/midi.gyp:midi_unittests_apk',
|
||||
'../media/midi/midi.gyp:midi_unittests',
|
||||
'../net/net.gyp:net_unittests',
|
||||
'../sandbox/sandbox.gyp:sandbox_linux_unittests_deps',
|
||||
'../skia/skia_tests.gyp:skia_unittests',
|
||||
@ -843,6 +849,7 @@
|
||||
'../gpu/gpu.gyp:gpu_unittests_apk',
|
||||
'../ipc/ipc.gyp:ipc_tests_apk',
|
||||
'../media/media.gyp:media_unittests_apk',
|
||||
'../media/midi/midi.gyp:midi_unittests_apk',
|
||||
'../net/net.gyp:net_unittests_apk',
|
||||
'../sandbox/sandbox.gyp:sandbox_linux_jni_unittests_apk',
|
||||
'../skia/skia_tests.gyp:skia_unittests_apk',
|
||||
@ -929,6 +936,7 @@
|
||||
'../ipc/mojo/ipc_mojo.gyp:ipc_mojo_unittests',
|
||||
'../jingle/jingle.gyp:jingle_unittests',
|
||||
'../media/media.gyp:media_unittests',
|
||||
'../media/midi/midi.gyp:midi_unittests',
|
||||
'../ppapi/ppapi_internal.gyp:ppapi_unittests',
|
||||
'../printing/printing.gyp:printing_unittests',
|
||||
'../remoting/remoting.gyp:remoting_unittests',
|
||||
@ -968,6 +976,7 @@
|
||||
'../ipc/mojo/ipc_mojo.gyp:ipc_mojo_unittests',
|
||||
'../jingle/jingle.gyp:jingle_unittests',
|
||||
'../media/media.gyp:media_unittests',
|
||||
'../media/midi/midi.gyp:midi_unittests',
|
||||
'../ppapi/ppapi_internal.gyp:ppapi_unittests',
|
||||
'../printing/printing.gyp:printing_unittests',
|
||||
'../remoting/remoting.gyp:remoting_unittests',
|
||||
@ -995,6 +1004,7 @@
|
||||
'../ipc/ipc.gyp:ipc_tests',
|
||||
'../jingle/jingle.gyp:jingle_unittests',
|
||||
'../media/media.gyp:media_unittests',
|
||||
'../media/midi/midi.gyp:midi_unittests',
|
||||
'../net/net.gyp:net_unittests',
|
||||
'../printing/printing.gyp:printing_unittests',
|
||||
'../remoting/remoting.gyp:remoting_unittests',
|
||||
@ -1018,6 +1028,7 @@
|
||||
'../ipc/ipc.gyp:ipc_tests',
|
||||
'../jingle/jingle.gyp:jingle_unittests',
|
||||
'../media/media.gyp:media_unittests',
|
||||
'../media/midi/midi.gyp:midi_unittests',
|
||||
'../net/net.gyp:net_unittests',
|
||||
'../google_apis/gcm/gcm.gyp:gcm_unit_tests',
|
||||
'../printing/printing.gyp:printing_unittests',
|
||||
@ -1069,6 +1080,7 @@
|
||||
'../ipc/mojo/ipc_mojo.gyp:ipc_mojo_unittests',
|
||||
'../jingle/jingle.gyp:jingle_unittests',
|
||||
'../media/media.gyp:media_unittests',
|
||||
'../media/midi/midi.gyp:midi_unittests',
|
||||
'../ppapi/ppapi_internal.gyp:ppapi_unittests',
|
||||
'../printing/printing.gyp:printing_unittests',
|
||||
'../remoting/remoting.gyp:remoting_unittests',
|
||||
@ -1108,6 +1120,7 @@
|
||||
'../ipc/ipc.gyp:ipc_tests',
|
||||
'../jingle/jingle.gyp:jingle_unittests',
|
||||
'../media/media.gyp:media_unittests',
|
||||
'../media/midi/midi.gyp:midi_unittests',
|
||||
'../net/net.gyp:net_unittests',
|
||||
'../printing/printing.gyp:printing_unittests',
|
||||
'../remoting/remoting.gyp:remoting_unittests',
|
||||
@ -1166,6 +1179,7 @@
|
||||
'../jingle/jingle.gyp:jingle_unittests',
|
||||
'../media/cast/cast.gyp:cast_unittests',
|
||||
'../media/media.gyp:media_unittests',
|
||||
'../media/midi/midi.gyp:midi_unittests',
|
||||
'../mojo/mojo.gyp:mojo',
|
||||
'../net/net.gyp:net_unittests',
|
||||
'../printing/printing.gyp:printing_unittests',
|
||||
@ -1234,6 +1248,7 @@
|
||||
'../chrome/chrome.gyp:sync_integration_tests',
|
||||
'../ipc/ipc.gyp:ipc_tests',
|
||||
'../media/media.gyp:media_unittests',
|
||||
'../media/midi/midi.gyp:midi_unittests',
|
||||
'../net/net.gyp:net_unittests_run',
|
||||
'../printing/printing.gyp:printing_unittests',
|
||||
'../sql/sql.gyp:sql_unittests',
|
||||
|
@ -32,6 +32,7 @@ STABLE_TEST_SUITES = [
|
||||
'gpu_unittests',
|
||||
'ipc_tests',
|
||||
'media_unittests',
|
||||
'midi_unittests',
|
||||
'net_unittests',
|
||||
'sandbox_linux_unittests',
|
||||
'skia_unittests',
|
||||
|
@ -37,6 +37,7 @@ ISOLATE_FILE_PATHS = {
|
||||
'content_unittests': 'content/content_unittests.isolate',
|
||||
'media_perftests': 'media/media_perftests.isolate',
|
||||
'media_unittests': 'media/media_unittests.isolate',
|
||||
'midi_unittests': 'media/midi/midi_unittests.isolate',
|
||||
'net_unittests': 'net/net_unittests.isolate',
|
||||
'sql_unittests': 'sql/sql_unittests.isolate',
|
||||
'sync_unit_tests': 'sync/sync_unit_tests.isolate',
|
||||
|
@ -102,6 +102,7 @@
|
||||
'../media/media.gyp:ffmpeg_regression_tests', # TODO(GYP) this should be conditional on media_use_ffmpeg
|
||||
'../media/media.gyp:media_perftests',
|
||||
'../media/media.gyp:media_unittests',
|
||||
'../media/midi/midi.gyp:midi_unittests',
|
||||
'../media/cast/cast.gyp:cast_benchmarks',
|
||||
'../media/cast/cast.gyp:cast_unittests',
|
||||
'../media/cast/cast.gyp:generate_barcode_video',
|
||||
@ -526,6 +527,7 @@
|
||||
'../gpu/gpu.gyp:gpu_unittests_run',
|
||||
'../media/cast/cast.gyp:cast_unittests_run',
|
||||
'../media/media.gyp:media_unittests_run',
|
||||
'../media/midi/midi.gyp:midi_unittests_run',
|
||||
'../net/net.gyp:net_unittests_run',
|
||||
'../sql/sql.gyp:sql_unittests_run',
|
||||
'../third_party/cacheinvalidation/cacheinvalidation.gyp:cacheinvalidation_unittests_run',
|
||||
|
@ -45,6 +45,7 @@
|
||||
'../ipc/ipc.gyp:ipc_tests',
|
||||
'../jingle/jingle.gyp:jingle_unittests',
|
||||
'../media/media.gyp:media_unittests',
|
||||
'../media/midi/midi.gyp:midi_unittests',
|
||||
'../net/net.gyp:net_unittests',
|
||||
'../sandbox/sandbox.gyp:sandbox_linux_unittests',
|
||||
'../sql/sql.gyp:sql_unittests',
|
||||
@ -188,6 +189,7 @@
|
||||
'../cc/cc_tests.gyp:cc_unittests_apk',
|
||||
'../ipc/ipc.gyp:ipc_tests_apk',
|
||||
'../media/media.gyp:media_unittests_apk',
|
||||
'../media/midi/midi.gyp:midi_unittests_apk',
|
||||
'../net/net.gyp:net_unittests_apk',
|
||||
'../sandbox/sandbox.gyp:sandbox_linux_jni_unittests_apk',
|
||||
'../sql/sql.gyp:sql_unittests_apk',
|
||||
|
@ -7,4 +7,5 @@ include_rules = [
|
||||
"+gin/public/snapshot_fd_data.h",
|
||||
"+gin/v8_initializer.h",
|
||||
"+media/base", # For initializing media library.
|
||||
"+media/midi", # For initializing midi library.
|
||||
]
|
||||
|
@ -24,6 +24,7 @@
|
||||
#include "content/public/common/result_codes.h"
|
||||
#include "device/vibration/android/vibration_jni_registrar.h"
|
||||
#include "media/base/android/media_jni_registrar.h"
|
||||
#include "media/midi/midi_jni_registrar.h"
|
||||
#include "net/android/net_jni_registrar.h"
|
||||
#include "ui/android/ui_android_jni_registrar.h"
|
||||
#include "ui/base/android/ui_base_jni_registrar.h"
|
||||
@ -70,6 +71,9 @@ bool EnsureJniRegistered(JNIEnv* env) {
|
||||
if (!media::RegisterJni(env))
|
||||
return false;
|
||||
|
||||
if (!media::midi::RegisterJni(env))
|
||||
return false;
|
||||
|
||||
if (!ui::RegisterUIAndroidJni(env))
|
||||
return false;
|
||||
|
||||
|
@ -177,6 +177,7 @@ source_set("common") {
|
||||
"//gpu/ipc",
|
||||
"//gpu/skia_bindings",
|
||||
"//media",
|
||||
"//media/midi",
|
||||
"//media:shared_memory_support",
|
||||
"//mojo/environment:chromium",
|
||||
"//sandbox",
|
||||
|
@ -594,6 +594,7 @@
|
||||
'../ipc/mojo/ipc_mojo.gyp:ipc_mojo',
|
||||
'../media/media.gyp:media',
|
||||
'../media/media.gyp:shared_memory_support',
|
||||
'../media/midi/midi.gyp:midi',
|
||||
'../mojo/mojo_base.gyp:mojo_environment_chromium',
|
||||
'../storage/storage_common.gyp:storage_common',
|
||||
'../third_party/WebKit/public/blink.gyp:blink',
|
||||
|
@ -869,6 +869,7 @@
|
||||
'../ipc/mojo/ipc_mojo.gyp:*',
|
||||
'../media/blink/media_blink.gyp:media_blink',
|
||||
'../media/media.gyp:media',
|
||||
'../media/midi/midi.gyp:midi',
|
||||
'../ppapi/ppapi_internal.gyp:ppapi_host',
|
||||
'../ppapi/ppapi_internal.gyp:ppapi_proxy',
|
||||
'../ppapi/ppapi_internal.gyp:ppapi_shared',
|
||||
|
@ -497,6 +497,7 @@ if (!is_mac) { # TODO(GYP) enable on Mac once it links.
|
||||
"//media:shared_memory_support",
|
||||
"//media/audio:test_support",
|
||||
"//media/base:test_support",
|
||||
"//media/midi:midi",
|
||||
"//storage/browser",
|
||||
"//storage/common",
|
||||
"//third_party/WebKit/public:blink",
|
||||
|
@ -32,9 +32,6 @@ config("media_config") {
|
||||
if (use_cras) {
|
||||
defines += [ "USE_CRAS" ]
|
||||
}
|
||||
if (use_alsa) {
|
||||
defines += [ "USE_ALSA" ]
|
||||
}
|
||||
}
|
||||
|
||||
config("media_implementation") {
|
||||
@ -178,30 +175,6 @@ component("media") {
|
||||
"formats/webm/webm_video_client.h",
|
||||
"formats/webm/webm_webvtt_parser.cc",
|
||||
"formats/webm/webm_webvtt_parser.h",
|
||||
"midi/midi_manager.cc",
|
||||
"midi/midi_manager.h",
|
||||
"midi/midi_manager_mac.cc",
|
||||
"midi/midi_manager_mac.h",
|
||||
"midi/midi_manager_usb.cc",
|
||||
"midi/midi_manager_usb.h",
|
||||
"midi/midi_manager_win.cc",
|
||||
"midi/midi_manager_win.h",
|
||||
"midi/midi_message_queue.cc",
|
||||
"midi/midi_message_queue.h",
|
||||
"midi/midi_message_util.cc",
|
||||
"midi/midi_message_util.h",
|
||||
"midi/midi_port_info.cc",
|
||||
"midi/midi_port_info.h",
|
||||
"midi/midi_scheduler.cc",
|
||||
"midi/midi_scheduler.h",
|
||||
"midi/usb_midi_descriptor_parser.cc",
|
||||
"midi/usb_midi_descriptor_parser.h",
|
||||
"midi/usb_midi_device.h",
|
||||
"midi/usb_midi_input_stream.cc",
|
||||
"midi/usb_midi_input_stream.h",
|
||||
"midi/usb_midi_jack.h",
|
||||
"midi/usb_midi_output_stream.cc",
|
||||
"midi/usb_midi_output_stream.h",
|
||||
"renderers/audio_renderer_impl.cc",
|
||||
"renderers/audio_renderer_impl.h",
|
||||
"renderers/gpu_video_accelerator_factories.h",
|
||||
@ -337,11 +310,6 @@ component("media") {
|
||||
|
||||
if (is_android) {
|
||||
sources += [
|
||||
"midi/midi_manager_android.cc",
|
||||
"midi/usb_midi_device_android.cc",
|
||||
"midi/usb_midi_device_android.h",
|
||||
"midi/usb_midi_device_factory_android.cc",
|
||||
"midi/usb_midi_device_factory_android.h",
|
||||
"video/capture/android/video_capture_device_android.cc",
|
||||
"video/capture/android/video_capture_device_android.h",
|
||||
"video/capture/android/video_capture_device_factory_android.cc",
|
||||
@ -370,15 +338,6 @@ component("media") {
|
||||
]
|
||||
}
|
||||
|
||||
if (use_alsa && use_udev) {
|
||||
libs += [ "asound" ]
|
||||
sources += [
|
||||
"midi/midi_manager_alsa.cc",
|
||||
"midi/midi_manager_alsa.h",
|
||||
]
|
||||
deps += [ "//device/udev_linux" ]
|
||||
}
|
||||
|
||||
# A simple WebM encoder for animated avatars on ChromeOS.
|
||||
|
||||
if (use_ozone) {
|
||||
@ -402,7 +361,6 @@ component("media") {
|
||||
"//third_party/decklink",
|
||||
]
|
||||
libs += [
|
||||
"CoreMIDI.framework",
|
||||
"CoreVideo.framework",
|
||||
"OpenGL.framework",
|
||||
"QTKit.framework",
|
||||
@ -421,8 +379,6 @@ component("media") {
|
||||
}
|
||||
|
||||
if (is_win) {
|
||||
deps += [ "//device/usb" ]
|
||||
|
||||
libs += [
|
||||
"mf.lib",
|
||||
"mfplat.lib",
|
||||
@ -575,13 +531,6 @@ test("media_unittests") {
|
||||
"formats/webm/webm_parser_unittest.cc",
|
||||
"formats/webm/webm_tracks_parser_unittest.cc",
|
||||
"formats/webm/webm_webvtt_parser_unittest.cc",
|
||||
"midi/midi_manager_unittest.cc",
|
||||
"midi/midi_manager_usb_unittest.cc",
|
||||
"midi/midi_message_queue_unittest.cc",
|
||||
"midi/midi_message_util_unittest.cc",
|
||||
"midi/usb_midi_descriptor_parser_unittest.cc",
|
||||
"midi/usb_midi_input_stream_unittest.cc",
|
||||
"midi/usb_midi_output_stream_unittest.cc",
|
||||
"renderers/audio_renderer_impl_unittest.cc",
|
||||
"renderers/renderer_impl_unittest.cc",
|
||||
"renderers/video_renderer_impl_unittest.cc",
|
||||
@ -669,18 +618,8 @@ test("media_unittests") {
|
||||
}
|
||||
|
||||
if (is_mac) {
|
||||
sources += [
|
||||
"midi/midi_manager_mac_unittest.cc",
|
||||
"video/capture/mac/video_capture_device_factory_mac_unittest.mm",
|
||||
]
|
||||
libs = [
|
||||
# Required by midi_manager_mac_unittest.cc.
|
||||
"CoreMIDI.framework",
|
||||
]
|
||||
}
|
||||
|
||||
if (use_alsa && use_udev) {
|
||||
sources += [ "midi/midi_manager_alsa_unittest.cc" ]
|
||||
sources +=
|
||||
[ "video/capture/mac/video_capture_device_factory_mac_unittest.mm" ]
|
||||
}
|
||||
|
||||
# include_dirs += [
|
||||
|
@ -6,10 +6,5 @@ scherkus@chromium.org
|
||||
wolenetz@chromium.org
|
||||
xhwang@chromium.org
|
||||
|
||||
# Build rules for Web MIDI
|
||||
per-file BUILD.gn=toyoshim@chromium.org
|
||||
per-file *.gyp=toyoshim@chromium.org
|
||||
per-file *.gypi=toyoshim@chromium.org
|
||||
|
||||
per-file *.isolate=csharp@chromium.org
|
||||
per-file *.isolate=maruel@chromium.org
|
||||
|
@ -87,8 +87,6 @@ generate_jni("media_jni_headers") {
|
||||
"java/src/org/chromium/media/MediaDrmBridge.java",
|
||||
"java/src/org/chromium/media/MediaPlayerBridge.java",
|
||||
"java/src/org/chromium/media/MediaPlayerListener.java",
|
||||
"java/src/org/chromium/media/UsbMidiDeviceAndroid.java",
|
||||
"java/src/org/chromium/media/UsbMidiDeviceFactoryAndroid.java",
|
||||
"java/src/org/chromium/media/WebAudioMediaCodecBridge.java",
|
||||
]
|
||||
jni_package = "media"
|
||||
|
@ -15,8 +15,6 @@
|
||||
#include "media/base/android/media_player_bridge.h"
|
||||
#include "media/base/android/media_player_listener.h"
|
||||
#include "media/base/android/webaudio_media_codec_bridge.h"
|
||||
#include "media/midi/usb_midi_device_android.h"
|
||||
#include "media/midi/usb_midi_device_factory_android.h"
|
||||
#include "media/video/capture/android/video_capture_device_android.h"
|
||||
#include "media/video/capture/android/video_capture_device_factory_android.h"
|
||||
|
||||
@ -35,10 +33,6 @@ static base::android::RegistrationMethod kMediaRegisteredMethods[] = {
|
||||
MediaPlayerBridge::RegisterMediaPlayerBridge },
|
||||
{ "MediaPlayerListener",
|
||||
MediaPlayerListener::RegisterMediaPlayerListener },
|
||||
{ "UsbMidiDevice",
|
||||
UsbMidiDeviceAndroid::RegisterUsbMidiDevice },
|
||||
{ "UsbMidiDeviceFactory",
|
||||
UsbMidiDeviceFactoryAndroid::RegisterUsbMidiDeviceFactory },
|
||||
{ "VideoCaptureDevice",
|
||||
VideoCaptureDeviceAndroid::RegisterVideoCaptureDevice },
|
||||
{ "VideoCaptureDeviceFactory",
|
||||
|
@ -512,37 +512,6 @@
|
||||
'formats/webm/webm_video_client.cc',
|
||||
'formats/webm/webm_video_client.h',
|
||||
'formats/webm/webm_webvtt_parser.cc',
|
||||
'midi/midi_manager.cc',
|
||||
'midi/midi_manager.h',
|
||||
'midi/midi_manager_alsa.cc',
|
||||
'midi/midi_manager_alsa.h',
|
||||
'midi/midi_manager_android.cc',
|
||||
'midi/midi_manager_mac.cc',
|
||||
'midi/midi_manager_mac.h',
|
||||
'midi/midi_manager_usb.cc',
|
||||
'midi/midi_manager_usb.h',
|
||||
'midi/midi_manager_win.cc',
|
||||
'midi/midi_manager_win.h',
|
||||
'midi/midi_message_queue.cc',
|
||||
'midi/midi_message_queue.h',
|
||||
'midi/midi_message_util.cc',
|
||||
'midi/midi_message_util.h',
|
||||
'midi/midi_port_info.cc',
|
||||
'midi/midi_port_info.h',
|
||||
'midi/midi_scheduler.cc',
|
||||
'midi/midi_scheduler.h',
|
||||
'midi/usb_midi_descriptor_parser.cc',
|
||||
'midi/usb_midi_descriptor_parser.h',
|
||||
'midi/usb_midi_device.h',
|
||||
'midi/usb_midi_device_android.cc',
|
||||
'midi/usb_midi_device_android.h',
|
||||
'midi/usb_midi_device_factory_android.cc',
|
||||
'midi/usb_midi_device_factory_android.h',
|
||||
'midi/usb_midi_input_stream.cc',
|
||||
'midi/usb_midi_input_stream.h',
|
||||
'midi/usb_midi_jack.h',
|
||||
'midi/usb_midi_output_stream.cc',
|
||||
'midi/usb_midi_output_stream.h',
|
||||
'ozone/media_ozone_platform.cc',
|
||||
'ozone/media_ozone_platform.h',
|
||||
'renderers/audio_renderer_impl.cc',
|
||||
@ -956,7 +925,6 @@
|
||||
'$(SDKROOT)/System/Library/Frameworks/AudioToolbox.framework',
|
||||
'$(SDKROOT)/System/Library/Frameworks/AudioUnit.framework',
|
||||
'$(SDKROOT)/System/Library/Frameworks/CoreAudio.framework',
|
||||
'$(SDKROOT)/System/Library/Frameworks/CoreMIDI.framework',
|
||||
'$(SDKROOT)/System/Library/Frameworks/CoreVideo.framework',
|
||||
'$(SDKROOT)/System/Library/Frameworks/OpenGL.framework',
|
||||
'$(SDKROOT)/System/Library/Frameworks/QTKit.framework',
|
||||
@ -964,9 +932,6 @@
|
||||
},
|
||||
}],
|
||||
['OS=="win"', {
|
||||
'dependencies': [
|
||||
'../device/usb/usb.gyp:device_usb',
|
||||
],
|
||||
'link_settings': {
|
||||
'libraries': [
|
||||
'-lmf.lib',
|
||||
@ -1093,16 +1058,6 @@
|
||||
'filters/source_buffer_platform.h',
|
||||
]
|
||||
}],
|
||||
['use_udev==1', {
|
||||
'dependencies': [
|
||||
'../device/udev_linux/udev.gyp:udev_linux',
|
||||
],
|
||||
}, { # use_udev==0
|
||||
'sources!': [
|
||||
'midi/midi_manager_alsa.cc',
|
||||
'midi/midi_manager_alsa.h',
|
||||
],
|
||||
}],
|
||||
], # conditions
|
||||
'target_conditions': [
|
||||
['OS == "ios" and _toolset != "host"', {
|
||||
@ -1274,13 +1229,6 @@
|
||||
'formats/webm/webm_parser_unittest.cc',
|
||||
'formats/webm/webm_tracks_parser_unittest.cc',
|
||||
'formats/webm/webm_webvtt_parser_unittest.cc',
|
||||
'midi/midi_manager_unittest.cc',
|
||||
'midi/midi_manager_usb_unittest.cc',
|
||||
'midi/midi_message_queue_unittest.cc',
|
||||
'midi/midi_message_util_unittest.cc',
|
||||
'midi/usb_midi_descriptor_parser_unittest.cc',
|
||||
'midi/usb_midi_input_stream_unittest.cc',
|
||||
'midi/usb_midi_output_stream_unittest.cc',
|
||||
'renderers/audio_renderer_impl_unittest.cc',
|
||||
'renderers/renderer_impl_unittest.cc',
|
||||
'renderers/video_renderer_impl_unittest.cc',
|
||||
@ -1413,15 +1361,9 @@
|
||||
}],
|
||||
['OS=="mac"', {
|
||||
'sources': [
|
||||
'midi/midi_manager_mac_unittest.cc',
|
||||
'video/capture/mac/video_capture_device_factory_mac_unittest.mm',
|
||||
]
|
||||
}],
|
||||
['use_alsa==1 and use_udev==1', {
|
||||
'sources': [
|
||||
'midi/midi_manager_alsa_unittest.cc',
|
||||
]
|
||||
}],
|
||||
['use_x11==1', {
|
||||
'dependencies': [
|
||||
'../tools/xdisplaycheck/xdisplaycheck.gyp:xdisplaycheck',
|
||||
@ -1705,8 +1647,6 @@
|
||||
'base/android/java/src/org/chromium/media/MediaDrmBridge.java',
|
||||
'base/android/java/src/org/chromium/media/MediaPlayerBridge.java',
|
||||
'base/android/java/src/org/chromium/media/MediaPlayerListener.java',
|
||||
'base/android/java/src/org/chromium/media/UsbMidiDeviceAndroid.java',
|
||||
'base/android/java/src/org/chromium/media/UsbMidiDeviceFactoryAndroid.java',
|
||||
'base/android/java/src/org/chromium/media/WebAudioMediaCodecBridge.java',
|
||||
],
|
||||
'variables': {
|
||||
|
172
media/midi/BUILD.gn
Normal file
172
media/midi/BUILD.gn
Normal file
@ -0,0 +1,172 @@
|
||||
# Copyright 2015 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("//build/config/android/config.gni")
|
||||
import("//build/config/features.gni")
|
||||
import("//build/config/ui.gni")
|
||||
import("//media/media_options.gni")
|
||||
import("//testing/test.gni")
|
||||
|
||||
if (is_android) {
|
||||
# For generate_jni().
|
||||
import("//build/config/android/rules.gni")
|
||||
}
|
||||
|
||||
# Common configuration for targets in the media/midi directory.
|
||||
config("midi_config") {
|
||||
if (use_alsa) {
|
||||
defines = [
|
||||
"USE_ALSA",
|
||||
"USE_UDEV",
|
||||
]
|
||||
}
|
||||
|
||||
visibility = [ ":*" ]
|
||||
}
|
||||
|
||||
# USB MIDI specific source files that are used in Android port, and unit tests.
|
||||
source_set("usb_midi") {
|
||||
sources = [
|
||||
"midi_manager_usb.cc",
|
||||
"midi_manager_usb.h",
|
||||
"usb_midi_descriptor_parser.cc",
|
||||
"usb_midi_descriptor_parser.h",
|
||||
"usb_midi_device.h",
|
||||
"usb_midi_input_stream.cc",
|
||||
"usb_midi_input_stream.h",
|
||||
"usb_midi_jack.h",
|
||||
"usb_midi_output_stream.cc",
|
||||
"usb_midi_output_stream.h",
|
||||
]
|
||||
|
||||
defines = [ "MEDIA_IMPLEMENTATION" ]
|
||||
deps = [
|
||||
"//base",
|
||||
]
|
||||
}
|
||||
|
||||
# Android specific Java source files that are used to generate jni header files.
|
||||
if (is_android) {
|
||||
android_library("midi_java") {
|
||||
deps = [
|
||||
"//base:base_java",
|
||||
]
|
||||
|
||||
DEPRECATED_java_in_dir = "java/src"
|
||||
}
|
||||
|
||||
generate_jni("midi_jni_headers") {
|
||||
sources = [
|
||||
"java/src/org/chromium/media/midi/UsbMidiDeviceAndroid.java",
|
||||
"java/src/org/chromium/media/midi/UsbMidiDeviceFactoryAndroid.java",
|
||||
]
|
||||
jni_package = "media/midi"
|
||||
}
|
||||
}
|
||||
|
||||
component("midi") {
|
||||
sources = [
|
||||
"midi_manager.cc",
|
||||
"midi_manager.h",
|
||||
"midi_manager_mac.cc",
|
||||
"midi_manager_mac.h",
|
||||
"midi_manager_win.cc",
|
||||
"midi_manager_win.h",
|
||||
"midi_message_queue.cc",
|
||||
"midi_message_queue.h",
|
||||
"midi_message_util.cc",
|
||||
"midi_message_util.h",
|
||||
"midi_port_info.cc",
|
||||
"midi_port_info.h",
|
||||
"midi_scheduler.cc",
|
||||
"midi_scheduler.h",
|
||||
]
|
||||
|
||||
configs += [ ":midi_config" ]
|
||||
|
||||
defines = [ "MEDIA_IMPLEMENTATION" ]
|
||||
deps = []
|
||||
libs = []
|
||||
|
||||
if (is_android) {
|
||||
sources += [
|
||||
"midi_jni_registrar.cc",
|
||||
"midi_jni_registrar.h",
|
||||
"midi_manager_android.cc",
|
||||
"usb_midi_device_android.cc",
|
||||
"usb_midi_device_android.h",
|
||||
"usb_midi_device_factory_android.cc",
|
||||
"usb_midi_device_factory_android.h",
|
||||
]
|
||||
|
||||
deps += [
|
||||
"//base:i18n",
|
||||
":midi_jni_headers",
|
||||
":usb_midi",
|
||||
]
|
||||
}
|
||||
|
||||
if (is_mac) {
|
||||
libs += [
|
||||
"CoreAudio.framework",
|
||||
"CoreMIDI.framework",
|
||||
]
|
||||
}
|
||||
|
||||
if (is_win) {
|
||||
deps += [ "//device/usb" ]
|
||||
}
|
||||
|
||||
if (use_alsa && use_udev) {
|
||||
deps += [
|
||||
"//crypto",
|
||||
"//crypto:platform",
|
||||
]
|
||||
libs += [ "asound" ]
|
||||
sources += [
|
||||
"midi_manager_alsa.cc",
|
||||
"midi_manager_alsa.h",
|
||||
]
|
||||
}
|
||||
|
||||
if (use_udev) {
|
||||
deps += [ "//device/udev_linux" ]
|
||||
}
|
||||
}
|
||||
|
||||
test("midi_unittests") {
|
||||
sources = [
|
||||
"midi_manager_unittest.cc",
|
||||
"midi_manager_usb_unittest.cc",
|
||||
"midi_message_queue_unittest.cc",
|
||||
"midi_message_util_unittest.cc",
|
||||
"usb_midi_descriptor_parser_unittest.cc",
|
||||
"usb_midi_input_stream_unittest.cc",
|
||||
"usb_midi_output_stream_unittest.cc",
|
||||
]
|
||||
|
||||
configs += [ ":midi_config" ]
|
||||
deps = [
|
||||
":midi",
|
||||
"//base/test/:run_all_unittests",
|
||||
"//base/test/:test_support",
|
||||
"//testing/gtest",
|
||||
]
|
||||
|
||||
if (!is_android) {
|
||||
deps += [ ":usb_midi" ]
|
||||
}
|
||||
|
||||
if (is_mac) {
|
||||
sources += [ "midi_manager_mac_unittest.cc" ]
|
||||
}
|
||||
|
||||
if (use_alsa && use_udev) {
|
||||
sources += [ "midi_manager_alsa_unittest.cc" ]
|
||||
}
|
||||
|
||||
if (use_x11) {
|
||||
deps += [ "//tools/xdisplaycheck" ]
|
||||
}
|
||||
}
|
@ -2,7 +2,7 @@
|
||||
// Use of this source code is governed by a BSD-style license that can be
|
||||
// found in the LICENSE file.
|
||||
|
||||
package org.chromium.media;
|
||||
package org.chromium.media.midi;
|
||||
|
||||
import android.annotation.TargetApi;
|
||||
import android.hardware.usb.UsbConstants;
|
||||
@ -28,7 +28,7 @@ import java.util.Map;
|
||||
* Owned by its native counterpart declared in usb_midi_device_android.h.
|
||||
* Refer to that class for general comments.
|
||||
*/
|
||||
@JNINamespace("media")
|
||||
@JNINamespace("media::midi")
|
||||
class UsbMidiDeviceAndroid {
|
||||
/**
|
||||
* A connection handle for this device.
|
||||
@ -184,14 +184,14 @@ class UsbMidiDeviceAndroid {
|
||||
*/
|
||||
private void postOnDataEvent(final int endpointNumber, final byte[] bs) {
|
||||
mHandler.post(new Runnable() {
|
||||
@Override
|
||||
public void run() {
|
||||
if (mIsClosed) {
|
||||
return;
|
||||
}
|
||||
nativeOnData(mNativePointer, endpointNumber, bs);
|
||||
@Override
|
||||
public void run() {
|
||||
if (mIsClosed) {
|
||||
return;
|
||||
}
|
||||
});
|
||||
nativeOnData(mNativePointer, endpointNumber, bs);
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
UsbDevice getUsbDevice() {
|
||||
@ -321,7 +321,6 @@ class UsbMidiDeviceAndroid {
|
||||
return position;
|
||||
}
|
||||
|
||||
private static native void nativeOnData(long nativeUsbMidiDeviceAndroid,
|
||||
int endpointNumber,
|
||||
byte[] data);
|
||||
private static native void nativeOnData(
|
||||
long nativeUsbMidiDeviceAndroid, int endpointNumber, byte[] data);
|
||||
}
|
@ -2,7 +2,7 @@
|
||||
// Use of this source code is governed by a BSD-style license that can be
|
||||
// found in the LICENSE file.
|
||||
|
||||
package org.chromium.media;
|
||||
package org.chromium.media.midi;
|
||||
|
||||
import android.app.PendingIntent;
|
||||
import android.content.BroadcastReceiver;
|
||||
@ -28,7 +28,7 @@ import java.util.Set;
|
||||
* Owned by its native counterpart declared in
|
||||
* usb_midi_device_factory_android.h. Refer to that class for general comments.
|
||||
*/
|
||||
@JNINamespace("media")
|
||||
@JNINamespace("media::midi")
|
||||
class UsbMidiDeviceFactoryAndroid {
|
||||
/**
|
||||
* The UsbManager of this system.
|
||||
@ -60,8 +60,7 @@ class UsbMidiDeviceFactoryAndroid {
|
||||
*/
|
||||
private long mNativePointer;
|
||||
|
||||
private static final String ACTION_USB_PERMISSION =
|
||||
"org.chromium.media.USB_PERMISSION";
|
||||
private static final String ACTION_USB_PERMISSION = "org.chromium.media.USB_PERMISSION";
|
||||
|
||||
/**
|
||||
* Constructs a UsbMidiDeviceAndroid.
|
||||
@ -125,7 +124,7 @@ class UsbMidiDeviceFactoryAndroid {
|
||||
mIsEnumeratingDevices = false;
|
||||
return false;
|
||||
}
|
||||
for (UsbDevice device: devices.values()) {
|
||||
for (UsbDevice device : devices.values()) {
|
||||
requestDevicePermissionIfNecessary(context, device);
|
||||
}
|
||||
return true;
|
||||
@ -138,7 +137,7 @@ class UsbMidiDeviceFactoryAndroid {
|
||||
* @param device a USB device
|
||||
*/
|
||||
private void requestDevicePermissionIfNecessary(Context context, UsbDevice device) {
|
||||
for (UsbDevice d: mRequestedDevices) {
|
||||
for (UsbDevice d : mRequestedDevices) {
|
||||
if (d.getDeviceId() == device.getDeviceId()) {
|
||||
// It is already requested.
|
||||
return;
|
||||
@ -150,8 +149,9 @@ class UsbMidiDeviceFactoryAndroid {
|
||||
if (iface.getInterfaceClass() == UsbConstants.USB_CLASS_AUDIO
|
||||
&& iface.getInterfaceSubclass() == UsbMidiDeviceAndroid.MIDI_SUBCLASS) {
|
||||
// There is at least one interface supporting MIDI.
|
||||
mUsbManager.requestPermission(device, PendingIntent.getBroadcast(
|
||||
context, 0, new Intent(ACTION_USB_PERMISSION), 0));
|
||||
mUsbManager.requestPermission(
|
||||
device, PendingIntent.getBroadcast(
|
||||
context, 0, new Intent(ACTION_USB_PERMISSION), 0));
|
||||
mRequestedDevices.add(device);
|
||||
break;
|
||||
}
|
||||
@ -164,7 +164,7 @@ class UsbMidiDeviceFactoryAndroid {
|
||||
* @param device a USB device
|
||||
*/
|
||||
private void onUsbDeviceDetached(UsbDevice device) {
|
||||
for (UsbDevice usbDevice: mRequestedDevices) {
|
||||
for (UsbDevice usbDevice : mRequestedDevices) {
|
||||
if (usbDevice.getDeviceId() == device.getDeviceId()) {
|
||||
mRequestedDevices.remove(usbDevice);
|
||||
break;
|
||||
@ -214,7 +214,7 @@ class UsbMidiDeviceFactoryAndroid {
|
||||
}
|
||||
|
||||
if (device != null) {
|
||||
for (UsbMidiDeviceAndroid registered: mDevices) {
|
||||
for (UsbMidiDeviceAndroid registered : mDevices) {
|
||||
if (!registered.isClosed()
|
||||
&& registered.getUsbDevice().getDeviceId() == device.getDeviceId()) {
|
||||
// The device is already registered.
|
235
media/midi/midi.gyp
Normal file
235
media/midi/midi.gyp
Normal file
@ -0,0 +1,235 @@
|
||||
# Copyright 2015 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.
|
||||
|
||||
{
|
||||
'variables': {
|
||||
'chromium_code': 1,
|
||||
'conditions': [
|
||||
['(OS=="linux" or OS=="freebsd" or OS=="solaris") and (embedded!=1 or (chromecast==1 and target_arch!="arm"))', {
|
||||
'use_alsa%': 1,
|
||||
}, {
|
||||
'use_alsa%': 0,
|
||||
}],
|
||||
],
|
||||
# Source files that are used in production code for Android, and in tests
|
||||
# for others.
|
||||
'usb_midi_sources': [
|
||||
'midi_manager_usb.cc',
|
||||
'midi_manager_usb.h',
|
||||
'usb_midi_descriptor_parser.cc',
|
||||
'usb_midi_descriptor_parser.h',
|
||||
'usb_midi_device.h',
|
||||
'usb_midi_input_stream.cc',
|
||||
'usb_midi_input_stream.h',
|
||||
'usb_midi_jack.h',
|
||||
'usb_midi_output_stream.cc',
|
||||
'usb_midi_output_stream.h',
|
||||
],
|
||||
},
|
||||
'targets': [
|
||||
{
|
||||
# GN version: //media/midi
|
||||
'target_name': 'midi',
|
||||
'type': '<(component)',
|
||||
'dependencies': [
|
||||
'../../base/base.gyp:base',
|
||||
],
|
||||
'defines': [
|
||||
'MEDIA_IMPLEMENTATION',
|
||||
],
|
||||
'include_dirs': [
|
||||
'../..',
|
||||
],
|
||||
'sources': [
|
||||
'midi_manager.cc',
|
||||
'midi_manager.h',
|
||||
'midi_manager_android.cc',
|
||||
'midi_manager_mac.cc',
|
||||
'midi_manager_mac.h',
|
||||
'midi_manager_win.cc',
|
||||
'midi_manager_win.h',
|
||||
'midi_message_queue.cc',
|
||||
'midi_message_queue.h',
|
||||
'midi_message_util.cc',
|
||||
'midi_message_util.h',
|
||||
'midi_port_info.cc',
|
||||
'midi_port_info.h',
|
||||
'midi_scheduler.cc',
|
||||
'midi_scheduler.h',
|
||||
'usb_midi_device_android.cc',
|
||||
'usb_midi_device_android.h',
|
||||
'usb_midi_device_factory_android.cc',
|
||||
'usb_midi_device_factory_android.h',
|
||||
],
|
||||
'direct_dependent_settings': {
|
||||
'include_dirs': [
|
||||
'../..',
|
||||
],
|
||||
},
|
||||
'conditions': [
|
||||
['use_alsa==1 and use_udev==1', {
|
||||
'dependencies': [
|
||||
'../../crypto/crypto.gyp:crypto',
|
||||
'../../device/udev_linux/udev.gyp:udev_linux',
|
||||
],
|
||||
'defines': [
|
||||
'USE_ALSA',
|
||||
'USE_UDEV',
|
||||
],
|
||||
'sources': [
|
||||
'midi_manager_alsa.cc',
|
||||
'midi_manager_alsa.h',
|
||||
],
|
||||
'link_settings': {
|
||||
'libraries': [
|
||||
'-lasound',
|
||||
],
|
||||
},
|
||||
}],
|
||||
['OS=="android"', {
|
||||
'dependencies': [
|
||||
'../../base/base.gyp:base_i18n',
|
||||
'midi_jni_headers',
|
||||
'midi_java',
|
||||
],
|
||||
'sources': [
|
||||
'<@(usb_midi_sources)',
|
||||
'midi_jni_registrar.cc',
|
||||
'midi_jni_registrar.h',
|
||||
],
|
||||
}],
|
||||
['OS=="mac"', {
|
||||
'link_settings': {
|
||||
'libraries': [
|
||||
'$(SDKROOT)/System/Library/Frameworks/CoreAudio.framework',
|
||||
'$(SDKROOT)/System/Library/Frameworks/CoreMIDI.framework',
|
||||
],
|
||||
},
|
||||
}],
|
||||
['OS=="win"', {
|
||||
'dependencies': [
|
||||
'../../device/usb/usb.gyp:device_usb',
|
||||
],
|
||||
}],
|
||||
], # conditions
|
||||
},
|
||||
{
|
||||
# GN version: //media/midi:midi_unittests
|
||||
'target_name': 'midi_unittests',
|
||||
'type': '<(gtest_target_type)',
|
||||
'dependencies': [
|
||||
'midi',
|
||||
'../../base/base.gyp:base',
|
||||
'../../base/base.gyp:run_all_unittests',
|
||||
'../../testing/gtest.gyp:gtest',
|
||||
],
|
||||
'defines': [
|
||||
'MEDIA_IMPLEMENTATION',
|
||||
],
|
||||
'include_dirs': [
|
||||
'../..',
|
||||
],
|
||||
'sources': [
|
||||
'midi_manager_unittest.cc',
|
||||
'midi_manager_usb_unittest.cc',
|
||||
'midi_message_queue_unittest.cc',
|
||||
'midi_message_util_unittest.cc',
|
||||
'usb_midi_descriptor_parser_unittest.cc',
|
||||
'usb_midi_input_stream_unittest.cc',
|
||||
'usb_midi_output_stream_unittest.cc',
|
||||
],
|
||||
'conditions': [
|
||||
['use_alsa==1 and use_udev==1', {
|
||||
'defines': [
|
||||
'USE_ALSA',
|
||||
'USE_UDEV',
|
||||
],
|
||||
'sources': [
|
||||
'midi_manager_alsa_unittest.cc',
|
||||
],
|
||||
}],
|
||||
['use_x11==1', {
|
||||
'dependencies': [
|
||||
'../../tools/xdisplaycheck/xdisplaycheck.gyp:xdisplaycheck',
|
||||
],
|
||||
}],
|
||||
['OS=="android"', {
|
||||
'dependencies': [
|
||||
'../../testing/android/native_test.gyp:native_test_native_code',
|
||||
],
|
||||
}, {
|
||||
'sources': [
|
||||
'<@(usb_midi_sources)',
|
||||
],
|
||||
}],
|
||||
['OS=="mac"', {
|
||||
'sources': [
|
||||
'midi_manager_mac_unittest.cc',
|
||||
],
|
||||
}],
|
||||
],
|
||||
},
|
||||
],
|
||||
'conditions': [
|
||||
['OS=="android"', {
|
||||
'targets': [
|
||||
{
|
||||
# TODO(GN)
|
||||
'target_name': 'midi_unittests_apk',
|
||||
'type': 'none',
|
||||
'dependencies': [
|
||||
'midi_java',
|
||||
'midi_unittests',
|
||||
],
|
||||
'variables': {
|
||||
'test_suite_name': 'midi_unittests',
|
||||
},
|
||||
'includes': ['../../build/apk_test.gypi'],
|
||||
},
|
||||
{
|
||||
# GN: //media/midi:midi_java
|
||||
'target_name': 'midi_java',
|
||||
'type': 'none',
|
||||
'dependencies': [
|
||||
'../../base/base.gyp:base',
|
||||
],
|
||||
'variables': {
|
||||
'java_in_dir': 'java',
|
||||
},
|
||||
'includes': ['../../build/java.gypi' ],
|
||||
},
|
||||
{
|
||||
# GN: //media/midi:midi_jni_headers
|
||||
'target_name': 'midi_jni_headers',
|
||||
'type': 'none',
|
||||
'sources': [
|
||||
'java/src/org/chromium/media/midi/UsbMidiDeviceAndroid.java',
|
||||
'java/src/org/chromium/media/midi/UsbMidiDeviceFactoryAndroid.java',
|
||||
],
|
||||
'variables': {
|
||||
'jni_gen_package': 'media/midi',
|
||||
},
|
||||
'includes': ['../../build/jni_generator.gypi'],
|
||||
},
|
||||
],
|
||||
}],
|
||||
['test_isolation_mode != "noop"', {
|
||||
'targets': [
|
||||
{
|
||||
'target_name': 'midi_unittests_run',
|
||||
'type': 'none',
|
||||
'dependencies': [
|
||||
'midi_unittests',
|
||||
],
|
||||
'includes': [
|
||||
'../../build/isolate.gypi',
|
||||
],
|
||||
'sources': [
|
||||
'midi_unittests.isolate',
|
||||
],
|
||||
},
|
||||
],
|
||||
}],
|
||||
],
|
||||
}
|
29
media/midi/midi_jni_registrar.cc
Normal file
29
media/midi/midi_jni_registrar.cc
Normal file
@ -0,0 +1,29 @@
|
||||
// Copyright 2015 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.
|
||||
|
||||
#include "media/midi/midi_jni_registrar.h"
|
||||
|
||||
#include "base/android/jni_android.h"
|
||||
#include "base/android/jni_registrar.h"
|
||||
#include "base/basictypes.h"
|
||||
|
||||
#include "media/midi/usb_midi_device_android.h"
|
||||
#include "media/midi/usb_midi_device_factory_android.h"
|
||||
|
||||
namespace media {
|
||||
namespace midi {
|
||||
|
||||
static base::android::RegistrationMethod kMediaRegisteredMethods[] = {
|
||||
{"UsbMidiDevice", UsbMidiDeviceAndroid::RegisterUsbMidiDevice},
|
||||
{"UsbMidiDeviceFactory",
|
||||
UsbMidiDeviceFactoryAndroid::RegisterUsbMidiDeviceFactory},
|
||||
};
|
||||
|
||||
bool RegisterJni(JNIEnv* env) {
|
||||
return base::android::RegisterNativeMethods(
|
||||
env, kMediaRegisteredMethods, arraysize(kMediaRegisteredMethods));
|
||||
}
|
||||
|
||||
} // namespace midi
|
||||
} // namespace media
|
21
media/midi/midi_jni_registrar.h
Normal file
21
media/midi/midi_jni_registrar.h
Normal file
@ -0,0 +1,21 @@
|
||||
// Copyright 2015 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.
|
||||
|
||||
#ifndef MEDIA_MIDI_MIDI_JNI_REGISTRAR_H_
|
||||
#define MEDIA_MIDI_MIDI_JNI_REGISTRAR_H_
|
||||
|
||||
#include <jni.h>
|
||||
|
||||
#include "media/base/media_export.h"
|
||||
|
||||
namespace media {
|
||||
namespace midi {
|
||||
|
||||
// Register all JNI bindings necessary for media/midi.
|
||||
MEDIA_EXPORT bool RegisterJni(JNIEnv* env);
|
||||
|
||||
} // namespace midi
|
||||
} // namespace media
|
||||
|
||||
#endif // MEDIA_MIDI_MIDI_JNI_REGISTRAR_H_
|
@ -74,7 +74,7 @@ void MidiManagerUsb::ReceiveUsbMidiData(UsbMidiDevice* device,
|
||||
}
|
||||
|
||||
void MidiManagerUsb::OnDeviceAttached(scoped_ptr<UsbMidiDevice> device) {
|
||||
int device_id = devices_.size();
|
||||
int device_id = static_cast<int>(devices_.size());
|
||||
devices_.push_back(device.release());
|
||||
AddPorts(devices_.back(), device_id);
|
||||
}
|
||||
@ -86,13 +86,13 @@ void MidiManagerUsb::OnDeviceDetached(size_t index) {
|
||||
UsbMidiDevice* device = devices_[index];
|
||||
for (size_t i = 0; i < output_streams_.size(); ++i) {
|
||||
if (output_streams_[i]->jack().device == device) {
|
||||
SetOutputPortState(i, MIDI_PORT_DISCONNECTED);
|
||||
SetOutputPortState(static_cast<uint32>(i), MIDI_PORT_DISCONNECTED);
|
||||
}
|
||||
}
|
||||
const std::vector<UsbMidiJack>& input_jacks = input_stream_->jacks();
|
||||
for (size_t i = 0; i < input_jacks.size(); ++i) {
|
||||
if (input_jacks[i].device == device) {
|
||||
SetInputPortState(i, MIDI_PORT_DISCONNECTED);
|
||||
SetInputPortState(static_cast<uint32>(i), MIDI_PORT_DISCONNECTED);
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -101,7 +101,7 @@ void MidiManagerUsb::OnReceivedData(size_t jack_index,
|
||||
const uint8* data,
|
||||
size_t size,
|
||||
base::TimeTicks time) {
|
||||
ReceiveMidiData(jack_index, data, size, time);
|
||||
ReceiveMidiData(static_cast<uint32>(jack_index), data, size, time);
|
||||
}
|
||||
|
||||
|
||||
@ -114,7 +114,7 @@ void MidiManagerUsb::OnEnumerateDevicesDone(bool result,
|
||||
input_stream_.reset(new UsbMidiInputStream(this));
|
||||
devices->swap(devices_);
|
||||
for (size_t i = 0; i < devices_.size(); ++i) {
|
||||
if (!AddPorts(devices_[i], i)) {
|
||||
if (!AddPorts(devices_[i], static_cast<int>(i))) {
|
||||
initialize_callback_.Run(MIDI_INITIALIZATION_ERROR);
|
||||
return;
|
||||
}
|
||||
|
@ -101,7 +101,7 @@ ScopedMIDIHDR CreateMIDIHDR(size_t size) {
|
||||
ScopedMIDIHDR header(new MIDIHDR);
|
||||
ZeroMemory(header.get(), sizeof(*header));
|
||||
header->lpData = new char[size];
|
||||
header->dwBufferLength = size;
|
||||
header->dwBufferLength = static_cast<DWORD>(size);
|
||||
return header.Pass();
|
||||
}
|
||||
|
||||
@ -619,7 +619,7 @@ class MidiServiceWinImpl : public MidiServiceWin,
|
||||
base::AutoLock auto_lock(input_ports_lock_);
|
||||
const auto it = unused_input_ports_.find(state_device_info);
|
||||
if (it == unused_input_ports_.end()) {
|
||||
port_number = input_ports_.size();
|
||||
port_number = static_cast<uint32>(input_ports_.size());
|
||||
add_new_port = true;
|
||||
input_ports_.push_back(nullptr);
|
||||
input_ports_ages_.push_back(0);
|
||||
@ -800,7 +800,7 @@ class MidiServiceWinImpl : public MidiServiceWin,
|
||||
base::AutoLock auto_lock(output_ports_lock_);
|
||||
const auto it = unused_output_ports_.find(state_device_info);
|
||||
if (it == unused_output_ports_.end()) {
|
||||
port_number = output_ports_.size();
|
||||
port_number = static_cast<uint32>(output_ports_.size());
|
||||
add_new_port = true;
|
||||
output_ports_.push_back(nullptr);
|
||||
output_ports_ages_.push_back(0);
|
||||
|
@ -7,6 +7,7 @@
|
||||
|
||||
#include "base/callback.h"
|
||||
#include "base/memory/weak_ptr.h"
|
||||
#include "media/base/media_export.h"
|
||||
|
||||
namespace media {
|
||||
|
||||
@ -14,7 +15,7 @@ class MidiManager;
|
||||
class MidiManagerClient;
|
||||
|
||||
// TODO(crbug.com/467442): Make tasks cancelable per client.
|
||||
class MidiScheduler final {
|
||||
class MEDIA_EXPORT MidiScheduler final {
|
||||
public:
|
||||
explicit MidiScheduler(MidiManager* manager);
|
||||
~MidiScheduler();
|
||||
|
63
media/midi/midi_unittests.isolate
Normal file
63
media/midi/midi_unittests.isolate
Normal file
@ -0,0 +1,63 @@
|
||||
# Copyright 2015 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.
|
||||
{
|
||||
'includes': [
|
||||
'../../base/base.isolate',
|
||||
],
|
||||
'conditions': [
|
||||
['use_x11==0', {
|
||||
'variables': {
|
||||
'command': [
|
||||
'../../testing/test_env.py',
|
||||
'<(PRODUCT_DIR)/midi_unittests<(EXECUTABLE_SUFFIX)',
|
||||
'--brave-new-test-launcher',
|
||||
'--test-launcher-bot-mode',
|
||||
'--asan=<(asan)',
|
||||
'--msan=<(msan)',
|
||||
'--tsan=<(tsan)',
|
||||
],
|
||||
},
|
||||
}],
|
||||
['use_x11==1', {
|
||||
'variables': {
|
||||
'command': [
|
||||
'../../testing/xvfb.py',
|
||||
'<(PRODUCT_DIR)',
|
||||
'<(PRODUCT_DIR)/midi_unittests',
|
||||
'--brave-new-test-launcher',
|
||||
'--test-launcher-bot-mode',
|
||||
'--asan=<(asan)',
|
||||
'--msan=<(msan)',
|
||||
'--tsan=<(tsan)',
|
||||
],
|
||||
'files': [
|
||||
'../../testing/xvfb.py',
|
||||
'<(PRODUCT_DIR)/xdisplaycheck',
|
||||
],
|
||||
},
|
||||
}],
|
||||
['OS=="linux" or OS=="mac" or OS=="win"', {
|
||||
'variables': {
|
||||
'files': [
|
||||
'../../testing/test_env.py',
|
||||
'<(PRODUCT_DIR)/midi_unittests<(EXECUTABLE_SUFFIX)',
|
||||
],
|
||||
},
|
||||
}],
|
||||
['OS=="mac" and asan==1 and fastbuild==0', {
|
||||
'variables': {
|
||||
'files': [
|
||||
'<(PRODUCT_DIR)/midi_unittests.dSYM/',
|
||||
],
|
||||
},
|
||||
}],
|
||||
['OS=="win" and (fastbuild==0 or fastbuild==1)', {
|
||||
'variables': {
|
||||
'files': [
|
||||
'<(PRODUCT_DIR)/midi_unittests.exe.pdb',
|
||||
],
|
||||
},
|
||||
}],
|
||||
],
|
||||
}
|
@ -20,8 +20,8 @@ UsbMidiDeviceAndroid::UsbMidiDeviceAndroid(ObjectRef raw_device,
|
||||
UsbMidiDeviceDelegate* delegate)
|
||||
: raw_device_(raw_device), delegate_(delegate) {
|
||||
JNIEnv* env = base::android::AttachCurrentThread();
|
||||
Java_UsbMidiDeviceAndroid_registerSelf(
|
||||
env, raw_device_.obj(), reinterpret_cast<jlong>(this));
|
||||
midi::Java_UsbMidiDeviceAndroid_registerSelf(env, raw_device_.obj(),
|
||||
reinterpret_cast<jlong>(this));
|
||||
|
||||
GetDescriptorsInternal();
|
||||
InitDeviceInfo();
|
||||
@ -29,7 +29,7 @@ UsbMidiDeviceAndroid::UsbMidiDeviceAndroid(ObjectRef raw_device,
|
||||
|
||||
UsbMidiDeviceAndroid::~UsbMidiDeviceAndroid() {
|
||||
JNIEnv* env = base::android::AttachCurrentThread();
|
||||
Java_UsbMidiDeviceAndroid_close(env, raw_device_.obj());
|
||||
midi::Java_UsbMidiDeviceAndroid_close(env, raw_device_.obj());
|
||||
}
|
||||
|
||||
std::vector<uint8> UsbMidiDeviceAndroid::GetDescriptors() {
|
||||
@ -55,8 +55,8 @@ void UsbMidiDeviceAndroid::Send(int endpoint_number,
|
||||
ScopedJavaLocalRef<jbyteArray> data_to_pass =
|
||||
base::android::ToJavaByteArray(env, head, data.size());
|
||||
|
||||
Java_UsbMidiDeviceAndroid_send(
|
||||
env, raw_device_.obj(), endpoint_number, data_to_pass.obj());
|
||||
midi::Java_UsbMidiDeviceAndroid_send(env, raw_device_.obj(), endpoint_number,
|
||||
data_to_pass.obj());
|
||||
}
|
||||
|
||||
void UsbMidiDeviceAndroid::OnData(JNIEnv* env,
|
||||
@ -72,13 +72,13 @@ void UsbMidiDeviceAndroid::OnData(JNIEnv* env,
|
||||
}
|
||||
|
||||
bool UsbMidiDeviceAndroid::RegisterUsbMidiDevice(JNIEnv* env) {
|
||||
return RegisterNativesImpl(env);
|
||||
return midi::RegisterNativesImpl(env);
|
||||
}
|
||||
|
||||
void UsbMidiDeviceAndroid::GetDescriptorsInternal() {
|
||||
JNIEnv* env = base::android::AttachCurrentThread();
|
||||
base::android::ScopedJavaLocalRef<jbyteArray> descriptors =
|
||||
Java_UsbMidiDeviceAndroid_getDescriptors(env, raw_device_.obj());
|
||||
midi::Java_UsbMidiDeviceAndroid_getDescriptors(env, raw_device_.obj());
|
||||
|
||||
base::android::JavaByteArrayToByteVector(env, descriptors.obj(),
|
||||
&descriptors_);
|
||||
@ -111,8 +111,8 @@ void UsbMidiDeviceAndroid::InitDeviceInfo() {
|
||||
std::vector<uint8> UsbMidiDeviceAndroid::GetStringDescriptor(int index) {
|
||||
JNIEnv* env = base::android::AttachCurrentThread();
|
||||
base::android::ScopedJavaLocalRef<jbyteArray> descriptors =
|
||||
Java_UsbMidiDeviceAndroid_getStringDescriptor(env, raw_device_.obj(),
|
||||
index);
|
||||
midi::Java_UsbMidiDeviceAndroid_getStringDescriptor(
|
||||
env, raw_device_.obj(), index);
|
||||
|
||||
std::vector<uint8> ret;
|
||||
base::android::JavaByteArrayToByteVector(env, descriptors.obj(), &ret);
|
||||
|
@ -30,7 +30,7 @@ UsbMidiDeviceFactoryAndroid::UsbMidiDeviceFactoryAndroid() : delegate_(NULL) {}
|
||||
UsbMidiDeviceFactoryAndroid::~UsbMidiDeviceFactoryAndroid() {
|
||||
JNIEnv* env = base::android::AttachCurrentThread();
|
||||
if (!raw_factory_.is_null())
|
||||
Java_UsbMidiDeviceFactoryAndroid_close(
|
||||
midi::Java_UsbMidiDeviceFactoryAndroid_close(
|
||||
env, raw_factory_.obj(), base::android::GetApplicationContext());
|
||||
}
|
||||
|
||||
@ -40,13 +40,13 @@ void UsbMidiDeviceFactoryAndroid::EnumerateDevices(
|
||||
DCHECK(!delegate_);
|
||||
JNIEnv* env = base::android::AttachCurrentThread();
|
||||
uintptr_t pointer = reinterpret_cast<uintptr_t>(this);
|
||||
raw_factory_.Reset(Java_UsbMidiDeviceFactoryAndroid_create(
|
||||
raw_factory_.Reset(midi::Java_UsbMidiDeviceFactoryAndroid_create(
|
||||
env, base::android::GetApplicationContext(), pointer));
|
||||
|
||||
delegate_ = delegate;
|
||||
callback_ = callback;
|
||||
|
||||
if (Java_UsbMidiDeviceFactoryAndroid_enumerateDevices(
|
||||
if (midi::Java_UsbMidiDeviceFactoryAndroid_enumerateDevices(
|
||||
env, raw_factory_.obj(), base::android::GetApplicationContext())) {
|
||||
// Asynchronous operation.
|
||||
return;
|
||||
@ -92,7 +92,7 @@ void UsbMidiDeviceFactoryAndroid::OnUsbMidiDeviceDetached(
|
||||
}
|
||||
|
||||
bool UsbMidiDeviceFactoryAndroid::RegisterUsbMidiDeviceFactory(JNIEnv* env) {
|
||||
return RegisterNativesImpl(env);
|
||||
return midi::RegisterNativesImpl(env);
|
||||
}
|
||||
|
||||
} // namespace media
|
||||
|
@ -98,7 +98,7 @@ bool UsbMidiOutputStream::PushSysExMessage(const std::vector<uint8>& data,
|
||||
message[message_size] = byte;
|
||||
++message_size;
|
||||
if (byte == kEndOfSysExByte) {
|
||||
uint8 code_index = message_size + 0x4;
|
||||
uint8 code_index = static_cast<uint8>(message_size) + 0x4;
|
||||
DCHECK(code_index == 0x5 || code_index == 0x6 || code_index == 0x7);
|
||||
data_to_send->push_back((jack_.cable_number << 4) | code_index);
|
||||
data_to_send->insert(data_to_send->end(),
|
||||
|
@ -216,6 +216,9 @@
|
||||
{
|
||||
"test": "message_center_unittests"
|
||||
},
|
||||
{
|
||||
"test": "midi_unittests"
|
||||
},
|
||||
{
|
||||
"test": "nacl_loader_unittests"
|
||||
},
|
||||
@ -401,6 +404,9 @@
|
||||
{
|
||||
"test": "message_center_unittests"
|
||||
},
|
||||
{
|
||||
"test": "midi_unittests"
|
||||
},
|
||||
{
|
||||
"test": "nacl_loader_unittests"
|
||||
},
|
||||
@ -582,6 +588,9 @@
|
||||
{
|
||||
"test": "message_center_unittests"
|
||||
},
|
||||
{
|
||||
"test": "midi_unittests"
|
||||
},
|
||||
{
|
||||
"test": "nacl_loader_unittests"
|
||||
},
|
||||
|
@ -52,6 +52,9 @@
|
||||
{
|
||||
"test": "media_unittests"
|
||||
},
|
||||
{
|
||||
"test": "midi_unittests"
|
||||
},
|
||||
{
|
||||
"test": "net_unittests"
|
||||
},
|
||||
@ -137,6 +140,9 @@
|
||||
{
|
||||
"test": "media_unittests"
|
||||
},
|
||||
{
|
||||
"test": "midi_unittests"
|
||||
},
|
||||
{
|
||||
"test": "message_center_unittests"
|
||||
},
|
||||
@ -305,6 +311,9 @@
|
||||
{
|
||||
"test": "media_unittests"
|
||||
},
|
||||
{
|
||||
"test": "midi_unittests"
|
||||
},
|
||||
{
|
||||
"test": "mojo_common_unittests"
|
||||
},
|
||||
@ -466,6 +475,9 @@
|
||||
{
|
||||
"test": "media_unittests"
|
||||
},
|
||||
{
|
||||
"test": "midi_unittests"
|
||||
},
|
||||
{
|
||||
"swarming": {
|
||||
"can_use_on_swarming_builders": true,
|
||||
@ -577,6 +589,9 @@
|
||||
{
|
||||
"test": "message_center_unittests"
|
||||
},
|
||||
{
|
||||
"test": "midi_unittests"
|
||||
},
|
||||
{
|
||||
"test": "mojo_common_unittests"
|
||||
},
|
||||
@ -715,6 +730,9 @@
|
||||
{
|
||||
"test": "message_center_unittests"
|
||||
},
|
||||
{
|
||||
"test": "midi_unittests"
|
||||
},
|
||||
{
|
||||
"test": "mojo_common_unittests"
|
||||
},
|
||||
@ -853,6 +871,9 @@
|
||||
{
|
||||
"test": "media_unittests"
|
||||
},
|
||||
{
|
||||
"test": "midi_unittests"
|
||||
},
|
||||
{
|
||||
"test": "net_unittests"
|
||||
},
|
||||
@ -965,6 +986,9 @@
|
||||
{
|
||||
"test": "media_unittests"
|
||||
},
|
||||
{
|
||||
"test": "midi_unittests"
|
||||
},
|
||||
{
|
||||
"test": "net_unittests"
|
||||
},
|
||||
@ -1084,6 +1108,9 @@
|
||||
{
|
||||
"test": "media_unittests"
|
||||
},
|
||||
{
|
||||
"test": "midi_unittests"
|
||||
},
|
||||
{
|
||||
"swarming": {
|
||||
"can_use_on_swarming_builders": true
|
||||
@ -1209,6 +1236,9 @@
|
||||
{
|
||||
"test": "media_unittests"
|
||||
},
|
||||
{
|
||||
"test": "midi_unittests"
|
||||
},
|
||||
{
|
||||
"swarming": {
|
||||
"can_use_on_swarming_builders": true
|
||||
@ -1334,6 +1364,9 @@
|
||||
{
|
||||
"test": "media_unittests"
|
||||
},
|
||||
{
|
||||
"test": "midi_unittests"
|
||||
},
|
||||
{
|
||||
"swarming": {
|
||||
"can_use_on_swarming_builders": true
|
||||
@ -1459,6 +1492,9 @@
|
||||
{
|
||||
"test": "media_unittests"
|
||||
},
|
||||
{
|
||||
"test": "midi_unittests"
|
||||
},
|
||||
{
|
||||
"swarming": {
|
||||
"can_use_on_swarming_builders": true
|
||||
@ -1584,6 +1620,9 @@
|
||||
{
|
||||
"test": "media_unittests"
|
||||
},
|
||||
{
|
||||
"test": "midi_unittests"
|
||||
},
|
||||
{
|
||||
"swarming": {
|
||||
"can_use_on_swarming_builders": true
|
||||
@ -1709,6 +1748,9 @@
|
||||
{
|
||||
"test": "media_unittests"
|
||||
},
|
||||
{
|
||||
"test": "midi_unittests"
|
||||
},
|
||||
{
|
||||
"swarming": {
|
||||
"can_use_on_swarming_builders": true
|
||||
@ -1834,6 +1876,9 @@
|
||||
{
|
||||
"test": "media_unittests"
|
||||
},
|
||||
{
|
||||
"test": "midi_unittests"
|
||||
},
|
||||
{
|
||||
"swarming": {
|
||||
"can_use_on_swarming_builders": true
|
||||
@ -1986,6 +2031,9 @@
|
||||
{
|
||||
"test": "media_unittests"
|
||||
},
|
||||
{
|
||||
"test": "midi_unittests"
|
||||
},
|
||||
{
|
||||
"test": "mojo_common_unittests"
|
||||
},
|
||||
@ -2151,6 +2199,9 @@
|
||||
{
|
||||
"test": "media_unittests"
|
||||
},
|
||||
{
|
||||
"test": "midi_unittests"
|
||||
},
|
||||
{
|
||||
"test": "mojo_common_unittests"
|
||||
},
|
||||
@ -2322,6 +2373,9 @@
|
||||
{
|
||||
"test": "media_unittests"
|
||||
},
|
||||
{
|
||||
"test": "midi_unittests"
|
||||
},
|
||||
{
|
||||
"test": "mojo_common_unittests"
|
||||
},
|
||||
@ -2487,6 +2541,9 @@
|
||||
{
|
||||
"test": "media_unittests"
|
||||
},
|
||||
{
|
||||
"test": "midi_unittests"
|
||||
},
|
||||
{
|
||||
"test": "mojo_common_unittests"
|
||||
},
|
||||
|
@ -381,6 +381,12 @@
|
||||
},
|
||||
"test": "media_unittests"
|
||||
},
|
||||
{
|
||||
"swarming": {
|
||||
"can_use_on_swarming_builders": true
|
||||
},
|
||||
"test": "midi_unittests"
|
||||
},
|
||||
{
|
||||
"test": "mojo_common_unittests"
|
||||
},
|
||||
@ -635,6 +641,12 @@
|
||||
},
|
||||
"test": "media_unittests"
|
||||
},
|
||||
{
|
||||
"swarming": {
|
||||
"can_use_on_swarming_builders": true
|
||||
},
|
||||
"test": "midi_unittests"
|
||||
},
|
||||
{
|
||||
"test": "mojo_common_unittests"
|
||||
},
|
||||
@ -879,6 +891,12 @@
|
||||
},
|
||||
"test": "media_unittests"
|
||||
},
|
||||
{
|
||||
"swarming": {
|
||||
"can_use_on_swarming_builders": true
|
||||
},
|
||||
"test": "midi_unittests"
|
||||
},
|
||||
{
|
||||
"test": "mojo_common_unittests"
|
||||
},
|
||||
|
@ -189,6 +189,12 @@
|
||||
},
|
||||
"test": "message_center_unittests"
|
||||
},
|
||||
{
|
||||
"swarming": {
|
||||
"can_use_on_swarming_builders": true
|
||||
},
|
||||
"test": "midi_unittests"
|
||||
},
|
||||
{
|
||||
"test": "mojo_common_unittests"
|
||||
},
|
||||
@ -388,6 +394,12 @@
|
||||
},
|
||||
"test": "message_center_unittests"
|
||||
},
|
||||
{
|
||||
"swarming": {
|
||||
"can_use_on_swarming_builders": true
|
||||
},
|
||||
"test": "midi_unittests"
|
||||
},
|
||||
{
|
||||
"test": "mojo_common_unittests"
|
||||
},
|
||||
@ -587,6 +599,12 @@
|
||||
},
|
||||
"test": "message_center_unittests"
|
||||
},
|
||||
{
|
||||
"swarming": {
|
||||
"can_use_on_swarming_builders": true
|
||||
},
|
||||
"test": "midi_unittests"
|
||||
},
|
||||
{
|
||||
"test": "mojo_common_unittests"
|
||||
},
|
||||
@ -787,6 +805,12 @@
|
||||
},
|
||||
"test": "message_center_unittests"
|
||||
},
|
||||
{
|
||||
"swarming": {
|
||||
"can_use_on_swarming_builders": true
|
||||
},
|
||||
"test": "midi_unittests"
|
||||
},
|
||||
{
|
||||
"test": "mojo_common_unittests"
|
||||
},
|
||||
|
@ -102,6 +102,9 @@
|
||||
{
|
||||
"test": "media_unittests"
|
||||
},
|
||||
{
|
||||
"test": "midi_unittests"
|
||||
},
|
||||
{
|
||||
"test": "mojo_common_unittests"
|
||||
},
|
||||
@ -266,6 +269,9 @@
|
||||
{
|
||||
"test": "media_unittests"
|
||||
},
|
||||
{
|
||||
"test": "midi_unittests"
|
||||
},
|
||||
{
|
||||
"test": "mojo_common_unittests"
|
||||
},
|
||||
@ -426,6 +432,9 @@
|
||||
{
|
||||
"test": "media_unittests"
|
||||
},
|
||||
{
|
||||
"test": "midi_unittests"
|
||||
},
|
||||
{
|
||||
"test": "mojo_common_unittests"
|
||||
},
|
||||
|
@ -90,6 +90,9 @@
|
||||
{
|
||||
"test": "media_unittests"
|
||||
},
|
||||
{
|
||||
"test": "midi_unittests"
|
||||
},
|
||||
{
|
||||
"swarming": {
|
||||
"can_use_on_swarming_builders": true,
|
||||
@ -265,6 +268,9 @@
|
||||
{
|
||||
"test": "message_center_unittests"
|
||||
},
|
||||
{
|
||||
"test": "midi_unittests"
|
||||
},
|
||||
{
|
||||
"test": "nacl_loader_unittests"
|
||||
},
|
||||
@ -391,6 +397,9 @@
|
||||
{
|
||||
"test": "media_unittests"
|
||||
},
|
||||
{
|
||||
"test": "midi_unittests"
|
||||
},
|
||||
{
|
||||
"swarming": {
|
||||
"can_use_on_swarming_builders": true
|
||||
@ -495,6 +504,9 @@
|
||||
{
|
||||
"test": "media_unittests"
|
||||
},
|
||||
{
|
||||
"test": "midi_unittests"
|
||||
},
|
||||
{
|
||||
"swarming": {
|
||||
"can_use_on_swarming_builders": true
|
||||
|
@ -134,6 +134,9 @@
|
||||
{
|
||||
"test": "message_center_unittests"
|
||||
},
|
||||
{
|
||||
"test": "midi_unittests"
|
||||
},
|
||||
{
|
||||
"test": "nacl_loader_unittests"
|
||||
},
|
||||
@ -309,6 +312,9 @@
|
||||
{
|
||||
"test": "message_center_unittests"
|
||||
},
|
||||
{
|
||||
"test": "midi_unittests"
|
||||
},
|
||||
{
|
||||
"test": "nacl_loader_unittests"
|
||||
},
|
||||
|
@ -129,6 +129,12 @@
|
||||
},
|
||||
"test": "media_unittests"
|
||||
},
|
||||
{
|
||||
"swarming": {
|
||||
"can_use_on_swarming_builders": true
|
||||
},
|
||||
"test": "midi_unittests"
|
||||
},
|
||||
{
|
||||
"test": "mojo_common_unittests"
|
||||
},
|
||||
@ -370,6 +376,12 @@
|
||||
{
|
||||
"test": "message_center_unittests"
|
||||
},
|
||||
{
|
||||
"swarming": {
|
||||
"can_use_on_swarming_builders": true
|
||||
},
|
||||
"test": "midi_unittests"
|
||||
},
|
||||
{
|
||||
"test": "mojo_common_unittests"
|
||||
},
|
||||
@ -748,6 +760,12 @@
|
||||
{
|
||||
"test": "message_center_unittests"
|
||||
},
|
||||
{
|
||||
"swarming": {
|
||||
"can_use_on_swarming_builders": true
|
||||
},
|
||||
"test": "midi_unittests"
|
||||
},
|
||||
{
|
||||
"test": "mojo_common_unittests"
|
||||
},
|
||||
@ -976,6 +994,12 @@
|
||||
},
|
||||
"test": "media_unittests"
|
||||
},
|
||||
{
|
||||
"swarming": {
|
||||
"can_use_on_swarming_builders": true
|
||||
},
|
||||
"test": "midi_unittests"
|
||||
},
|
||||
{
|
||||
"test": "mojo_common_unittests"
|
||||
},
|
||||
@ -1361,6 +1385,12 @@
|
||||
},
|
||||
"test": "media_unittests"
|
||||
},
|
||||
{
|
||||
"swarming": {
|
||||
"can_use_on_swarming_builders": true
|
||||
},
|
||||
"test": "midi_unittests"
|
||||
},
|
||||
{
|
||||
"test": "nacl_loader_unittests"
|
||||
},
|
||||
|
@ -83,6 +83,12 @@
|
||||
},
|
||||
"test": "media_unittests"
|
||||
},
|
||||
{
|
||||
"swarming": {
|
||||
"can_use_on_swarming_builders": true
|
||||
},
|
||||
"test": "midi_unittests"
|
||||
},
|
||||
{
|
||||
"swarming": {
|
||||
"can_use_on_swarming_builders": true,
|
||||
|
@ -213,6 +213,12 @@
|
||||
},
|
||||
"test": "message_center_unittests"
|
||||
},
|
||||
{
|
||||
"swarming": {
|
||||
"can_use_on_swarming_builders": true
|
||||
},
|
||||
"test": "midi_unittests"
|
||||
},
|
||||
"mojo_common_unittests",
|
||||
"mojo_public_bindings_unittests",
|
||||
"mojo_public_environment_unittests",
|
||||
|
@ -401,6 +401,9 @@ class ChromeTests:
|
||||
def TestMessageCenter(self):
|
||||
return self.SimpleTest("message_center", "message_center_unittests")
|
||||
|
||||
def TestMidi(self):
|
||||
return self.SimpleTest("chrome", "midi_unittests")
|
||||
|
||||
def TestMojoCommon(self):
|
||||
return self.SimpleTest("mojo_common", "mojo_common_unittests")
|
||||
|
||||
@ -696,6 +699,7 @@ class ChromeTests:
|
||||
"media": TestMedia, "media_unittests": TestMedia,
|
||||
"message_center": TestMessageCenter,
|
||||
"message_center_unittests" : TestMessageCenter,
|
||||
"midi": TestMidi, "midi_unittests": TestMidi,
|
||||
"mojo_common": TestMojoCommon,
|
||||
"mojo_system": TestMojoSystem,
|
||||
"mojo_public_system": TestMojoPublicSystem,
|
||||
|
Reference in New Issue
Block a user