Précédent   Forum du club des développeurs et IT Pro > Applications > Développement 2D, 3D et Jeux > Audio
Audio Forum d'entraide sur les API et bibliothèques audio
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse
 
Outils de la discussion
Publicité
'
Vieux 25/05/2010, 14h30   #1
Guy Tariste
Invité de passage
 
Inscription : 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
Guy Tariste est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 25/05/2010, 16h40   #2
Mat.M
Expert Confirmé Sénior
 
Développeur informatique
Inscription : novembre 2006
Messages : 4 440
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 440
Points : 5 858
Points : 5 858
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
Mat.M est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 25/05/2010, 17h23   #3
Guy Tariste
Invité de passage
 
Inscription : mai 2010
Messages : 5
Détails du profil
Informations forums :
Inscription : mai 2010
Messages : 5
Points : 0
Points : 0
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
Guy Tariste est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 26/05/2010, 00h44   #4
LittleWhite
Responsable 2D/3D/Jeux


 
Avatar de LittleWhite
 
Homme Alexandre Laurent
Ingénieur développement logiciels
Inscription : mai 2008
Messages : 10 372
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 : 10 372
Points : 39 569
Points : 39 569
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.
LittleWhite est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 26/05/2010, 21h00   #5
Mat.M
Expert Confirmé Sénior
 
Développeur informatique
Inscription : novembre 2006
Messages : 4 440
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 440
Points : 5 858
Points : 5 858
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
Mat.M est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 28/05/2010, 20h08   #6
Guy Tariste
Invité de passage
 
Inscription : mai 2010
Messages : 5
Détails du profil
Informations forums :
Inscription : mai 2010
Messages : 5
Points : 0
Points : 0
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
Guy Tariste est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 28/05/2010, 20h37   #7
Guy Tariste
Invité de passage
 
Inscription : mai 2010
Messages : 5
Détails du profil
Informations forums :
Inscription : mai 2010
Messages : 5
Points : 0
Points : 0
Apparemment on trouve des sample de code assez facilement,
Question: quel est le meilleur moyen de charger DirectSound dll etc
Merci d'avance
Guy Tariste est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 28/05/2010, 21h46   #8
Mat.M
Expert Confirmé Sénior
 
Développeur informatique
Inscription : novembre 2006
Messages : 4 440
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 440
Points : 5 858
Points : 5 858
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 ?
Mat.M est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 29/05/2010, 13h13   #9
Guy Tariste
Invité de passage
 
Inscription : mai 2010
Messages : 5
Détails du profil
Informations forums :
Inscription : mai 2010
Messages : 5
Points : 0
Points : 0
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++)
Guy Tariste est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse
Outils de la discussion

Navigation rapide


Fuseau horaire GMT +2. Il est actuellement 02h32.


 
 
 
 
Partenaires

Hébergement Web