35
35

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

ObjectALを使う

Last updated at Posted at 2012-08-06

ObjectALについて

iOSには音を鳴らすAPIが色々あるけど、

  • AVFondation : 再生開始時に遅延が発生、大量再生すると重い。
  • AudioToolbox : 30秒以下の音しか鳴らせない。
  • OpenAL : デコード機能がなくてだるい。
    など、一長一短あって使いづらい。

ObjectALは、そのへんの違いをうまく覆い隠してくれるサウンドライブラリである。

使い方

  1. 公式サイト からソースコードをダウンロード
  2. 中身のObjectAL/ObjectALディレクトリを自分のプロジェクトに放り込む。このとき、「Copy items into destination group's folder」、「Create groups for any added folders」にチェックをいれる(Xcode 4.3)
  3. プロジェクトで使用するフレームワークにAVFoundation、OpenAL、AudioToolboxを追加。
  4. 適当なViewControllerを作って、以下のようなコードを記述する。
#import "ViewController.h"
#import "ObjectAL.h"

@implementation ViewController
- (void)viewDidLoad
{
	[[OALSimpleAudio sharedInstance] playEffect:@"sound.mp3"];
}
@end

おとが!なりました!

その他の機能

OALSimpleAudioは使うのが一番簡単なクラス。playEffectでSEが、playBgでBGMが鳴らせる。preloadEffect/preloadBgで音声をあらかじめ読み込んでおくこともできる。

より細かく挙動を制御したければ、OpenALをラップしてデコード機能を付けたOpenALManagerクラスと、ストリーミング再生に特化したOALAudioTrackクラスにアクセスすればいい。

35
35
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
35
35

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?