音の鳴らし方。
大きく4種類あって、そのうち2つを書いておく
(I)
(1)ファイルを指定して準備
AudioServicesCreateSystemSoundID()
(2)鳴らす
- AudioServicesPlaySystemSound();
- AudioServicesPlayAlertSound()
↑バイブレーション付き
(3)後始末
AudioServicesDisposeSystemSoundID(soundFileObject);
・利点
わりと簡単に音を出せる。(でも後述の方法とさほど変わらない。。。)
・欠点
ボリュームの調整ができない。
iPhoneのボリューム設定と連動しない
(ミュートスイッチがONなら、鳴らない)
ちなみにバイブレーションのみは、
AudioServicesPlayAlertSound(kSystemSoundID_Vibrate);
(II)
(1)ファイルを指定してインスタンスを作成
AVAudioPlayer *soundPlayer = [[AVAudioPlayer alloc] initWithContentsOfURL:soundFileURL error:&error];
(2)準備
[soundPlayer prepareToPlay];
(3)鳴らす
[soundPlayer play];
(4)途中で止める
[soundPlayer stop];
stopの後にplayすると、止めたところから再生されるので、頭出しするには、
soundPlayer.currentTime = 0;
???
[soundPlayer stop];
すると、バッファがクリアされるので、
[soundPlayer prepareToPlay];
が必要?未確認。
(5)後始末
[soundPlayer release];
・利点
iPhoneのボリューム設定と連動する。
途中で音を止められる。
・欠点
(比較的)指定が面倒?
0 件のコメント:
コメントを投稿