【Swift3】【AVAudioPlayer】音を出してみる。

AVAudioPlayerを使って音を出します。

参照サイト。
ピアノアプリ(SwiftPiano)を作ろう!4. 音が出るコードを書く(まずは、ドの音だけ) | bick.xyz
[iPhone] AVAudioplayer 音楽の再生 | iPhoneアプリ開発
AVFoundationでのBGMの再生について(Swift) – スタック・オーバーフロー
[Swift] AVAudioPlayer. 音楽、効果音の再生、ループ回数、音量、速度を設定する。 | はじはじアプリ体験記

例によってSwift3になって色々と変わっているようです。

まずは音のファイルを用意します。
今回はこちら
インターフェイス Vol.1 | 効果音辞典 – フリー効果音素材ライブラリ
から音を使わせていただきました。

decision-6.mp3というファイルを使っています。

AVAudioPlayerを使うにはAVFoundation.frameworkが必要です。
TARGET>Generalで追加しておきます。

import UIKit
import AVFoundation

class ViewController: UIViewController {
    var audioPlayerClear : AVAudioPlayer! = nil //クリア時用

    override func viewDidLoad() {
        super.viewDidLoad()
        makeSound()
    }

// MARK: サウンドファイル作成
    func makeSound() {
    //Clear音作る。
        //音声ファイルのパスを作る。
        let soundFilePathClear : NSString = Bundle.main.path(forResource: "decision-6", ofType: "mp3")! as NSString
        let soundClear : NSURL = NSURL(fileURLWithPath: soundFilePathClear as String)
        //AVAudioPlayerのインスタンス化
        do{
            audioPlayerClear = try AVAudioPlayer(contentsOf: soundClear as URL, fileTypeHint:nil)
        }catch{
            print("Failed AVAudioPlayer Instance")
        }
        //出来たインスタンスをバッファに保持する。
        audioPlayerClear.prepareToPlay()
    }

あとは呼び出したいタイミングで

                self.audioPlayerClear.play()

と記述すれば音がなる。はず。

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です