Packageflash.media
Classepublic final class SoundTransform
HéritageSoundTransform Inheritance Object

Version du langage: ActionScript 3.0
Versions du moteur d'exécution: AIR 1.0 Flash Player 9

La classe SoundTransform contient des propriétés relatives au volume et à la balance horizontale.

Consulter les exemples

Voir aussi

flash.display.SimpleButton.soundTransform
flash.display.Sprite.soundTransform
flash.media.Microphone.soundTransform
flash.media.SoundChannel.soundTransform
flash.media.SoundMixer.soundTransform
flash.net.NetStream.soundTransform


Propriétés publiques
 PropriétéDéfini par
 Inheritedconstructor : Object
Référence à l'objet de classe ou à la fonction constructeur d'une occurrence donnée d'un objet.
Object
  leftToLeft : Number
Valeur, comprise entre 0 (aucun) et 1 (maximum), indiquant la quantité d'entrée gauche à émettre dans le haut-parleur gauche.
SoundTransform
  leftToRight : Number
Valeur, comprise entre 0 (aucun) et 1 (maximum), indiquant la quantité d'entrée gauche à émettre dans le haut-parleur droit.
SoundTransform
  pan : Number
Balance horizontale du son, comprise entre -1 (balance à gauche) et 1 (balance à droite).
SoundTransform
 Inheritedprototype : Object
[statique] Référence à l'objet prototype d'un objet de classe ou fonction.
Object
  rightToLeft : Number
Valeur, comprise entre 0 (aucun) et 1 (maximum), indiquant la quantité d'entrée droite à émettre dans le haut-parleur gauche.
SoundTransform
  rightToRight : Number
Valeur, comprise entre 0 (aucun) et 1 (maximum), indiquant la quantité d'entrée droite à émettre dans le haut-parleur droit.
SoundTransform
  volume : Number
Volume, compris entre 0 (muet) et 1 (volume maximal).
SoundTransform
Méthodes publiques
 MéthodeDéfini par
  
SoundTransform(vol:Number = 1, panning:Number = 0)
Crée un objet SoundTransform.
SoundTransform
 Inherited
Indique si la propriété spécifiée d'un objet est définie.
Object
 Inherited
Indique si une occurrence de la classe Object figure dans la chaîne de prototype de l'objet spécifié en tant que paramètre.
Object
 Inherited
Indique si la propriété spécifiée existe et est énumérable.
Object
 Inherited
Définit la disponibilité d'une propriété dynamique pour les opérations en boucle.
Object
 Inherited
Renvoie la représentation sous forme de chaîne de l'objet spécifié.
Object
 Inherited
Renvoie la valeur primitive de l'objet spécifié.
Object
Détails de la propriété
leftToLeftpropriété
leftToLeft:Number  [lecture-écriture]

Version du langage: ActionScript 3.0
Versions du moteur d'exécution: AIR 1.0 Flash Player 9

Valeur, comprise entre 0 (aucun) et 1 (maximum), indiquant la quantité d'entrée gauche à émettre dans le haut-parleur gauche.



Implémentation
    public function get leftToLeft():Number
    public function set leftToLeft(value:Number):void
leftToRightpropriété 
leftToRight:Number  [lecture-écriture]

Version du langage: ActionScript 3.0
Versions du moteur d'exécution: AIR 1.0 Flash Player 9

Valeur, comprise entre 0 (aucun) et 1 (maximum), indiquant la quantité d'entrée gauche à émettre dans le haut-parleur droit.



Implémentation
    public function get leftToRight():Number
    public function set leftToRight(value:Number):void
panpropriété 
pan:Number  [lecture-écriture]

Version du langage: ActionScript 3.0
Versions du moteur d'exécution: AIR 1.0 Flash Player 9

Balance horizontale du son, comprise entre -1 (balance à gauche) et 1 (balance à droite). La valeur 0 correspond à une balance équilibrée (centre).



Implémentation
    public function get pan():Number
    public function set pan(value:Number):void
rightToLeftpropriété 
rightToLeft:Number  [lecture-écriture]

Version du langage: ActionScript 3.0
Versions du moteur d'exécution: AIR 1.0 Flash Player 9

Valeur, comprise entre 0 (aucun) et 1 (maximum), indiquant la quantité d'entrée droite à émettre dans le haut-parleur gauche.



Implémentation
    public function get rightToLeft():Number
    public function set rightToLeft(value:Number):void
rightToRightpropriété 
rightToRight:Number  [lecture-écriture]

Version du langage: ActionScript 3.0
Versions du moteur d'exécution: AIR 1.0 Flash Player 9

Valeur, comprise entre 0 (aucun) et 1 (maximum), indiquant la quantité d'entrée droite à émettre dans le haut-parleur droit.



Implémentation
    public function get rightToRight():Number
    public function set rightToRight(value:Number):void
volumepropriété 
volume:Number  [lecture-écriture]

Version du langage: ActionScript 3.0
Versions du moteur d'exécution: AIR 1.0 Flash Player 9

Volume, compris entre 0 (muet) et 1 (volume maximal).



Implémentation
    public function get volume():Number
    public function set volume(value:Number):void
Détails du constructeur
SoundTransform()Constructeur
public function SoundTransform(vol:Number = 1, panning:Number = 0)

Version du langage: ActionScript 3.0
Versions du moteur d'exécution: AIR 1.0 Flash Player 9

Crée un objet SoundTransform.

Paramètres
vol:Number (default = 1) — Volume, compris entre 0 (muet) et 1 (volume maximal).
 
panning:Number (default = 0) — Balance horizontale du son, comprise entre -1 (balance à gauche) et 1 (balance à droite). La valeur 0 correspond à une balance équilibrée (centre).

Exemple

Dans l'exemple suivant, le fichier audio n'est lu qu'à partir du canal droit, et le volume est défini sur 50 pour cent.

Dans le constructeur, le son est chargé et affecté à un canal audio (channel ). Un objet SoundTranform (transform) est également créé. Son premier argument définit le volume sur 50 pour cent (la plage va de 0.0 à 1.0). Son second argument définit la balance. Dans cet exemple, la balance est définie sur 1.0, ce qui signifie que le son provient du haut-parleur droit uniquement. Pour que ces réglages prennent effet, l'objet SoundTranform transform est attribué à la propriété souundTransform du canal audio.

Remarque : la gestion d'erreur écrite pour cet exemple est limitée.

package {
    import flash.display.Sprite;
    import flash.net.URLRequest;
    import flash.media.Sound;
    import flash.media.SoundChannel;
    import flash.media.SoundTransform;
    import flash.events.IOErrorEvent;

    public class SoundTransform_constructorExample extends Sprite
    {
        public function SoundTransform_constructorExample() {
            var mySound:Sound = new Sound();
            var url:URLRequest = new URLRequest("mySound.mp3");
            var channel:SoundChannel;
            var transform:SoundTransform = new SoundTransform(0.5, 1.0);

            mySound.load(url);    
            channel = mySound.play();
            channel.soundTransform = transform;

            mySound.addEventListener(IOErrorEvent.IO_ERROR, errorHandler);
        }

        private function errorHandler(errorEvent:IOErrorEvent):void {
            trace("The sound could not be loaded: " + errorEvent.text);
        }
    }
}
Exemples Utilisation des exemples
SoundTransformExample.as

L'exemple suivant charge et lit un fichier MP3. Pendant la lecture du fichier MP3, déplacez la souris, le volume et la balance se modifient à mesure que vous bougez la souris sur la scène. Pour exécuter l’exemple, placez un fichier intitulé MySound.mp3 dans le même répertoire que votre fichier SWF.
package {
    import flash.display.Sprite;
    import flash.display.StageAlign;
    import flash.display.StageScaleMode;
    import flash.events.*;
    import flash.media.Sound;
    import flash.media.SoundChannel;
    import flash.media.SoundTransform;
    import flash.net.URLRequest;
    import flash.utils.Timer;

    public class SoundTransformExample extends Sprite {
        private var url:String = "MySound.mp3";
        private var soundFactory:Sound;
        private var channel:SoundChannel;
        private var positionTimer:Timer;

        public function SoundTransformExample() {
            stage.align = StageAlign.TOP_LEFT;
            stage.scaleMode = StageScaleMode.NO_SCALE;

            var request:URLRequest = new URLRequest(url);
            soundFactory = new Sound();
            soundFactory.addEventListener(IOErrorEvent.IO_ERROR, ioErrorHandler);
            soundFactory.load(request);
            channel = soundFactory.play();
            stage.addEventListener(MouseEvent.MOUSE_MOVE, mouseMoveHandler);
        }

        private function ioErrorHandler(event:Event):void {
            trace("ioErrorHandler: " + event);
        }

        private function setPan(pan:Number):void {
            trace("setPan: " + pan.toFixed(2));
            var transform:SoundTransform = channel.soundTransform;
            transform.pan = pan;
            channel.soundTransform = transform;
        }

        private function setVolume(volume:Number):void {
            trace("setVolume: " + volume.toFixed(2));
            var transform:SoundTransform = channel.soundTransform;
            transform.volume = volume;
            channel.soundTransform = transform;
        }

        private function mouseMoveHandler(event:MouseEvent):void {
            var halfStage:uint = Math.floor(stage.stageWidth / 2);
            var xPos:uint = event.stageX;
            var yPos:uint = event.stageY;
            var value:Number;
            var pan:Number;

            if (xPos > halfStage) {
                value = xPos / halfStage;
                pan = value - 1;
            } else if (xPos < halfStage) {
                value = (xPos - halfStage) / halfStage;
                pan = value;
            } else {
                pan = 0;
            }

            var volume:Number = 1 - (yPos / stage.stageHeight);

            setVolume(volume);
            setPan(pan);
            
        }
    }
}