Язык версии : | ActionScript 3.0 |
Версии среды выполнения: | AIR 1.0, Flash Player 9 |
Класс SoundTransform содержит свойства громкости и панорамирования. Следующие объекты содержат свойство
soundTransform
, значением которого является объект SoundTransform: Microphone, NetStream, SimpleButton, SoundChannel, SoundMixer и Sprite.
Посмотреть примеры
leftToLeft:Number
[чтение и запись]
Язык версии : | ActionScript 3.0 |
Версии среды выполнения: | AIR 1.0, Flash Player 9 |
Значение от 0 (нет) до 1 (все), указывающее, какая доля левого входа воспроизводится в левом динамике.
Реализация public function get leftToLeft():Number
public function set leftToLeft(value:Number):void
leftToRight:Number
[чтение и запись]
Язык версии : | ActionScript 3.0 |
Версии среды выполнения: | AIR 1.0, Flash Player 9 |
Значение, от 0 (нет) до 1 (все), указывающее, какая доля левого входа воспроизводится в правом динамике.
Реализация public function get leftToRight():Number
public function set leftToRight(value:Number):void
pan:Number
[чтение и запись]
Язык версии : | ActionScript 3.0 |
Версии среды выполнения: | AIR 1.0, Flash Player 9 |
Панорамирование звука слева направо, в диапазоне от -1 (полная панорама слева) до 1 (полная панорама справа). Значение 0 представляет отсутствие панорамы (сбалансированный центр между правым и левым каналами).
Реализация public function get pan():Number
public function set pan(value:Number):void
rightToLeft:Number
[чтение и запись]
Язык версии : | ActionScript 3.0 |
Версии среды выполнения: | AIR 1.0, Flash Player 9 |
Значение от 0 (нет) до 1 (все), указывающее, какая доля правого входа воспроизводится в левом динамике.
Реализация public function get rightToLeft():Number
public function set rightToLeft(value:Number):void
rightToRight:Number
[чтение и запись]
Язык версии : | ActionScript 3.0 |
Версии среды выполнения: | AIR 1.0, Flash Player 9 |
Значение от 0 (нет) до 1 (все), указывающее, какая доля правого входа воспроизводится в правом динамике.
Реализация public function get rightToRight():Number
public function set rightToRight(value:Number):void
volume:Number
[чтение и запись]
Язык версии : | ActionScript 3.0 |
Версии среды выполнения: | AIR 1.0, Flash Player 9 |
Громкость от 0 (тишина) до 1 (полная громкость).
Реализация public function get volume():Number
public function set volume(value:Number):void
public function SoundTransform(vol:Number = 1, panning:Number = 0)
Язык версии : | ActionScript 3.0 |
Версии среды выполнения: | AIR 1.0, Flash Player 9 |
Создает объект SoundTransform.
Параметры | vol:Number (default = 1 ) — Громкость от 0 (тишина) до 1 (полная громкость).
|
|
| panning:Number (default = 0 ) — Панорамирование звука слева направо, в диапазоне от -1 (полная панорама слева) до 1 (полная панорама справа). Значение 0 указывает на отсутствие панорамы (по центру).
|
Пример В следующем примере звук воспроизводится только правым каналом, громкость установлена на 50 процентов.
Конструктор загружает звук и назначает его звуковому каналу (channel
). Также создается объект SoundTranform (transform
). Его первый аргумент устанавливает громкость на 50 процентов (диапазон значений — от 0 до 1). Второй аргумент задает панораму. В этом примере панорама имеет значение 1, то есть звук выводится только из правого динамика. Чтобы эти параметры вступили в силу объект SoundTranform с именем transform
назначается свойству soundTransform
звукового канала.
Примечание. Для этого примера определена ограниченная обработка ошибок.
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);
}
}
}
В следующем примере загружается и воспроизводится МР3-файл. Во время воспроизведения МР3-файла двигайте мышь: громкость и панорама изменяются при перемещении мыши по рабочей области. Чтобы запустить данный пример, поместите файл 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;
}
var volume:Number = 1 - (yPos / stage.stageHeight);
setVolume(volume);
setPan(pan);
}
}
}
© 2004-2008 Adobe Systems Incorporated. All rights reserved.
Wed Sep 24 2008, 07:56 AM -07:00