'SoundTransform'에 해당되는 글 2건

  1. 2008.08.16 사운드 볼륨제어하기
  2. 2008.08.16 사운드 프로그래밍
사운드의 볼륨은 사운드채널의 soundTransform 속성을 통해 값을 설정할 수 있다. soundTransform속성은 음성관련 객체(비디오 , 사운드 등)들은 전부 가지고 있다.
보통 값을 선언하기 위해서는 직접 속성에 대입할 수가 없고 반영할 수 있는 값은 0~1이며 1이상 입력되면 소리가 조금 커지기는 하나 깨져서 들리게 되고 0~-1로 향하는 음수역시 -1을 향할 수록 소리가 커진다. -1을 넘게되면 소리가 커지긴 하나 마찬가지로 깨져서 재생이 된다.

var mySoundTransform =  재생중인 사운드 채널.soundTransform
mySoundTransform.volume = 넣고자 하는 값(0~1);
재생중인 사운드 채널.soundTransform = mySoundTransform;

위와 같이 반영하기 위해서는 자신의 soundTransform을 복제하여 값을 반영하거나 새로운 soundTransform객체를 만들어 값을 반영할 수 있다.

참고로 위처럼 자신의 값을 가지고 사용한 이후 새로운 soundTransform객체를 대입하면 사운드 변형은 초기화 된다.
Posted by 버터백통
AS3로 사운드 관련 작업을 하려면 우선 사운드를 가져올 수 있는 Sound클래스가 필요하다.
Sound객체는 mp3파일의 스트림을 열거나 닫을 수 있으며 사운드의 크기나 ID3관련 정보들을 취득할 수 있습니다. 그리고 SoundChannel 클래스는 사운드의 스트림의 재생관련(재생헤드)이나 사운드 정지(스트림 중단은 Sound객체) 오른쪽과 왼쪽 볼룸조절을 할 수 있으며, 좌우볼륨을 조절 할 수 있는 SoundTransform 객체를 포함하고 있습니다.
SoundTransform 는 볼륨이나 Pan에 대한 속성을 가지고 있습니다. 또한 플레이어에서 다루는 모든 사운드 채널은 SoundMixer를 걸치게 되어있다. SoundMixer는 모든 사운드 정지나 스펙트럼 등의 작업을 할 수 있다.

[ 사운드 관련 객체들의 개념 정리 ]
Sound : 외부 사운드 파일을 스트림 재생 , 스트림 중단(닫기), 파일관련 정보나 스트림관련 이벤트 발생

SoundChannel : 관련된 Sound객체의 사운드 재생,정지,왼쪽/오른쪽 볼륨담당 , soundTransform속성을 사용

SoundTransform : 사운드의 불륨 , 왼쪽/오른쪽 패닝 등 사운드 변형 담당, 값은 SoundChannel 의 속성
                              soundTransform에 대입

SoundMixer : 플래시 플레이어 무비에서 스피커로 전달되는 통로, 모든 사운드 채널관리(모두 정지) , 스펙트럼

이처럼 사운드 변형을 하기 위해 많은 클래스들이 필요하다...간단히 스트림파일 접근객체, 재생/정지클래스 , 볼륨 및 패닝 클래스 등으로 역할이 정확이 분리되어 있으면 좋겠는데 그러자면 몇가지 간단한 작업을 하고 싶은데 어마어마한 기능의 클래스를 생성하기 때문에 저렇게 기능이 조금씩 섞여있는 것인지는 모르겠지만 사용하기 편한 클래스들은 아닌것 같다.
Posted by 버터백통