Avant sur un jre 1.4 javais crée une classe audio qui fonctionnait très
bien. A présent avec java 1.5,
java -version
java version "1.5.0_11"
Java(TM) 2 Runtime Environment, Standard Edition (build 1.5.0_11-b03)
Java HotSpot(TM) Client VM (build 1.5.0_11-b03, mixed mode, sharing)
Cette classe fonctionne mais mais juste avec un seul objet et pour une
seule lecture d'un fichier audio. J'aimerai savoir, j'ai recherché sans
avoir trouvé comment faire pour quelle fontionne correctement.
Le message d'érreur :
javax.sound.sampled.LineUnavailableException: line with format PCM_SIGNED 8000.0 Hz, 16 bit, mono, 2 bytes/frame, little-endian not supported.
Qui me semble n'avoir pas de rapport avec mon sousis.
J'utilise GNU/Debian Linux i686 Etch, je n'ai pas fait l'essai sur un
autre OS.
Merci.
Le code :
* Created on 8 févr. 2004
package audio;
import java.net.URL;
/**
* PlayWave est une classe qui permet de jouer des fichiers audio.
*
* @author Stéphane Joly.
* @version version beta1.0.1
* GPL Code
*/
public class PlayWave {
private String bruit_;
private Clip co_;
private double volume_;
private String REPDATAS = "";
/**
* Constructeur implicite.
*
*/
public PlayWave() {
} // Fin du constructeur par défaut.
/**
* Constructeur avec passage d'un chemin vers le fichier audio.
*
* @param chemin
* du fichier audio.
*/
public PlayWave(String son) {
this(son, 1D);
} // Fin du constructeur PlayWave(String son).
/**
* Constructeur avec passage d'un chemin vers le fichier audio est ainsi que
* le volume entre 0.00 et 1.00
*
* @param son
* @param volume
*/
public PlayWave(String son, double volume) {
} // Fin du constructeur PlayWave(String son, double volume).
/**
* Méthode pour affecter un son.
*
* @param son
* chemin vers le fichier audio.
*/
public void setWave(String son) {
this.setWave(son, 1D);
} // Fin de la méthode playWave(String son).
/**
* Méthode avec passage d'un chemin vers le fichier audio est ainsi que le
* volume entre 0.00 et 1.00
*
* @param son
* @param volume
*/
public void setWave(String son, double volume) {
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
Olivier Girant
tatane wrote:
Bonour,
Avant sur un jre 1.4 javais crée une classe audio qui fonctionnait très bien. A présent avec java 1.5,
java -version java version "1.5.0_11" Java(TM) 2 Runtime Environment, Standard Edition (build 1.5.0_11-b03) Java HotSpot(TM) Client VM (build 1.5.0_11-b03, mixed mode, sharing)
Cette classe fonctionne mais mais juste avec un seul objet et pour une seule lecture d'un fichier audio. J'aimerai savoir, j'ai recherché sans avoir trouvé comment faire pour quelle fontionne correctement.
Le message d'érreur : javax.sound.sampled.LineUnavailableException: line with format PCM_SIGNED 8000.0 Hz, 16 bit, mono, 2 bytes/frame, little-endian not supported.
Qui me semble n'avoir pas de rapport avec mon sousis.
J'utilise GNU/Debian Linux i686 Etch, je n'ai pas fait l'essai sur un autre OS.
Bonjour,
Je ne connais pas les subtiles différences entre java 1.4 et java 1.5 au niveau audio, on dirait que java 1.5 supporte moins de format audio. Essaie de convertir tes fichiers audio dans un format plus "commun" par exemple 16 bits, mono, little-endian mais 24 KHz ou 32 ou 44.1 ou 48. Audacity sous Linux sait très bien faire ce rééchantillonnage.
oliv
tatane wrote:
Bonour,
Avant sur un jre 1.4 javais crée une classe audio qui fonctionnait très
bien. A présent avec java 1.5,
java -version
java version "1.5.0_11"
Java(TM) 2 Runtime Environment, Standard Edition (build 1.5.0_11-b03)
Java HotSpot(TM) Client VM (build 1.5.0_11-b03, mixed mode, sharing)
Cette classe fonctionne mais mais juste avec un seul objet et pour une
seule lecture d'un fichier audio. J'aimerai savoir, j'ai recherché sans
avoir trouvé comment faire pour quelle fontionne correctement.
Le message d'érreur :
javax.sound.sampled.LineUnavailableException: line with format PCM_SIGNED 8000.0 Hz, 16 bit, mono, 2 bytes/frame, little-endian not supported.
Qui me semble n'avoir pas de rapport avec mon sousis.
J'utilise GNU/Debian Linux i686 Etch, je n'ai pas fait l'essai sur un
autre OS.
Bonjour,
Je ne connais pas les subtiles différences entre java 1.4 et java 1.5 au
niveau audio, on dirait que java 1.5 supporte moins de format audio.
Essaie de convertir tes fichiers audio dans un format plus "commun" par
exemple 16 bits, mono, little-endian mais 24 KHz ou 32 ou 44.1 ou 48.
Audacity sous Linux sait très bien faire ce rééchantillonnage.
Avant sur un jre 1.4 javais crée une classe audio qui fonctionnait très bien. A présent avec java 1.5,
java -version java version "1.5.0_11" Java(TM) 2 Runtime Environment, Standard Edition (build 1.5.0_11-b03) Java HotSpot(TM) Client VM (build 1.5.0_11-b03, mixed mode, sharing)
Cette classe fonctionne mais mais juste avec un seul objet et pour une seule lecture d'un fichier audio. J'aimerai savoir, j'ai recherché sans avoir trouvé comment faire pour quelle fontionne correctement.
Le message d'érreur : javax.sound.sampled.LineUnavailableException: line with format PCM_SIGNED 8000.0 Hz, 16 bit, mono, 2 bytes/frame, little-endian not supported.
Qui me semble n'avoir pas de rapport avec mon sousis.
J'utilise GNU/Debian Linux i686 Etch, je n'ai pas fait l'essai sur un autre OS.
Bonjour,
Je ne connais pas les subtiles différences entre java 1.4 et java 1.5 au niveau audio, on dirait que java 1.5 supporte moins de format audio. Essaie de convertir tes fichiers audio dans un format plus "commun" par exemple 16 bits, mono, little-endian mais 24 KHz ou 32 ou 44.1 ou 48. Audacity sous Linux sait très bien faire ce rééchantillonnage.
oliv
tatane
Bonjour Oliver,
Que je suis bête :) J'avais bien sûr fait l'essai avec Audacity, c'est pour cela que j'avais noté que le problème ne venait pas de là. En fait, je viens de remarquer que java utilise oss et non alsa (y a peut être un truc à changer). Comme oss n'etait pas actif sur la machine ou les tests étaient effectués bien que le son soit opérationnel, j'avais ce genre de comportement.
Merci tout de même d'avoir donné une réponse.
Stéphane.
Bonjour Oliver,
Que je suis bête :)
J'avais bien sûr fait l'essai avec Audacity, c'est pour cela que j'avais
noté que le problème ne venait pas de là. En fait, je viens de remarquer
que java utilise oss et non alsa (y a peut être un truc à changer). Comme
oss n'etait pas actif sur la machine ou les tests étaient effectués bien
que le son soit opérationnel, j'avais ce genre de comportement.
Que je suis bête :) J'avais bien sûr fait l'essai avec Audacity, c'est pour cela que j'avais noté que le problème ne venait pas de là. En fait, je viens de remarquer que java utilise oss et non alsa (y a peut être un truc à changer). Comme oss n'etait pas actif sur la machine ou les tests étaient effectués bien que le son soit opérationnel, j'avais ce genre de comportement.