質問

簡単な質問があります。mp3ファイルをNSDataオブジェクトに読み込んでから、ゲームでAVAudioPlayerを使用して再生します。毎秒かそこらで、フレームレートが低下し、画面にst音が表示されます。これは大きな減速ではありませんが、ゲームプレイに明らかに顕著な混乱をもたらします。 AVAudioPlayerで音楽トラックを再生しないと、スローダウンがまったく表示されません。

これを防ぐにはどうすればよいですか?

ありがとう。

フロリアン

役に立ちましたか?

解決

今後の参考のために、ここに解決策があります:

オーディオセッションカテゴリをkAudioSessionCategory_AmbientSoundに設定すると(iPodの音楽を同時に再生できるように)、MP3ハードウェアアクセラレーションが無効になります。オーディオカテゴリをkAudioSessionCategory_SoloAmbientSoundに設定すると、これは修正されますが、iPodの再生は許可されません。 iPodの同時再生を可能にするために、バックグラウンドミュージックが有効か無効かに応じて、オーディオセッションカテゴリを設定します。

他のヒント

mp3は、エンコード/圧縮されたオーディオ形式です。サンプリングレートを下げる(128 kb / sではなく64 kb / sを試す)か、リニアpcmなどのエンコードされていない形式に切り替えることができます。短所は、前者の場合は音質が低く、後者の場合はファイルサイズが大きくなることです。ただし、これはアプリの全体的なパフォーマンスの向上に役立ちます。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top