thSoft / elysium

LilyPond IDE for Eclipse
http://elysium.thsoft.hu
14 stars 3 forks source link

How to play the midi #35

Closed GoogleCodeExporter closed 9 years ago

GoogleCodeExporter commented 9 years ago
This may not be a Elysium issue (Eclipse? Java? Fedora?) but nevertheless I 
assume there are people here that can give some advice.

What version of the product are you using? On what operating system?

Elysium 0.2.0.201107291145 with Eclipse 3.7.0 on Fedora 14 with all updates as 
of 2011-08-05.

Problem: I can not play the midi. I do have (virtual) midi devices and Timidity.

javax.sound.midi.MidiUnavailableException
    at javax.sound.midi.MidiSystem.getDefaultDeviceWrapper(Unknown Source)
    at javax.sound.midi.MidiSystem.getSynthesizer(Unknown Source)
    at org.eclipse.ui.views.midi.MidiViewPage.<init>(MidiViewPage.java:56)
    at org.eclipse.ui.views.midi.MidiViewType.createPage(MidiViewType.java:14)
    at org.eclipse.ui.views.midi.MidiViewType.createPage(MidiViewType.java:1)
    at org.eclipse.ui.views.file.FileView.load(FileView.java:219)
    at org.eclipse.ui.views.file.FileView.show(FileView.java:199)
    at org.eclipse.ui.views.file.source.CurrentFileViewSource.currentEditorChanged(CurrentFileViewSource.java:54)
    at org.eclipse.ui.views.file.source.CurrentFileViewSource.init(CurrentFileViewSource.java:48)
    at org.eclipse.ui.views.file.source.CurrentFileViewSource.access$0(CurrentFileViewSource.java:46)
    at org.eclipse.ui.views.file.source.CurrentFileViewSource$1$1.run(CurrentFileViewSource.java:33)
    at org.eclipse.ui.internal.UILockListener.doPendingWork(UILockListener.java:164)
    at org.eclipse.ui.internal.UISynchronizer$3.run(UISynchronizer.java:158)
    at org.eclipse.swt.widgets.RunnableLock.run(RunnableLock.java:35)
    at org.eclipse.swt.widgets.Synchronizer.runAsyncMessages(Synchronizer.java:135)
    at org.eclipse.swt.widgets.Display.runAsyncMessages(Display.java:3563)
    at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3212)
    at org.eclipse.ui.internal.Workbench.runEventLoop(Workbench.java:2696)
    at org.eclipse.ui.internal.Workbench.runUI(Workbench.java:2660)
    at org.eclipse.ui.internal.Workbench.access$4(Workbench.java:2494)
    at org.eclipse.ui.internal.Workbench$7.run(Workbench.java:674)
    at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:332)
    at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:667)
    at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:149)
    at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:123)
    at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:196)
    at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:110)
    at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:79)
    at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:344)
    at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:179)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
    at java.lang.reflect.Method.invoke(Unknown Source)
    at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:622)
    at org.eclipse.equinox.launcher.Main.basicRun(Main.java:577)
    at org.eclipse.equinox.launcher.Main.run(Main.java:1410)
Caused by: java.lang.IllegalArgumentException: Requested device not installed
    at javax.sound.midi.MidiSystem.getDefaultDevice(Unknown Source)

These don't seem to be preferences involving midi devices.

Original issue reported on code.google.com by jvrom...@gmail.com on 6 Aug 2011 at 11:20

GoogleCodeExporter commented 9 years ago
This must be a JDK issue, I also encountered this indeterministically under 
Ubuntu. Refer to these threads:
http://stackoverflow.com/questions/2715613/midisystem-getsequencer-returns-audio
-device-unavailable+timidity+java
http://www.geogebra.org/forum/viewtopic.php?f=22&t=18711&start=15

Original comment by harmathdenes on 6 Aug 2011 at 8:12

GoogleCodeExporter commented 9 years ago
It would already be helpful to know what device it tries to open.

Original comment by jvrom...@gmail.com on 7 Aug 2011 at 1:30

GoogleCodeExporter commented 9 years ago
The code tries to obtain the default device. See 
http://code.google.com/a/eclipselabs.org/p/eclipse-commons/source/browse/org.ecl
ipse.ui.views.midi/src/org/eclipse/ui/views/midi/MidiViewPage.java

Original comment by harmathdenes on 7 Aug 2011 at 7:14

GoogleCodeExporter commented 9 years ago
I appreciate your support, but it is not helping.
A device is something like /dev/midi, I can't seem to find any references in 
the code you refer to.
Is there any documentation on the Java/Eclipse MIDI system? In particular, 
where to designate the midi devices to use?

Original comment by jvrom...@gmail.com on 8 Aug 2011 at 7:23

GoogleCodeExporter commented 9 years ago
Ah, I think there is a discrepancy between the two terminologies (MIDI device 
vs. Unix device), but unfortunately I don't know how the mapping is done 
between them. Maybe you can learn more from this resource: 
http://www.jsresources.org/faq_midi.html

Original comment by harmathdenes on 8 Aug 2011 at 8:56