View Full Version : [C++] eseguire un file audio
Albitexm
25-01-2010, 19:58
Come si "lancia" in C++ un file audio? Io voglio registrare una parola. Se si verificano delle condizioni, il mio codice deve "lanciare" il file audio registrato. Ovvero se rispondo giusto a una domanda, devo sentire la parola registrata.
Stranamente nei libri di C++ e C che ho letto e tutorial scaricati online, non ho mai visto affrontato il discorso audio.
Specifico io non voglio fare conversioni tra formati o compressioni audio in qualche formato. Voglio semplicemente che un codice invece di restiurmi una
stringa o un valore mi generi un suono.
Ci devi dire anche sistema operativo e compilatore.
L'unica soluzione che va su tutto è che è sempre gratis è (purtroppo) OpenAL... se devi eseguire solo .wav basta anche da sola, sennò ti serve anche l'estensione del plugin che ti serve.
Attento che è veramente astruso se non hai dimestichezza con le interfacce OpenGL-like :D
tomminno
26-01-2010, 12:03
PlaySound su Windows se bastano i WAV.
Eventualmente libreria RTAudio + codec per il formato di interesse
Albitexm
26-01-2010, 12:06
Ci devi dire anche sistema operativo e compilatore.
Windows, Visual C++ 2008 Express.
Albitexm
26-01-2010, 12:28
PlaySound su Windows se bastano i WAV.
Eventualmente libreria RTAudio + codec per il formato di interesse
sono andato a vedere nell'help di Visual C++ in riferimento al tuo suggerimento.
Ecco leggo: "
Metodo audio play
public:
void Play(
String^ location
)"
Quindi esempio :se io volessi lanciare il file giusto.waw contenuto alla locazione C:\audio\prova, cosa scriveresti?
Per quanto riguarda "PlaySound" non capisco perchè mi dice che è sotto il namespace di Visual basic, ma poi c'è la sintassi in tutti i linuaggi, compreso il C++ : (nota. anche per la sintassi sopra è specificato il namespace di VisualBasic)
Spazio dei nomi: Microsoft.VisualBasic.Devices
Assembly: Microsoft.VisualBasic (in Microsoft.VisualBasic.dll)
Visual C++
public:
void Play(
String^ location,
AudioPlayMode playMode
)
Quello è per C++ managed.
Se stai utilizza C++ managed, va bene, ma se usi C++ standard devi usare questa: http://msdn.microsoft.com/en-us/library/dd743680(VS.85).aspx
Albitexm
26-01-2010, 13:08
Quello è per C++ managed.
Se stai utilizza C++ managed, va bene, ma se usi C++ standard devi usare questa: http://msdn.microsoft.com/en-us/library/dd743680(VS.85).aspx
Bene grazie per il link. Stò scrivendo un semplice corso di scrittura d'Italiano per una mia amica straniera. (forse era meglio se lo compravo già fatto :D )
Ma C++ è managed o unmanaged ?
Albitexm
27-01-2010, 01:53
Ma C++ è managed o unmanaged ?
siceramente non conosco la differenza.
Io uso Visual C++ Express Edition. Credo però di avere capito che playaudio
si può usare solo scrivendo in window form, non in modalità console.
PlaySound si può usare in qualsiasi modalità.
Quello che hai messo te si può usare solo in modalità managed.
Per farmi capire incollami il file CPP autogenarato dal wizard che usi per la creazione del progetto
Albitexm
27-01-2010, 21:48
PlaySound si può usare in qualsiasi modalità.
Quello che hai messo te si può usare solo in modalità managed.
Per farmi capire incollami il file CPP autogenarato dal wizard che usi per la creazione del progetto
allego alla presente
vBulletin® v3.6.4, Copyright ©2000-2025, Jelsoft Enterprises Ltd.