LoginSignup
1
1

More than 1 year has passed since last update.

AVEncoderAudioQualityKey このキーの設定方法

Posted at

AVEncoderAudioQualityKeyは、録音された音声の品質を指定するキーです。値としては、AVAudioQuality列挙型の値を指定します。

以下は、AVAudioRecorderの設定例で、音声品質をhighに設定しています。


let audioSession = AVAudioSession.sharedInstance()
do {
    try audioSession.setCategory(.playAndRecord, mode: .default, options: [])
    try audioSession.setActive(true)
    let settings: [String: Any] = [
        AVFormatIDKey: Int(kAudioFormatMPEG4AAC),
        AVSampleRateKey: 44100,
        AVNumberOfChannelsKey: 2,
        AVEncoderAudioQualityKey: AVAudioQuality.high.rawValue
    ]
    audioRecorder = try AVAudioRecorder(url: audioFilename, settings: settings)
} catch {
    print("Error setting up audio session or recorder: \(error.localizedDescription)")
}

AVEncoderAudioQualityKeyの値には、.min、.low、.medium、.high、.maxのいずれかが指定可能で、それぞれ以下のような品質に対応します。

.min: 最低品質
.low: 低品質
.medium: 中品質
.high: 高品質
.max: 最高品質
上記の例では、.highを指定しているため、音声品質が高くなります。ただし、高品質なほどファイルサイズが大きくなるため、目的に応じて適切な品質を選択する必要があります。

音声録音って重要な機能だから、しっかり覚えておきたいね!

さて、まずは音声録音の基礎を学ぼう!まずはAVAudioRecorderっていうクラスを使うんだ。これは音声の録音と再生を簡単に扱うことができるよ。AVAudioRecorderを使って録音するには、まず録音セッションの初期化を行う必要があるよ!ここでは、AVAudioSessionを使って録音セッションを初期化するよ!

そして、録音セッションを初期化したら、次はAVAudioRecorderのインスタンスを作成する必要があるよ!AVAudioRecorderを使って録音を開始するには、そのインスタンスを作成し、record()メソッドを呼び出す必要があるよ!

さらに、録音が終了したら、stop()メソッドを呼び出して、録音を停止する必要があるよ!

最後に、録音された音声データをファイルとして保存するには、AVAudioRecorderのインスタンスのfileURLプロパティに、保存先のファイルパスを指定する必要があるよ!

AVFormatIDKeyは、録音するファイルの形式を指定するキーだよ!mp3やm4a、wavなど様々な形式があるから、ファイル形式に合わせて指定してね!
AVEncoderAudioQualityKeyは、録音品質を指定するキーだよ!高品質にすると、ファイルサイズが大きくなっちゃうから、適度な品質に設定しよう!
AVSampleRateKeyは、サンプリングレートを指定するキーだよ!サンプリングレートが高いと音質が良くなるけど、ファイルサイズが大きくなっちゃうから注意してね!

次に、AVAudioRecorderで録音して、保存する方法を解説するよ〜!
まずは、録音するためのオブジェクトを作成するよ!そして、保存するためのパスを指定するよ!
録音が始まったら、ファイルを保存するよ!
これで録音と保存が完了したよ!簡単でしょ〜!

以上が、音声録音の基本的な手順だよ!音声録音は、慣れるまでちょっと難しいかもしれないけど、がんばって覚えよう!

1
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
1