2

バックグラウンドで MP3 を再生する AVAudioPlayer があります。AVAudioPlayer は、アプリ全体で共有されるシングルトン インスタンスです。一度に再生されている MP3 の現在のファイル名を検出することは可能ですか? デリゲートにメソッドが表示されません。 durationcurrentTimeがありますが、 filenameなどはありません。

この方法が失敗した場合に他に考慮すべきことは、MP3 タグを読み取り、そこからトラック名を取得することです。AVAudioPlayer で可能ですか?

前もって感謝します!

4

2 に答える 2

8

次のように、AVAudioPlayer で現在再生中のメディアのファイル名を取得できます。

NSString *mediaFileName = [[youAVAudioPlayer.url absoluteString] lastPathComponent];

条件は次のとおりです:オーディオ プレーヤーが URL で初期化されていない場合は nil を返します

于 2012-08-09T09:13:26.413 に答える
2

AVAudioPlayer を で初期化すると、urlそのプロパティを読み取ることができます。AVAudioPlayer は MP3 ファイルのタグを読み取らないため、役に立ちません。

MP3 からメタデータを取得する方法として、AVAssetが興味深いと思われるかもしれません。クイックチュートリアル

于 2012-08-09T08:58:58.130 に答える