यहाँ कोड आप में मदद मिलेगी संगीत पुस्तकालय
func displayMediaPicker() {
let mediaPicker = MPMediaPickerController.init(mediaTypes: .anyAudio)
mediaPicker.delegate = self
mediaPicker.allowsPickingMultipleItems = false
mediaPicker.loadView();
self.present(mediaPicker, animated: true, completion: nil)
}
func mediaPicker(_ mediaPicker: MPMediaPickerController, didPickMediaItems mediaItemCollection: MPMediaItemCollection) {
//
self.dismiss(animated:true)
if mediaItemCollection.count > 0 {
let mediaItem = mediaItemCollection.items[0]
let assetURL = mediaItem.value(forProperty: MPMediaItemPropertyAssetURL)
let mediaAsset = AVURLAsset(url: assetURL as! URL, options: nil)
let exporter = AVAssetExportSession.init(asset: mediaAsset, presetName: AVAssetExportPresetMediumQuality)
exporter?.outputFileType = AVFileType.mp4
let mediaPathToSave = //assign destination path here
let exportURL = URL(fileURLWithPath: mediaPathToSave)
exporter?.outputURL = exportURL
// if incase you need first 30 seconds
let startTime = CMTimeMake(0, 1)
let stopTime = CMTimeMake(30, 1)
let exportTimeRange = CMTimeRangeFromTimeToTime(startTime, stopTime)
exporter?.timeRange = exportTimeRange
exporter?.exportAsynchronously(completionHandler: {
//
let status = exporter?.status
if status == AVAssetExportSessionStatus.completed {
print("AVAssetExportSessionStatus successfull")
//do further code for exported file here
}
})
}
}
स्रोत
2017-11-16 10:41:33
इस उत्तर से एक mp4 निर्यात करने के लिए सही नहीं है। यदि आप लाइब्रेरी से एमपी 3 फ़ाइल निर्यात कर रहे हैं, तो यह पहले से ही एन्कोड किया गया है, आपको फिर से एमपी 3 को एन्कोड करने की आवश्यकता नहीं है। मैंने लाइब्रेरी से फ़ाइल सिस्टम में सफलतापूर्वक एमपी 3 निर्यात करने के लिए फ़ाइल प्रकार के रूप में QuickTimeMovie का उपयोग किया है। – Dermot
@ डर्मोट क्या आप कोड साझा कर सकते हैं। । मैं स्विफ्ट में ऐसा कर रहा हूं लेकिन भाग्य नहीं, कृपया –
नवंबर 1 999 में मदद करें: एलएमएल लाइसेंस से एलजीपी लाइसेंस से एलएएम स्विच स्विच करता है, जो इसे बंद-स्रोत अनुप्रयोगों के साथ उपयोग करने की अनुमति देता है। – Dalmazio