JDK-6483856 : MIDI OUT transmitter not available
  • Type: Bug
  • Component: client-libs
  • Sub-Component: javax.sound
  • Affected Version: 6
  • Priority: P4
  • Status: Closed
  • Resolution: Duplicate
  • OS: windows_xp
  • CPU: x86
  • Submitted: 2006-10-19
  • Updated: 2011-02-16
  • Resolved: 2006-11-14
Related Reports
Duplicate :  
Description
FULL PRODUCT VERSION :
java version "1.6.0-beta2"
Java(TM) SE Runtime Environment (build 1.6.0-beta2-b86)
Java HotSpot(TM) Client VM (build 1.6.0-beta2-b86, mixed mode, sharing)


ADDITIONAL OS VERSION INFORMATION :
Microsoft Windows XP [Version 5.1.2600]

EXTRA RELEVANT SYSTEM CONFIGURATION :
dxdiag reports that the sound device is "SoundMAX Digital Audio" and the driver is smwdm.sys, version 5.12.0001.3665 (English). The tests of DirectSound were all okay. On the Music tab, the Microsoft Synthesizer and Microsoft MIDI Mapper tested okay.

A DESCRIPTION OF THE PROBLEM :
Any program that requires a MIDI OUT transmitter fails with the error message: "MIDI OUT transmitter not available". This commonly occurs when the program calls MidiSystem.getSequencer().

STEPS TO FOLLOW TO REPRODUCE THE PROBLEM :
Download the Java Sound Demo from http://java.sun.com/products/java-media/sound/samples/JavaSoundDemo/, and start the program: java -jar JavaSoundDemo.jar


EXPECTED VERSUS ACTUAL BEHAVIOR :
EXPECTED -
The sound demo program should start.
ACTUAL -
The error message shown below, and the program exits.

ERROR MESSAGES/STACK TRACES THAT OCCUR :
> java -jar JavaSoundDemo.jar
javax.sound.midi.MidiUnavailableException: MIDI OUT transmitter not available
        at com.sun.media.sound.AbstractMidiDevice.createTransmitter(Unknown Sour
ce)
        at com.sun.media.sound.AbstractMidiDevice.getTransmitter(Unknown Source)

        at javax.sound.midi.MidiSystem.getSequencer(Unknown Source)
        at javax.sound.midi.MidiSystem.getSequencer(Unknown Source)
        at JavaSound.main(JavaSound.java:167)

REPRODUCIBILITY :
This bug can be reproduced always.

---------- BEGIN SOURCE ----------
Please download the example from http://java.sun.com/products/java-media/sound/samples/JavaSoundDemo/
---------- END SOURCE ----------

Comments
EVALUATION Specified sound card has no hardware midi ports so JavaSound have to use it's own software synthesizer. By default JavaSE JRE doesn't install soundbank for software synthesizer, but sequencer doesn't use software synth. if no soundbank available. So sequencer couldn't find any appropriate output device and fails. Any way JavaSoundDemo should handle such case propetly, so closing the CR as duplicate of RFE for new JavaSoundDemo app
14-11-2006