Я работаю с доступом к музыке библиотеки Itunes. Я сохранил выбранную песню в каталоге Document. Размер песни составляет 13 МБ, и мне нужно уменьшить размер песни, чтобы я мог легко отправить ее на сервер. Как мне это сделать? Вот мой общий код:Как уменьшить размер музыки itunes в swift?
@IBAction func AddSongs(sender: UIButton)
{
displayMediaPickerAndPlayItem()
}func displayMediaPickerAndPlayItem()
{mediaPicker = MPMediaPickerController(mediaTypes: .AnyAudio)
if let picker = mediaPicker{
print("Successfully instantiated a media picker")
picker.delegate = self
view.addSubview(picker.view)
presentViewController(picker, animated: true, completion: nil)
} else {
print("Could not instantiate a media picker")
}
}
MPMediaPickerController, didPickMediaItems mediaItemCollection Функция
let item: MPMediaItem = mediaItemCollection.items[0]
print(mediaItemCollection)
print("mediaItemCollection = \(mediaItemCollection)")
let url = item.valueForProperty(MPMediaItemPropertyAssetURL) as! NSURL
FinalAudioName = item.valueForProperty(MPMediaItemPropertyTitle) as! NSString as String
// let songAsset = AVURLAsset.init(URL: url, options: nil)
// print("songAsset = \(songAsset)")
export(url, completionHandler: { _, _ in })
func export(assetURL: NSURL, completionHandler: (NSURL?, ErrorType?) ->()) {
let asset = AVURLAsset(URL: assetURL)
guard let exporter = AVAssetExportSession(asset: asset, presetName: AVAssetExportPresetAppleM4A) else {
completionHandler(nil, ExportError.unableToCreateExporter)
return
}
let fileURL = NSURL(fileURLWithPath: NSTemporaryDirectory())
.URLByAppendingPathComponent(NSUUID().UUIDString)!
.URLByAppendingPathExtension("m4a")
exporter.outputURL = fileURL
exporter.outputFileType = "com.apple.m4a-audio"
exporter.exportAsynchronouslyWithCompletionHandler {
if exporter.status == .Completed {
completionHandler(fileURL, nil)
} else {
completionHandler(nil, exporter.error)
}
}}
проверить мой обновленный question..I прилагается код –