Visualizzazione dei risultati da 1 a 4 su 4
  1. #1
    Utente di HTML.it L'avatar di paul78
    Registrato dal
    Apr 2010
    Messaggi
    515

    actionscript 3.0....giocare con il volume....

    ciao a tutti ho creato un mp3 player con 2 player....

    ho creato un volume...ora con in sliderBar vorrei che se lo muovo verso sinistra si abbassa il player destro mentre se lo muovo verso destra si abbassa il volume del player sinistro....

    come posso fare???

  2. #2
    Moderatore di CSS L'avatar di KillerWorm
    Registrato dal
    Apr 2004
    Messaggi
    5,771
    Ciao,
    per operare sul volume e sul panning degli oggetti Sound devi utilizzare la classe SoundTransform che dovrai attribuire come proprietà di un oggetto SoundChannel.
    Puoi trovare la guida online sull'utilizzo di SoundTransform: http://help.adobe.com/it_IT/ActionSc...0204-7d1f.html

    Ti posto uno script di esempio. Supponi di avere due suoni concatenati in libreria e di utilizzare il componente fl.controls.Slider.
    Codice PHP:
    import flash.media.Sound;
    import flash.media.SoundChannel;
    import flash.media.SoundTransform;
    import fl.controls.Slider;
    import fl.events.SliderEvent;

    // Creo i due oggetti che contengono i suoni.
    // In questo caso ho due suoni concatenati in libreria
    var oggettoSuono1:Sound = new Traccia1();
    var 
    oggettoSuono2:Sound = new Traccia2();

    // Creo i due oggetti SoundTransform con cui posso gestire volume e panning
    var trasformSuono1:SoundTransform = new SoundTransform(10); 
    var 
    trasformSuono2:SoundTransform = new SoundTransform(10); 

    // Creo i due canali a cui applico gli oggetti suono e relativi SoundTransform
    var canaleSuono1:SoundChannel oggettoSuono1.play(0,999,trasformSuono1);
    var 
    canaleSuono2:SoundChannel oggettoSuono2.play(0,999,trasformSuono2);

    // Istanzio e imposto lo slider
    var slider:Slider = new Slider();
    slider.50//posiziono lo slider
    slider.100;
    slider.setSize(400,10); // dimensiono lo slider
    slider.minimum=-1// imposto il range di valori su cui operare (da -1 a +1, il valore restituito sarà poi ripartito per i due suoni)
    slider.maximum=1;
    slider.snapInterval=.1// imposto incremento del cursore e spaziatura delle tacche
    slider.tickInterval=1;
    slider.value 0// al valore 0 il cursore è centrato
    slider.addEventListener(SliderEvent.THUMB_DRAGregolaVolumi// applico il listener che sarà richiamato durante il trascinamento del cursore
    addChild(slider);

    function 
    regolaVolumi(e:SliderEvent):void{
        var 
    valore e.currentTarget.value// Prelevo il valore dello slider
        // Aggiorno la proprietà "volume" dei due SoundTransform
        // tenendo presente che il volume sarà massimo per entrambi i suoni quando il cursore sta al centro.
        // Il valore ottenuto potrebbe arrivare fino a 2 anche se flashplayer lo limiterà comunque ad 1. Per scrupolo posso usare Math.min cosi da avere  un valore massimo di 1
        
    trasformSuono1.volume Math.min(1,1-valore);
        
    trasformSuono2.volume Math.min(1,1+valore);
        
    canaleSuono1.soundTransform trasformSuono1// Applico i SoundTransform aggiornati
        
    canaleSuono2.soundTransform trasformSuono2;

    Installa Forum HTML.it Toolset per una fruizione ottimale del Forum

  3. #3
    Utente di HTML.it L'avatar di paul78
    Registrato dal
    Apr 2010
    Messaggi
    515
    ciao killerworm....grazie della risposta ma forse non mi sono spiegato bene...con questo codice vado ad abbassare ed ad aumentare contemporaneamente entrambe le canzoni!!!!!

    il mio raggiungimento è quello che con uno sliderBar, nel momento in cui diminuisco il volume di una canzone l'altra aumenta....

  4. #4
    Utente di HTML.it L'avatar di paul78
    Registrato dal
    Apr 2010
    Messaggi
    515
    ciao!!!!!!
    Scusa!!!! ho letto male il codice!!!!!!
    quì:
    trasformSuono1.volume = Math.min(1,1-valore);
    trasformSuono2.volume = Math.min(1,1+valore);
    non avevo letto il valore positivo e negativo!!! avevo visto entrambi negativi!!!!
    è proprio quello che cercavo!!!!!!!!

    grazie di cuore!!!!


    grazie mille di cuore!!!!!!

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.