Visualizzazione dei risultati da 1 a 10 su 10
  1. #1

    [VB.NET] Più suoni contemporaneamente

    Ciao a tutti.

    Se inserisco nel codice due istruzioni di seguito che fanno eseguire un suono wav, viene eseguito solo quello dell'ultima istruzione fermando il primo.

    In generale, non è possibile permettere l'esecuzione di suoni sovrapposti?

  2. #2
    Utente di HTML.it L'avatar di cassano
    Registrato dal
    Aug 2004
    Messaggi
    3,002
    Potresti usare i thread.

  3. #3
    MCI????

  4. #4
    Cosa sono queste cose?

  5. #5
    Allora partiamo in ordine

    THREAD: é la possibilità di divedere le funzioni per spazio di memoria così da non accavallarsi la memoria ma dividersela onestamente

    MCI: è l'interfaccia audio(dll) con cui si ci può "attaccare" al sistema audio del tuo pc e sfrutatrlo per eseguire suoni.......


    scusa le parola contorte..ma torno ora dal ferragosto.....

  6. #6
    Secondo te qual'è la soluzione migliore? Poi, per sfruttare le MCI, è sufficiente un comando già presente in VB o altro?

    Riesci a farmi un esempio?

  7. #7
    Secondo me usare mci cmq vedi se questo ti può essere utile http://www.geocities.com/smigman.geo/mci/mci.html

  8. #8
    Io personalmente uso la Quartz Dll, che permette di riprodurre anche file mp3.

    Public Type sound
    Audio As IBasicAudio
    MMCtrl As IMediaControl
    End Type

    'carica il tipo sound definito dall'utente... IBasicAudio permette di eseguire il suono, e IMediaControl permette di modificarne il volume e il bilanciamento delle casse...

    suoni(10) as audio

    'sono le tue istanze che possono produrre i suoni in contemporaneamente

    Public Sub SoundMusic(path As String, index As Integer, volume As Integer)
    Set suoni(index).MMCtrl = New QuartzTypeLib.FilgraphManager
    suoni(index).MMCtrl.RenderFile path
    Set suoni(index).Audio = MMCtrl1(index)
    suoni(index).Audio.Balance = 0 ' da -10000 a + 10000
    suoni(index).Audio.volume = volume ' da -10000 a 0 in attenuanza di decibel non è lineare
    suoni(index).Audio.Run
    End Sub

    'Spero di non aver fatto errori xkè ho scritto il codice (modificandolo da uno già fatto) al momento... non l'ho conntrollato.

    SoundMusic, dato il path (percorso del file), index ossia numero dell "istanza" da eseguire, e volume come volume del suono (si portebbe anchee inserire balance per belanciarlo, volendo).

    In tal modo se noi facciamo una cosa di questo tipo, eseguiamo due canzoni contemporaneamente:

    SoundMusic("c:\ciccio.mp3",0,0)
    SoundMusic("c:\pinco.mp3",1,-100)

    l'importante non è caricarle tutte e due sullo stesso iindex.. Chiaro?
    ciao

  9. #9
    Ciao !!! E ben tornati dalle ferie...visto che si parla di suoni...sapete indicarmi come far riprodurre un unico suono (in vb net) alla pressione di qualsiasi pulsante della tastiera? In pratica, dovrei simulare il suono di una vecchia macchina da scrivere e l'utente, cliccando su ogni tasto dovrebbe generare il suono
    Jean Brush

  10. #10
    Moderatore di Programmazione L'avatar di alka
    Registrato dal
    Oct 2001
    residenza
    Reggio Emilia
    Messaggi
    24,472

    Moderazione

    Originariamente inviato da menomale
    Ciao !!! E ben tornati dalle ferie...visto che si parla di suoni...sapete indicarmi come far riprodurre un unico suono (in vb net) alla pressione di qualsiasi pulsante della tastiera? In pratica, dovrei simulare il suono di una vecchia macchina da scrivere e l'utente, cliccando su ogni tasto dovrebbe generare il suono
    Non risollevare altre discussioni per proporre una nuova domanda: apri una discussione separata per trattare il tuo problema.
    MARCO BREVEGLIERI
    Software and Web Developer, Teacher and Consultant

    Home | Blog | Delphi Podcast | Twitch | Altro...

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 © 2025 vBulletin Solutions, Inc. All rights reserved.