JDK-4903786 : MIDI OUT does not implement getMicrosecondPosition() consistently
  • Type: Bug
  • Component: client-libs
  • Sub-Component: javax.sound
  • Affected Version: 5.0
  • Priority: P4
  • Status: Resolved
  • Resolution: Fixed
  • OS: generic
  • CPU: generic
  • Submitted: 2003-08-08
  • Updated: 2003-08-19
  • Resolved: 2003-08-19
The Version table provides details related to the release that this issue/RFE will be addressed.

Unresolved : Release in which this issue/RFE will be addressed.
Resolved: Release in which this issue/RFE has been resolved.
Fixed : Release in which this issue/RFE has been fixed. The release containing this fix may be available for download as an Early Access Release or a General Availability Release.

To download the current JDK release, click here.
5.0 tigerFixed
For MIDI OUT devices, the method javax.sound.midi.MidiDevice.getMicrosecondPosition() always returns -1. This is allowed by the specification (it means that this device doesn't provide timestamps). However, for MIDI IN devices, the same method returns useful timestamps. From the viewpoint of a user, it shouldn't matter if a device is in or out for just getting a timestamp. Therefore, the current behaviour is inconvenient.

CONVERTED DATA BugTraq+ Release Management Values COMMIT TO FIX: tiger FIXED IN: tiger INTEGRATED IN: tiger tiger-b16

EVALUATION Indeed missing. Quite easy to fix, since the code for getting the timestamp itself is already available in the implementation of the MIDI IN devices.

WORK AROUND Use a MIDI IN device for timing

SUGGESTED FIX Implement this method the same way it is implemented for IN devices.