History log of /frameworks/base/media/java/android/media/midi/MidiOutputPort.java
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
7eb441cb4abcd3230a4d243469c5044f49e707c8 12-May-2015 Mike Lockwood <lockwood@google.com> MidiManager: Address API Council feedback:

Rename MidiDeviceInfo.getPortList() to getPorts()

Rename MidiManager.getDeviceList() to getDevices()

Rename MidiReceiver.onReceive() to onSend()

Replace MidiManager.DeviceOpenCallback and BluetoothOpenCallback
with new interface MidiManager.OnDeviceOpenedListener

Add MidiSender.onConnect() and onDisconnect()

Add MidiReceiver.onFlush()

Ensure that MidiReceiver max message size is immutable

Bug: 21044677
Change-Id: I7711734a45e831e9744849a6f569e906feff9f80
/frameworks/base/media/java/android/media/midi/MidiOutputPort.java
b6f50d357bd3d4d296be6bb047f5ce93a79cbca1 08-Apr-2015 Mike Lockwood <lockwood@google.com> Add support for flushing MIDI all scheduled MIDI events on a port

Change-Id: I39d7862540d4d4b9e2df1265f9dd253541adb4c2
/frameworks/base/media/java/android/media/midi/MidiOutputPort.java
d1b16fe2fb7527eee214898263ec4d6dabbfb0b4 30-Mar-2015 Mike Lockwood <lockwood@google.com> Move MIDI utilities for internal use to com.android.internal.midi package

Change-Id: I7393ae1d4bca61667fb6ee809a7aa22c5c48de56
/frameworks/base/media/java/android/media/midi/MidiOutputPort.java
81b9f7d325a552c54e793b51f571ae3d65b26e94 11-Mar-2015 Mike Lockwood <lockwood@google.com> Add MidiManager to public API

Also made some small API changes based on feedback from the lint tool.

Change-Id: Ibcf1e9107d86d3a364f811ce47a13aa0da653366
/frameworks/base/media/java/android/media/midi/MidiOutputPort.java
0c7342f0153076c88ba8e6a1647999c248787906 09-Mar-2015 Mike Lockwood <lockwood@google.com> Add MidiReceiver.send() and MidiReceiver.getMaxMessageSize()

Change-Id: I10d4f5e2400fcaf41f455e56ca25bbc0c781a042
/frameworks/base/media/java/android/media/midi/MidiOutputPort.java
be215dd57282888b05b234c39bba44cc0a864b8a 07-Mar-2015 Mike Lockwood <lockwood@google.com> MIDI Manager changes:

Add CloseGuard support to MidiDevice and MidiDeviceServer
Make MidiDevice.close() thread safe
Make non-subclassable API classes final
Other misc cleanup

Change-Id: I7a5d31b06b8c2403cfbc5597c5c1395f0ac90194
/frameworks/base/media/java/android/media/midi/MidiOutputPort.java
4a3d7ed45d98ad2fe900221755845b87f26b554a 06-Mar-2015 Mike Lockwood <lockwood@google.com> MIDI Manager: Add explicit close mechanism for input and output ports

Relying on errors from closing the file descriptor is not reliable
and was resulting in file descriptor leaks in device servers.

Change-Id: Ib5cc22dba493eae6608a12cc6d4178d8390da77b
/frameworks/base/media/java/android/media/midi/MidiOutputPort.java
3b7664589be22ddad34b72e11ced937d48660ebb 04-Mar-2015 Mike Lockwood <lockwood@google.com> Make MidiSender and MidiReceiver abstract classes, rename MidiReceiver.post() to receive()

Change-Id: I1cef3bd48ca0acf2968c9de223f78445f3434404
/frameworks/base/media/java/android/media/midi/MidiOutputPort.java
20821ecbe81ba52b260ae232096bc2bfb3e92ad0 24-Feb-2015 Mike Lockwood <lockwood@google.com> Eliminate MidiPort base class for MidiInputPort and MidiOutputPort

Change-Id: I628c0468ac980eee909add53a4d6e55e9b358603
/frameworks/base/media/java/android/media/midi/MidiOutputPort.java
11fd96d6ff25bc1d710448eab545fe09da55a5f5 02-Mar-2015 Mike Lockwood <lockwood@google.com> MidiManager: Virtual MIDI devices are now implemented as Services

To implement a virtual MIDI device, include a subclass of MidiDeviceService in
your application. This service is identified by an intent filter and meta-data
in the application's manifest to allow the MIDI manager to register the virtual device
without actually running the application. Instead, the application's MidiDeviceService
subclass is started on demand when MIDI manager clients want to open the device.

Here is an example of how the MidiDeviceService might be described in the application manifest:

<service android:name="VirtualDeviceService">
<intent-filter>
<action android:name="android.media.midi.MidiDeviceService" />
</intent-filter>
<meta-data android:name="android.media.midi.MidiDeviceService"
android:resource="@xml/device_info" />
</service>

and the device_info.xml meta-data:

<devices>
<device manufacturer="Sample Manufacturer" model="Sample Model" private="false">
<input-port name="my input port" />
<output-port name="my output port" />
</device>
</devices>

(note that the <input-port> and <output-port> names are not currently used, but support for these
will be added in a subsequent change)

Client's of the virtual device will bind directly to the hosting application's MidiDeviceService subclass.
To support this, MidiManager.openDevice() now returns the MidiDevice asynchronously via a callback.

This change also adds a utility class called MidiDispatcher, which is a MidiReceiver
that dispatches all data it receives to a list of other MidiReceivers.
We now use this internally in MidiInputPort and MidiDeviceServer, but developers
may use it for other purposes as well.

Change-Id: Ic3009f06d56f3d5edbd87de3f0c330b51a1c217d
/frameworks/base/media/java/android/media/midi/MidiOutputPort.java
b673770f7172d4fca9bc05de1f36bc53e93eb247 20-Feb-2015 Mike Lockwood <lockwood@google.com> Add MIDI Manager API tweaks:

- Change the package name from android.midi to android.media.midi

- Add option for specifying a Handler for DeviceCallback notifications

Change-Id: Ia9e9817a651c06299f4e02ee1da3c9666ff64cb9
/frameworks/base/media/java/android/media/midi/MidiOutputPort.java