IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Entrée/Sortie Java Discussion :

AudioInputStream.skip avec une valeur négative


Sujet :

Entrée/Sortie Java

  1. #1
    Membre habitué Avatar de Badshade23
    Homme Profil pro
    Développeur Java
    Inscrit en
    Décembre 2014
    Messages
    203
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Développeur Java

    Informations forums :
    Inscription : Décembre 2014
    Messages : 203
    Points : 133
    Points
    133
    Par défaut AudioInputStream.skip avec une valeur négative
    Bonjour tout le monde ,

    Je suis en train de réaliser un petit programme pour lire un fichier audio, le modèle reste basique :

    - Je crée un audioInputStream sur mon fichier audio

    - J'ouvre un SourceDataLine pour lire les octets

    - et je fait une boucle "while" pour parcourir les octets de mon fichier audio (
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    bytesRead=audioInputStream .read(audioDataFull,0,audioInputStream .length)
    ) pour les lire avec mon SourceDataLine (
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    souceDataLine.write(audioDataFull,0,bytesRead);
    )

    La lecture s’effectue parfaitement , j'ai fait un petite fonction pour faire un "bon" en avant de X(s) via la méthode skip() de audioInputStream et ceci aussi fonctionne parfaitement.

    Mon probleme est pour la réalisation d'un "bon" en arrière de X(s). J'utilise là aussi la méthode skip() en lui donnant en paramètre un nombre négatif (pour le retour en arrière ) et sa fonctionne, le son recule bien de X(s). Le probleme c'est que par la suite mon fichier audio ne se lit plus complétement, la lecture s’arrête avant car mon audioInputStream.read me renvoi le fameux -1 comme si mon read était arriver a la fin alors que non ....

    Quelqu'un a une idée ?

    Merci d'avance

  2. #2
    Membre chevronné
    Inscrit en
    Mai 2006
    Messages
    1 364
    Détails du profil
    Informations forums :
    Inscription : Mai 2006
    Messages : 1 364
    Points : 1 984
    Points
    1 984
    Par défaut
    Je n'ai jamais utilisé d'AudioInputStream mais vu que tu n'as pas eu de reponse, j'imagine que ce sera toujours mieux que rien.
    En général, les input streams ne permettent pas d'aller en arriere (par définition, ils representent un flux de données). Une idée dans ton cas pourrait etre de compter ou tu en est dans le stream lors de la lecture puis, pour revenir en arriere, faire un reset du stream et avancer de ton compteur moins l'offset.
    Il y a peut etre mieux comme méthode mais au moins, ca devrait marcher

  3. #3
    Membre habitué Avatar de Badshade23
    Homme Profil pro
    Développeur Java
    Inscrit en
    Décembre 2014
    Messages
    203
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Développeur Java

    Informations forums :
    Inscription : Décembre 2014
    Messages : 203
    Points : 133
    Points
    133
    Par défaut
    Merci pour avoir pris le temps de me répondre
    J'ai déjà réfléchie à ton idée et je pense que je l'utiliserai en dernier recourt .
    On ma dit aussi que je devais regarder vers la longueur de lecture d'un buffer et la modifier selon mes modifications, mais je ne sait pas encore comment faire ^^.

  4. #4
    Membre habitué Avatar de Badshade23
    Homme Profil pro
    Développeur Java
    Inscrit en
    Décembre 2014
    Messages
    203
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Développeur Java

    Informations forums :
    Inscription : Décembre 2014
    Messages : 203
    Points : 133
    Points
    133
    Par défaut
    Personne n'a d'idée ?

  5. #5
    Membre habitué Avatar de Badshade23
    Homme Profil pro
    Développeur Java
    Inscrit en
    Décembre 2014
    Messages
    203
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Développeur Java

    Informations forums :
    Inscription : Décembre 2014
    Messages : 203
    Points : 133
    Points
    133
    Par défaut
    C'est bon j'ai trouvé enfin du-moins j'ai contourner le problème.

    Pour remédier à ce système, j'ai tous simplement utiliser la classe Clip qui est bien plus pratique à mettre en place surtout si on veux naviguer facilement dans le fichier audio. Elle contient elle même des méthode qui permette de positionner le curseur de lecture au bonne endroit sans devoir "bidouiller".

    Voilà problème résolue et merci encore d'avoir pris le temps de me répondre .

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Substring avec un string contenant une valeur négative
    Par Mercenaire dans le forum Général JavaScript
    Réponses: 4
    Dernier message: 10/06/2014, 17h33
  2. Réponses: 8
    Dernier message: 05/05/2009, 08h36
  3. Pixel avec une valeur négative
    Par Minouchka dans le forum Traitement d'images
    Réponses: 8
    Dernier message: 24/10/2007, 10h21
  4. avoir un champ avec une valeur numerique qui se decremente
    Par romeo9423 dans le forum Décisions SGBD
    Réponses: 3
    Dernier message: 15/02/2005, 14h29
  5. champ avec une valeur?
    Par sonialem2000 dans le forum Bases de données
    Réponses: 2
    Dernier message: 22/06/2004, 08h23

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo