Pagina 1 di 4 1 2 3 ... ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 33
  1. #1
    Utente di HTML.it
    Registrato dal
    May 2008
    Messaggi
    1,683

    c++ programma che emetta suoni

    ciao a tutti... devo creare un programmino che a seconda del tasto che schiaccio sulla tastiera, mi emetta un suono... però se schiaccio due tasti mi deve dare 2 suoni sovrapposti e se li schiaccio a ripetizioni, molto velocemente si deve sentire giusto... ovvero tanti suoni quante volte schiaccio il tasto... però non me li deve accodare e far sentire in ritardo se è troppo veloce... praticamente l'inizio del secondo suono di deve sovrapporre con la fine del primo suono..
    mi potreste indirizzare ad una funzione o un modo per creare questo programma??
    grazie

  2. #2
    Piattaforma?
    Amaro C++, il gusto pieno dell'undefined behavior.

  3. #3
    Utente di HTML.it
    Registrato dal
    May 2008
    Messaggi
    1,683
    piattaforma??
    mi sa che l'ho sempre chiamata in un altro modo
    comunque lavoro su windows con visual c++ in c/c++
    spero di averci preso

  4. #4
    Potresti creare una normale applicazione GUI win32, processare l'input tramite i messaggi ricevuti dalla tua finestra ed emettere i suoni tramite le API del MIDI.
    Amaro C++, il gusto pieno dell'undefined behavior.

  5. #5
    Utente di HTML.it
    Registrato dal
    May 2008
    Messaggi
    1,683
    com'è l'applicazione GUI win32??
    è un modo diverso di aprire il progetto?? io disolito apro progetto console win32...
    che differenze ci sono??

    ma poi con i suoni midi riesco a riprodurre il suono di una batteria per esempio?

  6. #6
    Utente di HTML.it
    Registrato dal
    May 2008
    Messaggi
    1,683
    perchè su google ho trovato solo la funzione beep, che emette un segnale acustico standard, io posso cambiare poche cose... io vorrei poter riprodurre un file wav o mp3

  7. #7
    Originariamente inviato da iacoposk8
    com'è l'applicazione GUI win32??
    è un modo diverso di aprire il progetto?? io disolito apro progetto console win32...
    È un tipo di progetto differente, comunque se non hai mai programmato win32 sarebbe meglio che prima ti leggessi un libro a proposito...
    che differenze ci sono??
    Un'applicazione console è un'applicazione che lavora in modalità testo, di solito in una finestra a sfondo nero e scritte bianche. Un'applicazione GUI è un'applicazione "normale". L'ho citata perché vuoi processare le pressioni di tasti in maniera immediata e non bufferizzata, ma se non hai mai scritto applicazioni GUI forse è meglio usare le funzioni non-standard di input non bufferizzato su console (per quanto siano piuttosto limitate).
    ma poi con i suoni midi riesco a riprodurre il suono di una batteria per esempio?
    Sì; se non sbaglio basta usare il canale 10.
    perchè su google ho trovato solo la funzione beep, che emette un segnale acustico standard, io posso cambiare poche cose... io vorrei poter riprodurre un file wav o mp3
    Questo è un altro paio di maniche... per i wav si può usare la PlaySound, per gli mp3 ti devi appoggiare a librerie di terze parti o ad applicazioni separate.
    Amaro C++, il gusto pieno dell'undefined behavior.

  8. #8
    Utente di HTML.it
    Registrato dal
    May 2008
    Messaggi
    1,683
    no, wav va più che bene... ora mi leggo come usare la PlaySound..
    ma poi il programma quando esegue il suono, non esegue altre istruzioni, finchè il suono non è finito o esegue il suono e subito esegue anche le altre righe di codice??

  9. #9
    Dipende dal flag SND_ASYNC. Leggiti la documentazione della funzione.
    Amaro C++, il gusto pieno dell'undefined behavior.

  10. #10
    Utente di HTML.it
    Registrato dal
    May 2008
    Messaggi
    1,683
    per fare una prova ho scritto:
    codice:
    #include <windows.h>
    int main()
    {
    	PlaySound(TEXT("D:\liljon.wav"), NULL, SND_ASYNC);
    }
    e mi dice sulla line 4:
    warning C4129: 'l': sequenza di caratteri di escape sconosciuta

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2024 vBulletin Solutions, Inc. All rights reserved.