将通过 AlamoFire 下载的 MPEG 音频文件转换为 mp3 文件

Posted

技术标签:

【中文标题】将通过 AlamoFire 下载的 MPEG 音频文件转换为 mp3 文件【英文标题】:Convert MPEG audio files downloaded through AlamoFire to mp3 files 【发布时间】:2020-06-26 02:18:24 【问题描述】:

我正在使用 Alamofire API 下载我的 ios 项目中的内容。它很好用,但我只想下载音频内容并将其作为 mp3 存储到我的文件目录中。 Mp3 文件下载正常,但存在一些我想要下载且没有路径扩展名的音频内容。没有扩展名的奥迪内容被下载,仍然可以从我的 AVAudioPlayer() 播放,但我还需要将这些文件转换为 mp3。

有没有办法将这些没有扩展名的音频文件转换为 mp3?我尝试简单地添加“.mp3”路径扩展名,但我认为没有那么简单。任何帮助将不胜感激。

// Download Destination 
let dest: DownloadRequest.DownloadFileDestination =  _, _ in
            let documentsURL:NSURL = FileManager.default.urls(for: .documentDirectory, in: .userDomainMask).first! as NSURL
            print("***documentURL: ",documentsURL)
            let fileURL = documentsURL.appendingPathComponent(url.lastPathComponent)
            print("***fileURL: ",fileURL ?? "")
            return (fileURL!,[.removePreviousFile, .createIntermediateDirectories])
        

// Download Operation        
Alamofire.download(url, to: dest)
            .downloadProgress(closure: (progress) in
                print("Progress: \(progress.fractionCompleted)")
                self.appDelegate.downloadProgressQueue[url] = Float(progress.fractionCompleted)
            ).validate(contentType: ["audio/mpeg"])
            .response(completionHandler: (complete) in
                if complete.error == nil, let filePath = complete.destinationURL?.path 
 
                   // Download Completed
 
                
                else 
                    
                   // Download Unsuccessful

                
        )

【问题讨论】:

【参考方案1】:

添加“.mp3”路径扩展名

不会改变文件格式。 您应该转换您的音频文件。但是您不能在 iOS 设备上创建 .mp3 文件。

【讨论】:

作为替代方案,您可以在 iOS 设备上创建 .mp4。

以上是关于将通过 AlamoFire 下载的 MPEG 音频文件转换为 mp3 文件的主要内容,如果未能解决你的问题,请参考以下文章

在 Swift 3 中使用 Alamofire 4 中的 SessionManager 下载音频文件

Discord.js 将 mpeg 音频流流式传输到语音通道

NodeJS HTML5 音频播放器 MPEG 文件

一、音视频基础知识

将h264视频和ADTS-AAC音频转换为MPEG2 TS时的音频同步问题。

无法使用 Alamofire 通过服务器上传音频文件