apiの音声ファイルをiOSで再生したいのですが、
下記のコードだと、API上のmp3ファイルは再生できるものの、API上のcafファイルは再生できません。解決方法を教えていただけませんでしょうか?
※ログにはエラーメッセージが吐き出されません。cafを再生しようとするとsumilatorが落ちて、debag navigatorが開きます。AutdioFileStreamPackets(void* unsigned int, unsigned int, void const*, AudioStreamPacketDescription*)という部分がハイライトされており、あるthreadにEXC_BAD_ACCESSと表示されています。
※ API上(server上)のcafファイルを手動で手元にダウンロードし、bundleディレクトリに配置した場合は再生できました。
- code
@IBAction func playButton(_ sender: Any) { // AVplayerの準備 // mp3だと再生できる let url = "https://hogeapi.com/hogehoge.mp3" // cafだと再生できない // let url = "https://hogeapi.com/hogehoge.caf" let audioURL = NSURL(string: url) let avAsset = AVURLAsset(url: audioURL! as URL) let playerItem = AVPlayerItem(asset: avAsset) let player = AVPlayer(playerItem: playerItem) // 音声再生 let playerLayer = AVPlayerLayer(player: player) playerLayer.frame = self.view.bounds self.view.layer.addSublayer(playerLayer) player.play() }
回答2件
あなたの回答
tips
プレビュー