从文档目录播放 m4a 文件

Posted

技术标签:

【中文标题】从文档目录播放 m4a 文件【英文标题】:Play m4a file from document Directory 【发布时间】:2018-01-24 18:36:36 【问题描述】:

我想播放一个 m4a 文件,但我在控制台中遇到错误并且文件无法播放。

控制台打印:

操作无法完成。 (OSStatus 错误 2003334207。)

let url = FileManager.default.urls(for: .documentDirectory, in: .userDomainMask)[0]
print("File Location: ",url.path)

if(FileManager.default.fileExists(atPath: url.path)) 
   do 
       audioPlayer = try AVAudioPlayer(contentsOf: url)
       guard let player = audioPlayer else  return 

       player.prepareToPlay()
    catch let error 
       print(error.localizedDescription)
   

 else 
    print("file not found")

我试过这样的网址:

let NoteUrl = Bundle.main.url(forResource: "Voice Note", withExtension: "m4a")

但我无法播放。有人可以帮我按文件名播放 m4a 文件吗?任何帮助将不胜感激。

【问题讨论】:

【参考方案1】:

您正在将 Documents 文件夹传递给音频播放器。您的代码需要将特定文件名附加到 Documents 文件夹中。

let documentsURL = FileManager.default.urls(for: .documentDirectory, in: .userDomainMask)[0]
let url = documentsURL.appendingPathComponent("Voice Note.m4a")

【讨论】:

以上是关于从文档目录播放 m4a 文件的主要内容,如果未能解决你的问题,请参考以下文章

.m4a 文件在上传到服务器时未播放

AFNetworking 无法在 ios iPad 中下载多个 m4a 文件

无法使用 AVAudioPlayer 播放存储在文档目录中的本地 mp3 文件

使用 Android 流式传输 AAC 音频

如何从 m4a 文件中删除 tx3g 流

AVAudioPlayer 间歇性不播放声音