Tux Guitar

Problems

Subject Tuxguitar won't start; Fedora 9 x86_64



Author Message
cwatson
Post: Jul 27th 2008 at 2:06 AM

Hello,
I just installed tuxguitar on Fedora 9. It won't start, and here's the stack trace: Any ideas???
# ./tuxguitar
Exception in thread "main" java.lang.IllegalArgumentException: No line matching interface SourceDataLine supporting format PCM_SIGNED 44100.0 Hz, 16 bit, stereo, 4 bytes/frame, little-endian is supported.
at javax.sound.sampled.AudioSystem.getLine(AudioSystem.java:476)
at javax.sound.sampled.AudioSystem.getSourceDataLine(AudioSystem.java:604)
at com.sun.media.sound.SoftSynthesizer.open(SoftSynthesizer.java:748)
at com.sun.media.sound.SoftSynthesizer.open(SoftSynthesizer.java:726)
at org.herac.tuxguitar.player.impl.MidiPlayerImpl.setSynthesizer(Unknown Source)
at org.herac.tuxguitar.player.impl.MidiPlayerImpl.getSynthesizer(Unknown Source)
at org.herac.tuxguitar.player.impl.MidiPlayerImpl.init(Unknown Source)
at org.herac.tuxguitar.player.impl.MidiPlayerImpl.(Unknown Source)
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:57)
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
at java.lang.reflect.Constructor.newInstance(Constructor.java:532)
at java.lang.Class.newInstance0(Class.java:372)
at java.lang.Class.newInstance(Class.java:325)
at org.herac.tuxguitar.gui.util.ClassLoaderUtil.newInstance(Unknown Source)
at org.herac.tuxguitar.gui.util.ClassLoaderUtil.newInstance(Unknown Source)
at org.herac.tuxguitar.gui.TuxGuitar.initPlayer(Unknown Source)
at org.herac.tuxguitar.gui.TuxGuitar.displayGUI(Unknown Source)
at org.herac.tuxguitar.gui.TuxGuitar.main(Unknown Source)


Back to Top
 
cwatson
Post: Jul 27th 2008 at 2:09 AM

BTW, the splash screen pops up, and then I get that error. This is the version I downloaded:
TuxGuitar-0.9.1-linux-gtk-x86_64.tar.gz


Back to Top
 
cwatson
Post: Jul 27th 2008 at 2:10 AM

Also, swt.jar resides in /usr/lib64/java. It is the only file in the directory


Back to Top
 
Julian
Post: Jul 27th 2008 at 3:50 PM

Why don't you get a newest tuxguitar version ? (0.9.1 is very old )
However the problem is Java sound api can't open a synthesizer.
what JAVA version do you have ??
Sun-java is required to run tuxguitar-0.9.1


Back to Top
 
cwatson
Post: Jul 27th 2008 at 4:52 PM

Oh, that's the version I saw in an older post (I originally downloaded the 32-bit version, and found that file in an earlier post). Here's the java version:

# which java && java -version
/usr/bin/java
java version "1.6.0"
OpenJDK Runtime Environment (build 1.6.0-b09)
OpenJDK 64-Bit Server VM (build 1.6.0-b09, mixed mode)


Back to Top
 
Julian
Post: Jul 27th 2008 at 5:02 PM

so you have openJDK
openJDK was included Gervill synth (a replace for the closed Java Sound Synthesizer)
it seems it's not working on your current version (yes on mine).
By the way with tuxguitar-1.0 you can use other Alsa ports like timidity ( ofcourse you need to install timidity )


Back to Top
 
cwatson
Post: Jul 27th 2008 at 5:10 PM

Ok, I installed Tuxguitar 1.0, and it opens but I still got that error. So I did yum install timidity++ and got this version: timidity++.x86_64 0:2.13.2-15.fc9

I still here no sound when I input notes into the tab. Here's the error that I get when I open:
# ./tuxguitar
java.lang.IllegalArgumentException: No line matching interface SourceDataLine supporting format PCM_SIGNED 44100.0 Hz, 16 bit, stereo, 4 bytes/frame, little-endian is supported.
at javax.sound.sampled.AudioSystem.getLine(AudioSystem.java:476)
at javax.sound.sampled.AudioSystem.getSourceDataLine(AudioSystem.java:604)
at com.sun.media.sound.SoftSynthesizer.open(SoftSynthesizer.java:748)
at com.sun.media.sound.SoftSynthesizer.open(SoftSynthesizer.java:726)
at org.herac.tuxguitar.player.impl.jsa.midiport.MidiPortSynthesizer.getSynthesizer(Unknown Source)
at org.herac.tuxguitar.player.impl.jsa.midiport.MidiPortSynthesizer.open(Unknown Source)
at org.herac.tuxguitar.player.base.MidiPlayer.loadPort(Unknown Source)
at org.herac.tuxguitar.player.base.MidiPlayer.openPort(Unknown Source)
at org.herac.tuxguitar.player.base.MidiPlayer.addPortProvider(Unknown Source)
at org.herac.tuxguitar.gui.system.plugins.base.TGMidiPortProviderPlugin.addPlugin(Unknown Source)
at org.herac.tuxguitar.gui.system.plugins.base.TGMidiPortProviderPlugin.setEnabled(Unknown Source)
at org.herac.tuxguitar.gui.system.plugins.base.TGPluginList.setEnabled(Unknown Source)
at org.herac.tuxguitar.gui.system.plugins.TGPluginManager.openPlugins(Unknown Source)
at org.herac.tuxguitar.gui.TuxGuitar.displayGUI(Unknown Source)
at org.herac.tuxguitar.gui.TGMain.main(Unknown Source)


Back to Top
 
Julian
Post: Jul 27th 2008 at 6:21 PM

> Ok, I installed Tuxguitar 1.0, and it opens but I still got that error
Sure, installing a newest tuxguitar version will not fix an openJDK bug :)

To run tuxguitar with timidity, you need to select it.
go to "Tools -> Preferences" and then select a timidity port at "MIDI Port" on "Sound" section.

But first of all make sure timidity daemon is running.
i'm not sure if it "start" as default under fedora.
exec:
aconnect -o

If you don't see "timidity" ports on the results, is because it's not running.
so you should to start it doing:
timidity -iA -Os

Then it should be able at "MIDI Port" on tuxguitar.

If you want to fix the openJDK problem, you can go to "Tools -> Plugins" and disable "Java Sound Api plugin".
Otherwise, you'll need to wait openJDK fix that bug, or just install a Sun JVM (and ofcourse run tuxguitar with that JVM)


Back to Top
 
cwatson
Post: Jul 27th 2008 at 6:59 PM

Great! Thanks very much for the help.

For the command 'timidity -iA -Os', do I have to keep a command line open, for it to be running? I ran that command and it's either running or is hanging. Tuxguitar now works, though. Thanks again.


Back to Top