Skip to content

Instantly share code, notes, and snippets.

@Iomegan
Last active January 20, 2022 12:37
Show Gist options
  • Save Iomegan/edd82f1d903cb05f648096ab853340e0 to your computer and use it in GitHub Desktop.
Save Iomegan/edd82f1d903cb05f648096ab853340e0 to your computer and use it in GitHub Desktop.
Array of all installed system sounds
extension NSSound {
static var systemSounds: [String] {
get {
var returnArr = [String]()
let librarySources = (NSSearchPathForDirectoriesInDomains(.libraryDirectory, .allDomainsMask, true) as NSArray).objectEnumerator()
var sourcePath = librarySources.nextObject() as? String
while (sourcePath != nil) {
let soundSource = FileManager.default.enumerator(atPath: URL(string: sourcePath!)!.appendingPathComponent("Sounds").absoluteString)
var soundFile = soundSource?.nextObject() as? String
while (soundFile != nil) {
let soundPath = URL(string: soundFile!)!.deletingPathExtension().absoluteString
if NSSound(named: soundPath) != nil {
returnArr.append(soundPath)
}
soundFile = soundSource?.nextObject() as? String
}
sourcePath = librarySources.nextObject() as? String
}
return returnArr
}
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment