*

AVAudioPlayerの初回再生遅延

公開日: : 最終更新日:2016/08/15 Tips

ちょっとした効果音の再生にAVAudioPlayerを使っているのですが、どうも初回の効果音ロードの処理に時間がかかる(初回だけで、2回目以降は問題ない)という問題に直面していて悩んでいたのですが、とりあえず解決したのでメモ的に残そうと思います。

具体的にはショボい話で、AVAudioPlayerのロードを1回空実行してしまって、それでAVAudioPlayerの再生遅延を見かけ上なくそう、という話です。
自分はSingletoneクラスにAVAudioPlayerの再生を任せているので、初期化時にAVAudioPlayer* playerに対してこんな処理を挟んでいます。

        player = [[AVAudioPlayer alloc] initWithData:(何らかのサウンドデータ)
                                               error:nil];
        player.delegate = self;
        
        [player prepareToPlay];
        
        player = nil;

効果覿面だったので、当面はこの方法でやり過ごそうかと思っています。

関連記事

UIActionSheetが消えるときにキーボード表示/非表示通知が来る

 UITextViewやUITextField編集中にアクションシートを表示すると、アクションシート

記事を読む

Xcode8で余計なログを抑制する

Xcode8に更新してから、妙にログが増えたので、NSLogで明示したのと実行時エラー以外のログを吐

記事を読む

Bitbucketの画面の日本語化/コミット時に同時プッシュを行う

前回の記事の続きで、Bitbucketの画面の日本語化と、Xcodeでコミットするときに同時にpus

記事を読む

Size ClassとUIViewController.view

タイトルの件でちょっとハマったことがある上に、特に日本語情報もStackOverflowからも情報が

記事を読む

WSCoachMarksViewをSwiftで使う場合の手順

Objective-Cで記述されてるライブラリ全般に当てはまることもあるんですが、個別でやることも含

記事を読む

iOS9でURLスキームを登録する

私事ですが、iOS8から対応はしたいということで検証用に使っている自分のiPhoneもiOS8でがん

記事を読む

AdMob組み込み覚書

書籍ではコレがかなり参考になるのでご紹介。 表題の通りで、組み込みで要注意っぽい部分だけを

記事を読む

NSStringのフォーマット書式

Appleのページになく、IEEEのprintfフォーマットのページにあるので、C言語と親しくしてな

記事を読む

Xcode10からのimage literal / color literalの指定方法

アセットにあるUIImageの直接指定が可能なImage literalですが、気がついたらアセット

記事を読む

コードでiPhone6 Plusを識別する簡単な方法

表題の通り、コードでiPhone6 Plusを識別する簡単な方法です。 iPhone6 Plu

記事を読む

Xcode10からのimage literal / color literalの指定方法

アセットにあるUIImageの直接指定が可能なImage litera

Xcode11でのバージョン番号の取得方法

Xcode11になってバージョン番号をスクリプトから得て自動で更新する

GoogleスプレッドシートからCSVにエクスポートしたデータを得る方法

情報がない中さんざ苦労しましたが、Googleスプレッドシート(の最初

画面回転をしたあとに、UITextViewの先頭を表示する

回転によりサイズが可変するUITextViewで、縦向き(ポートレイト

NXDrawKitを導入してみる

ACEDrawingViewがObj-Cで書かれていて、いまいちメンテ

→もっと見る

    PAGE TOP ↑