Вы можете использовать метод FileManager contentsOfDirectory(of: URL)
, чтобы получить все файлы в вашем каталоге документов и отобразить те, которые содержат mp3 pathExtension:
let documents = FileManager.default.urls(for: .documentDirectory, in: .userDomainMask).first!
do {
let playesItems = try FileManager.default.contentsOfDirectory(at: documents, includingPropertiesForKeys: nil).compactMap {
$0.pathExtension == "mp3" ? $0.asset.playerItem : nil
}
for item in playesItems {
print(item.asset.duration)
}
} catch { print(error) }
Не забудьте добавить этих помощников в свой проект:
import UIKit
import AVKit
extension URL {
var asset: AVAsset {
return AVAsset(url: self)
}
}
extension AVAsset {
var playerItem: AVPlayerItem {
return AVPlayerItem(asset: self)
}
}