• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    公众号

ios - 音频文件未从文档目录播放

[复制链接]
菜鸟教程小白 发表于 2022-12-11 16:49:54 | 显示全部楼层 |阅读模式 打印 上一主题 下一主题

我在文档目录中有一个音频文件,它没有播放,但我没有收到任何错误或崩溃。我真的被这种情况困住了,引用了很多 SO 链接,但没有一个能解决我的问题。

  var myPlayer = AVAudioPlayer()

    let fileManager = NSFileManager.defaultManager()

    let urls = fileManager.URLsForDirectory(.DocumentDirectory, inDomains: .UserDomainMask)
    if let documentDirectoryURL: NSURL = urls.first {
    print(documentDirectoryURL)// File copied to this directory
    let soundURL = documentDirectoryURL.URLByAppendingPathComponent("09.mp3")
        do {
            myPlayer = try AVAudioPlayer(contentsOfURL: soundURL)
            myPlayer.delegate = self
            myPlayer.prepareToPlay()
            myPlayer.play()
        } catch let error as NSError {
            NSLog("Unresolved error \(error.debugDescription)")
            // SHOW ALERT OR SOMETHING
        }
    }



Best Answer-推荐答案


让我澄清一下;

播放音频文件有两种标准方式:

录制音频,然后使用完成处理程序将其导出到应用程序(文档目录)内的文件中。从那里我们可以从文档目录访问该文件。

let settings = [
    AVFormatIDKey: Int(kAudioFormatMPEG4AAC),
    AVSampleRateKey: 12000.0,
    AVNumberOfChannelsKey: 1 as NSNumber,
    AVEncoderAudioQualityKey: AVAudioQuality.High.rawValue
]

do {
    audioURL = let audioFilename = getDocumentsDirectory().stringByAppendingPathComponent("recording.m4a")
let audioURL = NSURL(fileURLWithPath: audioFilename)
    audioRecorder = try AVAudioRecorder(URL: audioURL, settings: settings)
}

class func getDocumentsDirectory() -> String {
    let paths = NSSearchPathForDirectoriesInDomains(.DocumentDirectory, .UserDomainMask, true)
    let documentsDirectory = paths[0]
    return documentsDirectory
}

还有更多你喜欢的实际录音等等。这里有一个教程

https://www.hackingwithswift.com/example-code/media/how-to-record-audio-using-avaudiorecorder

--或--

我们在计算机上有一个音频,您将其传输到 XCode,您可以使用它调用它

myPlayer = try AVAudioPlayer(fileURLWithPath: "09.mp3")

关于ios - 音频文件未从文档目录播放,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38030199/

回复

使用道具 举报

懒得打字嘛,点击右侧快捷回复 【右侧内容,后台自定义】
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关注0

粉丝2

帖子830918

发布主题
阅读排行 更多
广告位

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap