AVAudioPlayerでメモリ上のデータを再生したい
Firebase上にあるデータをメモリ上に展開した後、AVAudioPlayer上で再生したいと思い、以下のようなViewController.swiftを書きました。
import UIKit
import FirebaseStorage
import AVFoundation
class ViewController: UIViewController {
override func viewDidLoad() {
super.viewDidLoad()
// StorageReferenceを作成
let storage = Storage.storage()
let storageRef = storage.reference(forURL: "<path>")
let audioRef = storageRef.child("bird_sound.mp3")
// メモリ上に音声をダウンロードして再生
audioRef.getData(maxSize: 1 * 1024 * 1024) { data, error in
if let error = error {
print("DEBUG_PRINT: \(error)")
} else {
let audioPlayer: AVAudioPlayer = try! AVAudioPlayer(data: data!)
audioPlayer.play()
}
}
}
override func didReceiveMemoryWarning() {
super.didReceiveMemoryWarning()
// Dispose of any resources that can be recreated.
}
}
シミュレータで実行したところ、音は出ないのですが、何かしようとしているようで、
2017-10-28 10:25:46.273445+0900 audiotest[38079:27055100] [aqme] 254: AQDefaultDevice (1): skipping input stream 0 0 0x0
というようなメッセージが繰り返し出ます。どのように書くのが正しいのでしょうか?