パッケージflash.media
クラスpublic final class SoundTransform
継承SoundTransform Inheritance Object

言語バージョン : ActionScript 3.0
Player のバージョン : Flash Player 9

SoundTransform クラスにはボリュームとパンのプロパティが含まれます。次のオブジェクトには soundTransform プロパティが含まれ、その値は SoundTransform オブジェクトです。該当するオブジェクトは Microphone、NetStream、SimpleButton、SoundChannel、SoundMixer、Sprite です。

例を表示



パブリック プロパティ
 プロパティ定義元
 Inheritedconstructor : Object
特定のオブジェクトインスタンスのクラスオブジェクトまたはコンストラクタ関数への参照です。
Object
  leftToLeft : Number
左スピーカーで再生する左入力データの量を指定する値 0 (なし) ~ 1 (すべて) です。
SoundTransform
  leftToRight : Number
右スピーカーで再生する左入力データの量を指定する値 0 (なし) ~ 1 (すべて) です。
SoundTransform
  pan : Number
サウンドの左から右へのパンです。範囲は -1 (完全に左へパン) ~ 1 (完全に右へパン) です。
SoundTransform
 Inheritedprototype : Object
[static] クラスまたは関数オブジェクトのプロトタイプオブジェクトへの参照です。
Object
  rightToLeft : Number
左スピーカーで再生する右入力データの量を指定する値 0 (なし) ~ 1 (すべて) です。
SoundTransform
  rightToRight : Number
右スピーカーで再生する右入力データの量を指定する値 0 (なし) ~ 1 (すべて) です。
SoundTransform
  volume : Number
ボリュームです。範囲は 0 (無音) ~ 1 (フルボリューム) です。
SoundTransform
パブリック メソッド
 メソッド定義元
  
SoundTransform(vol:Number = 1, panning:Number = 0)
SoundTransform オブジェクトを作成します。
SoundTransform
 Inherited
オブジェクトに指定されたプロパティが定義されているかどうかを示します。
Object
 Inherited
Object クラスのインスタンスが、パラメータとして指定されたオブジェクトのプロトタイプチェーン内にあるかどうかを示します。
Object
 Inherited
指定されたプロパティが存在し列挙できるかどうかを示します。
Object
 Inherited
ループ処理に対するダイナミックプロパティの可用性を設定します。
Object
 Inherited
指定されたオブジェクトのストリング表現を返します。
Object
 Inherited
指定されたオブジェクトのプリミティブな値を返します。
Object
プロパティの詳細
leftToLeftプロパティ
leftToLeft:Number  [read-write]

言語バージョン : ActionScript 3.0
Player のバージョン : Flash Player 9

左スピーカーで再生する左入力データの量を指定する値 0 (なし) ~ 1 (すべて) です。


実装
    public function get leftToLeft():Number
    public function set leftToLeft(value:Number):void
leftToRightプロパティ 
leftToRight:Number  [read-write]

言語バージョン : ActionScript 3.0
Player のバージョン : Flash Player 9

右スピーカーで再生する左入力データの量を指定する値 0 (なし) ~ 1 (すべて) です。


実装
    public function get leftToRight():Number
    public function set leftToRight(value:Number):void
panプロパティ 
pan:Number  [read-write]

言語バージョン : ActionScript 3.0
Player のバージョン : Flash Player 9

サウンドの左から右へのパンです。範囲は -1 (完全に左へパン) ~ 1 (完全に右へパン) です。0 はパンなし (左右のバランスをとった中央) を表します。


実装
    public function get pan():Number
    public function set pan(value:Number):void
rightToLeftプロパティ 
rightToLeft:Number  [read-write]

言語バージョン : ActionScript 3.0
Player のバージョン : Flash Player 9

左スピーカーで再生する右入力データの量を指定する値 0 (なし) ~ 1 (すべて) です。


実装
    public function get rightToLeft():Number
    public function set rightToLeft(value:Number):void
rightToRightプロパティ 
rightToRight:Number  [read-write]

言語バージョン : ActionScript 3.0
Player のバージョン : Flash Player 9

右スピーカーで再生する右入力データの量を指定する値 0 (なし) ~ 1 (すべて) です。


実装
    public function get rightToRight():Number
    public function set rightToRight(value:Number):void
volumeプロパティ 
volume:Number  [read-write]

言語バージョン : ActionScript 3.0
Player のバージョン : Flash Player 9

ボリュームです。範囲は 0 (無音) ~ 1 (フルボリューム) です。


実装
    public function get volume():Number
    public function set volume(value:Number):void
コンストラクタの詳細
SoundTransform()コンストラクタ
public function SoundTransform(vol:Number = 1, panning:Number = 0)

言語バージョン : ActionScript 3.0
Player のバージョン : Flash Player 9

SoundTransform オブジェクトを作成します。

パラメータ
vol:Number (default = 1) — ボリュームです。範囲は 0 (無音) ~ 1 (フルボリューム) です。
 
panning:Number (default = 0) — サウンドの左から右へのパンです。範囲は -1 (完全に左へパン) ~ 1 (完全に右へパン) です。0 はパンなし (中央) を表します。



次の例では、サウンドは右チャンネルからのみ再生され、ボリュームは 50% に設定されます。

コンストラクタで、サウンドがロードされ、サウンドチャンネル (channel) に割り当てられます。SoundTranform オジェクト (transform) も作成されます。最初の引数では、ボリュームが 50% に設定されます (範囲は 0.0 ~ 1.0)。2 番目の引数では、パンが設定されます。ここでは、パンが 1.0 に設定されます。つまり、サウンドは右スピーカーからのみ出力されます。これらの設定を有効にするために、transform SoundTranform オブジェクトを、サウンドチャンネルの souundTransform プロパティに割り当てます。この例には、限定されたエラー処理が記述されています。

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);
        }
    }
}
例の使用法
SoundTransformExample.as

次の例では、MP3 ファイルをロードして再生します。MP3 ファイルの再生中にマウスを移動します。マウスをステージ上に移動すると、ボリュームとパンが変更されます。この例を実行するには、MySound.mp3 ファイルを 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;
            }
            if(pan > 1) pan = 0;

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

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




 

このページに新しいコメントが追加された場合に、電子メールでの通知を希望する。 | コメントレポート

現在のページ: http://livedocs.adobe.com/flash/9.0_jp/ActionScriptLangRefV3/flash/media/SoundTransform.html