Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Pas de son avec la demo java

6 réponses
Avatar
Alain
Bonjour,

Mes applications utilisant java ne peuvent reproduire le son.
Le phénomène est constaté sur deux machines linux différentes, disposant de
cartes son différentes (M-audio et SoundBlaster).
Le seul point commun entre ces deux machines est ALSA et JDK-1.5

J'ai téléchargé le programme de test proposé par SUN et cela
ne fonctionne pas non plus.

J'ai trouvé ce programme de test ici :

http://java.sun.com/products/java-media/sound/samples/JavaSoundDemo/

Il y a quatre tests proposés sur cette mini application.
Les tests Groove Box et Midi Synthetiseur fonctionnent correctement, le son
est ok.

Le test Capture fonctionne, on voit apparaitre la forme de l'onde
enregistrée dans la fenêtre.
Le test Playback semble fonctionner, on voit le curseur avancer le long de
la forme d'onde, mais cela ne produit aucun son !


Les 5 tests JukeBox ne produisent aucun son !
Des messages d'erreurs sont émis et ces messages varient selon le format du
fichier audio selectionné.

1) Lecture du fichier welcome.wav :
Affiche le message d'erreur suivant, puis le compteur se met à tourner,
pas de son.
java.lang.IllegalArgumentException: Unsupported control type: Pan
at
com.sun.media.sound.AbstractLine.getControl(AbstractLine.java:147)
at Juke.setPan(Juke.java:435)
at Juke.playSound(Juke.java:302)
at Juke.run(Juke.java:410)
at java.lang.Thread.run(Thread.java:595)

2) Lecture du fichier sfx-medley.rmf :
Affiche le message d'erreur suivant, le compteur ne tourne pas, pas de
son.
Exception in thread "Juke" java.lang.NullPointerException
at Juke.setGain(Juke.java:464)
at Juke.playSound(Juke.java:301)
at Juke.run(Juke.java:410)
at java.lang.Thread.run(Thread.java:595)

3) Lecture du fichier 22-new.aif :
Pas de message d'erreur, le compteur tourne, pas de son.

4) Lecture du fichier trippygaia1.mid
Affiche le message d'erreur suivant, pas de compteur, pas de son.
Exception in thread "Juke" java.lang.NullPointerException
at Juke.setGain(Juke.java:464)
at Juke.playSound(Juke.java:301)
at Juke.run(Juke.java:410)
at java.lang.Thread.run(Thread.java:595)

5) Lecture du fichier spacemusic.au :
Affiche les messages d'erreur suivants, le compteur tourne, pas de son.
java.lang.IllegalArgumentException: Unsupported control type: Pan
at
com.sun.media.sound.AbstractLine.getControl(AbstractLine.java:147)
at Juke.setPan(Juke.java:435)
at Juke.playSound(Juke.java:302)
at Juke.run(Juke.java:410)
at java.lang.Thread.run(Thread.java:595)
java.lang.IllegalArgumentException: Unsupported control type: Pan
at
com.sun.media.sound.AbstractLine.getControl(AbstractLine.java:147)
at Juke.setPan(Juke.java:435)
at Juke.playSound(Juke.java:302)
at Juke.run(Juke.java:410)
at java.lang.Thread.run(Thread.java:595)
Exception in thread "Juke" java.lang.NullPointerException
at Juke.setGain(Juke.java:464)
at Juke.playSound(Juke.java:301)
at Juke.run(Juke.java:410)
at java.lang.Thread.run(Thread.java:595)


Mes recherche sur google semblent indiquer que le problème est apparu à
partir du JDK-1.5
Merci de m'avoir lu jusqu'ici.

Alain

6 réponses

Avatar
noone
On Sat, 14 Jul 2007 15:32:26 +0200, Alain wrote:

Mes recherche sur google semblent indiquer que le problème est apparu à
partir du JDK-1.5
Merci de m'avoir lu jusqu'ici.


J'ai toute ces erreurs et tout fonctionne chez moi (le son je veux dire)
sauf pour le fichier .mid mais je sais que j'ai pas compiler le module
idoine


$ uname -a
Linux hammer 2.6.21.5 #1 SMP Fri Jun 15 18:18:53 CEST 2007 i686 GNU/Linux

$ java -version
java version "1.5.0_10"
Java(TM) 2 Runtime Environment, Standard Edition (build 1.5.0_10-b03)
Java HotSpot(TM) Client VM (build 1.5.0_10-b03, mixed mode, sharing)

sinon le son marche sur ta machine ?

Avatar
Alain
J'ai toute ces erreurs et tout fonctionne chez moi (le son je veux dire)
sauf pour le fichier .mid mais je sais que j'ai pas compiler le module
idoine


$ uname -a
Linux hammer 2.6.21.5 #1 SMP Fri Jun 15 18:18:53 CEST 2007 i686 GNU/Linux

$ java -version
java version "1.5.0_10"
Java(TM) 2 Runtime Environment, Standard Edition (build 1.5.0_10-b03)
Java HotSpot(TM) Client VM (build 1.5.0_10-b03, mixed mode, sharing)

sinon le son marche sur ta machine ?


Bonjour,
Oui le son marche sur toutes les autres applications non basées sur java.
Mais l'info que tu me donnes en parlant de ton module manquant pour les .mid
m'amène à constater que je n'ai rien indiqué concernant d'éventuels modules
audio lors de la compilation de mon java-1.5 !!
Je pensais avoir bien lu le manuel mais quelque chose a du m'échapper à
l'époque.
Si tu peux m'en dire plus sur ces modules audio je t'en remercie.
Alain

:$ uname -a
Linux stylus 2.6.18 #1 SMP PREEMPT Sat Nov 18 00:11:45 CET 2006 i686 i686
i386 GNU/Linux

:$ java -version
java version "1.5.0-internal"
Java(TM) 2 Runtime Environment, Standard Edition (build
1.5.0-internal-update-8)
Java HotSpot(TM) Server VM (build 1.5.0-internal-update-8, mixed mode)

Avatar
noone
:$ uname -a
Linux stylus 2.6.18 #1 SMP PREEMPT Sat Nov 18 00:11:45 CET 2006 i686 i686
i386 GNU/Linux

:$ java -version
java version "1.5.0-internal"
Java(TM) 2 Runtime Environment, Standard Edition (build
1.5.0-internal-update-8)
Java HotSpot(TM) Server VM (build 1.5.0-internal-update-8, mixed mode)


tu as concu les binaire java ?
he ben tu aurais du lire ca avant :
http://java.sun.com/j2se/1.5.0/scsl/build-linux.html

tu utilises bien ALSA ?

Avatar
Alain
he ben tu aurais du lire ca avant :
http://java.sun.com/j2se/1.5.0/scsl/build-linux.html

tu utilises bien ALSA ?


Oui ALSA est bien installé sur le système, les autres applications
l'utilisent sans problème.
Lors de la compil j'avais bien ALSA qui était déjà installé.
ALSA server a bien été linké sur la ld libasound.so...

A titre d'essai, je viens de télécharger et d'installer la version
précompilée du jdk1.5.0_12
Eh bien pas de son non plus.

Je suis allé faire un tour dans le répertoire ../bin du jdk.
J'ai fait un 'ldd' sur chaque binaire et aucun n'indique utiliser la
librairie ALSA, que ce soit sur ma propre version ou celle précompilée.

Encore merci pour tes réponses, je continue les recherches.
Alain

Avatar
Alain
J'ai refait quelques essais avec la démo :
http://java.sun.com/products/java-media/sound/samples/JavaSoundDemo/

Je ne peux toujours pas écouter les fichiers .wav mais ça fonctionne avec
les formats .mid et .rmf sous réserve de procéder de la manière suivante :

1) Selectionner le fichier .rmf ou .mid
2) Actionner le bouton "start" qui se transforme alors en "stop"
3) Actionner le bouton "pause" qui se transforme alors en bouton "resume"
4) Actionner le bouton "resume" ET SEULEMENT A CE MOMENT LE SON DEMARRE !

Une fois le son lancé, il n'y a plus moyen de l'arréter par le bouton "stop"
en revanche le bouton pause/resume joue son rôle.

Comportement bizarre pour cette démo :(
Ce sont surtout les fichiers .wav qui m'interressent mais ce n'est pas
encore résolu.
Avatar
tatane
Faut utiliser l'émulation oss? à tout hasard, j'en suis pas sûr....
(modprobe snd-pcm-oss)

Stéphane