Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

LineUnavailableException when trying to play .wav file

940 views
Skip to first unread message

Scott

unread,
Apr 30, 2007, 9:09:48 AM4/30/07
to
I'm trying to play a simple .wav file using code copied from:

http://www.developer.com/java/other/article.php/2173111

I'm running the latest Java 1.6 on windows 98 SE. However I get:

PCM_SIGNED 22050.0 Hz, 16 bit, mono, 2 bytes/frame, little-endian
javax.sound.sampled.LineUnavailableException: line with format PCM_SIGNED 22050.
0 Hz, 16 bit, mono, 2 bytes/frame, little-endian not supported.
at com.sun.media.sound.DirectAudioDevice$DirectDL.implOpen(Unknown Source)
at com.sun.media.sound.AbstractDataLine.open(Unknown Source)
at com.sun.media.sound.AbstractDataLine.open(Unknown Source)
at AudioPlayer02$PlayThread.run(AudioPlayer02.java:146)

This happens whenever I try to open the line. I get the same problem when I run
jsinfo.jar (from http://www.jsresources.org/apps/jsinfo.html) - everything is
fine until I try to open a line.

WinAmp plays the .wav file without any problems.

I can even play it using the DirectSound code in:
http://msdn.microsoft.com/archive/en-us/dnarsound/html/msdn_streams3.asp?frame=true

Is this just a problem with windows 98 or is there something I'm over looking?

Andrew Thompson

unread,
Apr 30, 2007, 10:24:54 AM4/30/07
to
Scott wrote:
>I'm trying to play a simple .wav file ..

What do you mean by 'simple'?

>..using code copied from:
..


>PCM_SIGNED 22050.0 Hz, 16 bit, mono, 2 bytes/frame, little-endian
>javax.sound.sampled.LineUnavailableException: line with format PCM_SIGNED 22050.
>0 Hz, 16 bit, mono, 2 bytes/frame, little-endian not supported.

That message is saying that Java does not support that format.

>WinAmp plays the .wav file without any problems.

WinAmp will play almost anything.
I have MP3's that both WinAmp and the JMStudio
will play, while I have others that can only be played
by WinAmp. The same for MIDI files (and I expect,
WAV files).

That code digs directly into the Windows based
system - it would not work cross-platform, so
Java does not work that way.

>Is this just a problem with windows 98 or is there something I'm over looking?

Try whis WAV file, which has been seen to be
'Java compatible'
<http://www.physci.org/test/oscilloscope/sounds/101_0166.wav>

The JMF (especially the Performance Pack) will bring
support for more codecs (types) of more formats, but
even that only covers a relatively small number of sound
types.

--
Andrew Thompson
http://www.athompson.info/andrew/

Message posted via http://www.javakb.com

Scott

unread,
Apr 30, 2007, 1:03:40 PM4/30/07
to
Andrew Thompson wrote:
> Scott wrote:
>> I'm trying to play a simple .wav file ..
>
> What do you mean by 'simple'?
>
>> ..using code copied from:
> ..
>> PCM_SIGNED 22050.0 Hz, 16 bit, mono, 2 bytes/frame, little-endian
>> javax.sound.sampled.LineUnavailableException: line with format PCM_SIGNED 22050.
>> 0 Hz, 16 bit, mono, 2 bytes/frame, little-endian not supported.
>
> That message is saying that Java does not support that format.
>
>> WinAmp plays the .wav file without any problems.
>
> WinAmp will play almost anything.
> I have MP3's that both WinAmp and the JMStudio
> will play, while I have others that can only be played
> by WinAmp. The same for MIDI files (and I expect,
> WAV files).
>
>> I can even play it using the DirectSound code in:
>> http://msdn.microsoft.com/archive/en-us/dnarsound/html/msdn_streams3.asp?frame=true
>
> That code digs directly into the Windows based
> system - it would not work cross-platform, so
> Java does not work that way.
>

If I understand correctly Java is using DirectSound so think I've shown that
the Windows DirectSound interface is OK.

>> Is this just a problem with windows 98 or is there something I'm over looking?
>
> Try whis WAV file, which has been seen to be
> 'Java compatible'
> <http://www.physci.org/test/oscilloscope/sounds/101_0166.wav>
>

Same problem:

PCM_UNSIGNED 16000.0 Hz, 8 bit, mono, 1 bytes/frame,
javax.sound.sampled.LineUnavailableException: line with format PCM_UNSIGNED
16000.0 Hz, 8 bit, mono, 1 bytes/frame, not supported.


at com.sun.media.sound.DirectAudioDevice$DirectDL.implOpen(Unknown Source)
at com.sun.media.sound.AbstractDataLine.open(Unknown Source)
at com.sun.media.sound.AbstractDataLine.open(Unknown Source)
at AudioPlayer02$PlayThread.run(AudioPlayer02.java:146)

> The JMF (especially the Performance Pack) will bring
> support for more codecs (types) of more formats, but
> even that only covers a relatively small number of sound
> types.
>

Thanks for your input, I've just downloaded JMF and I can play .wav files using
JMStudio but the small test program still has the same problem. I think it
must be a configuration issue.

0 new messages