Publicité
+ Répondre à la discussion
Affichage des résultats 1 à 9 sur 9
  1. #1
    Invité de passage
    Inscrit en
    mai 2010
    Messages
    5
    Détails du profil
    Informations forums :
    Inscription : mai 2010
    Messages : 5
    Points : 0
    Points
    0

    Par défaut Bibiotheque audio pour jouer .wav simultanés

    Bonjour,

    je cherche une façon sous windows, en C ou C++ de jouer plusieurs fichiers Wave en simultané, cad que lancer un nouveau n'interrompe pas ceux en cours, comme quand plusieurs appli le font . Si c'est possible à faire avec la standard winmm.dll , tant mieux , je sais pas faire ... sinon si vous connaissez une lib en Freeware qui le permet...

    Merci d'avance
    Jean

  2. #2
    Expert Confirmé Sénior
    Profil pro
    Développeur informatique
    Inscrit en
    novembre 2006
    Messages
    4 882
    Détails du profil
    Informations personnelles :
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : novembre 2006
    Messages : 4 882
    Points : 6 906
    Points
    6 906

    Par défaut

    Salut je pense que DirectSound composante de Direct X apporte suffisamment de performances pour cela.
    Avec DSound on peut allouer un DirectSoundBuffer qui peut englober plusieurs sons wav

  3. #3
    Invité de passage
    Inscrit en
    mai 2010
    Messages
    5
    Détails du profil
    Informations forums :
    Inscription : mai 2010
    Messages : 5
    Points : 0
    Points
    0

    Par défaut

    Slt, et merci
    je ne connais pas Direct X, mais j'ai l'impression que tu proposes de prémélanger les sons avant execution, dis moi si je me plante.
    Or cela je peut le faire en tout cas avec audacity p.ex.
    ce que je cherche à faire c'est que les sons se superposent au fur et à mesure que je les execute et s'arrètent quand les .wav sont joués jusqu'au bout

  4. #4
    Responsable 2D/3D/Jeux

    Avatar de LittleWhite
    Homme Profil pro Alexandre Laurent
    Ingénieur développement logiciels
    Inscrit en
    mai 2008
    Messages
    16 489
    Détails du profil
    Informations personnelles :
    Nom : Homme Alexandre Laurent
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : mai 2008
    Messages : 16 489
    Points : 84 457
    Points
    84 457

    Par défaut

    Bonjour,

    Je trouve que l'utilisation de DirectX est un peu exagéré pour une telle chose. Mais ce n'est qu'un avis personnel.
    Sinon, j'ai fait ( du moins j'avais le resultat ) ce que vous demandez. Je l'ai fait avec une bibliothèque qui s'appelle OpenAL. Dans mon programme, on appuyez sur des touches et les sons étaient joué en même temps.
    Le site: http://connect.creativelabs.com/openal/default.aspx

    Sinon, il est surement aussi possible de le faire avec la SDL (notamment SDL Audio), mais pareille que pour DirectX, c'est un peu exagéré d'utiliser tout une bibliothèque de jeu, juste pour la partie son. Mais c'est faisable .
    Vous souhaitez participer à la rubrique 2D / 3D / Jeux ? Contactez-moi
    La rubrique a aussi un blog !

    Ma page sur DVP
    Mon Portfolio

    Qui connaît l'erreur, connaît la solution.

  5. #5
    Expert Confirmé Sénior
    Profil pro
    Développeur informatique
    Inscrit en
    novembre 2006
    Messages
    4 882
    Détails du profil
    Informations personnelles :
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : novembre 2006
    Messages : 4 882
    Points : 6 906
    Points
    6 906

    Par défaut

    Citation Envoyé par Guy Tariste Voir le message
    Or cela je peut le faire en tout cas avec audacity p.ex.
    ce que je cherche à faire c'est que les sons se superposent au fur et à mesure que je les execute et s'arrètent quand les .wav sont joués jusqu'au bout
    bonjour on peut faire totalement ce que l'on veut avec Direct Sound...l'important c'est de savoir comment programmer Dsound..
    Citation Envoyé par LittleWhite Voir le message
    Sinon, il est surement aussi possible de le faire avec la SDL (notamment SDL Audio), mais pareille que pour DirectX, c'est un peu exagéré d'utiliser tout une bibliothèque de jeu, juste pour la partie son. Mais c'est faisable .
    1-Dsound n'est pas tout à fait une biblio de programmation de jeu..
    des logiciels pros comme Cubase entre autre utilisent l'accélération matérielle sous Windows via Direct Sound.
    DSound je me répète c'est pour avoir directement accés à l'accélération matérielle.
    C'est pareil pour la 3d avec Direct3d sous Windows on ne peut pas faire autrement.
    2-utiliser DSound cela revient tout juste à ajouter un fichier .h et un fichier .lib éventuellement , le compilo n'effectuant l'édition des liens seulements qu'avec dsound.lib ( et pas d3d.lib etc..)

    Et perso je n'aime pas du tout SDL sous Windows c'est une lib facile à programmer mais pas très performante....
    Passe encore pour faire un jeu multiplateforme tournant éventuellement sous Linux et autres mais sous Windows je préfère programmer avec Direct X directement pour utiliser la quintessence de l'OS.
    L'avantage de modules comme Open AL c'est par exemple pour charger des fichiers .mp3 voire des ondes waves : tout est fait alors qu'avec DSound il faut tout faire par soi-même.
    Mais dans le SDK de Direct X il y a des exemples pour charger et jouer des fichiers wav

  6. #6
    Invité de passage
    Inscrit en
    mai 2010
    Messages
    5
    Détails du profil
    Informations forums :
    Inscription : mai 2010
    Messages : 5
    Points : 0
    Points
    0

    Par défaut

    Merci à tous

    je vais me mettre à DirectSound, tant qu'à investir du temps, elle semble la plus complète. Waveout semble faire l'affaire également.
    D'apres ce que j'ai compris, dans DirectSound on stocke le contenu des .wav dans des buffers, que le logiciel mixe au fur et à mesure au moment ou on veut les jouer dans le buffer qu'il envoie à la carte..

    A bientot

  7. #7
    Invité de passage
    Inscrit en
    mai 2010
    Messages
    5
    Détails du profil
    Informations forums :
    Inscription : mai 2010
    Messages : 5
    Points : 0
    Points
    0

    Par défaut

    Apparemment on trouve des sample de code assez facilement,
    Question: quel est le meilleur moyen de charger DirectSound dll etc
    Merci d'avance

  8. #8
    Expert Confirmé Sénior
    Profil pro
    Développeur informatique
    Inscrit en
    novembre 2006
    Messages
    4 882
    Détails du profil
    Informations personnelles :
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : novembre 2006
    Messages : 4 882
    Points : 6 906
    Points
    6 906

    Par défaut

    Citation Envoyé par Guy Tariste Voir le message
    Apparemment on trouve des sample de code assez facilement,
    Question: quel est le meilleur moyen de charger DirectSound dll etc
    Merci d'avance

    salut le moyen le plus simple c'est d'avoir le SDK et de lier les fichiers .lib avec l'exe du projet donc d'inclure ces fichiers .lib
    Quel outil de développement utilises-tu ?

  9. #9
    Invité de passage
    Inscrit en
    mai 2010
    Messages
    5
    Détails du profil
    Informations forums :
    Inscription : mai 2010
    Messages : 5
    Points : 0
    Points
    0

    Par défaut

    Citation Envoyé par Mat.M Voir le message
    salut le moyen le plus simple c'est d'avoir le SDK et de lier les fichiers .lib avec l'exe du projet donc d'inclure ces fichiers .lib
    Quel outil de développement utilises-tu ?
    Visual Studio (C++)

Liens sociaux

Règles de messages

  • Vous ne pouvez pas créer de nouvelles discussions
  • Vous ne pouvez pas envoyer des réponses
  • Vous ne pouvez pas envoyer des pièces jointes
  • Vous ne pouvez pas modifier vos messages
  •