第11章 サウンド

開発ボードは、オーディオコーデックを搭載しており、録音及び再生をおこなうことができます。

11.1. コーデック仕様

録音及び再生のソースとして 表11.1「録音/再生ソース一覧」に示す入出力を使用することができます。

表11.1 録音/再生ソース一覧

ソースコネクタ備考
LINE入力CON10 
マイク入力CON11デフォルト録音ソース
LINE出力CON12 
ヘッドフォン出力CON13デフォルト再生ソース

オーディオコーデックドライバは表11.2「オーディオコーデックドライバの仕様」に示す値に設定することができます。

表11.2 オーディオコーデックドライバの仕様

チャンネル数2 (stereo)
サンプリングフォーマットSigned 16 bit, little-endian
サンプリング周波数96000/48000/32000/8000 Hz

11.2. OSSによるサウンド機能の実現

Linuxでサウンド機能を実現するには、ALSA[5]とOSS[6]の二つの方法があります。OSSは、ALSAのOSSエミュレーション[7]によって実現されます。OSSエミュレーションには、以下の二つの方法があります。

  • カーネルレベルOSSエミュレーション(snd-ocm-oss, snd-mixer-oss, snd-seq-ossを使用)

  • alsa-ossパッケージによるユーザ空間OSSエミュレーション(aossスクリプトを使用)

開発ボードのデフォルト設定では、カーネルレベルOSSエミュレーションによるOSS機能を提供しています。

OSSプログラミングについては、「Open Sound System Programmer's Guide」[8]をご参照ください。

11.2.1. サウンドを再生する

OSSを使用したサウンドの再生にはvplayコマンドを使用します。

[armadillo500 ~]# vplay -r -S -s 8000 -b 16 -t 5 filename
-r

再生するファイル形式の指定 -r=raw形式、-w=wav形式、-v=voc形式 (デフォルト)

-S

ステレオ (デフォルト モノラル)

-s 8000

サンプリング周波数[samples/sec] 300以下の場合は1000倍される (デフォルト 8000Hz)

-b 16

サンプルサイズ[bits/sample] 8または16を指定可能 (デフォルト 8)

-t 5

再生時間[sec] (デフォルト ファイルサイズ)

filename

再生するサウンドファイル

図11.1 サウンドの再生


11.2.2. 録音する

OSSを使用したサウンドの録音にはvrecコマンドを使用します。

[armadillo500 ~]# vrec -r -S -s 8000 -b 16 -t 5 filename
-r

再生するファイル形式の指定 -r=raw形式、-w=wav形式、-v=voc形式 (デフォルト)

-S

ステレオ (デフォルト モノラル)

-s 8000

サンプリング周波数[samples/sec] 300以下の場合は1000倍される (デフォルト 8000Hz)

-b 16

サンプルサイズ[bits/sample] 8または16を指定可能 (デフォルト 8)

-t 5

録音時間[sec] (デフォルト 無期限)

filename

録音するサウンドファイル

図11.2 サウンドの録音


11.2.3. 音量を変更する

OSSを使用して再生/録音時の音量を変更するにはmixerコマンドを使用します。

[armadillo500 ~]# mixer 指定子 音量
指定子

line(LINE入力)またはpcm2(ヘッドフォン出力)を指定します

LINE出力とマイク入力の音量は固定です

音量

音量を0-100の間で指定します

図11.3 音量の変更


11.2.4. 録音ソースを変更する

OSSを使用して録音ソースを変更するにはmixerコマンドを使用します。

[armadillo500 ~]# mixer +rec 指定子
指定子

line(LINE入力)またはmic(マイク入力)を指定します

図11.4 録音ソースの指定




[5] Advanced Linux Sound Architecture http://alsa.sourceforge.net

[6] Open Sound System http://developer.opensound.com/

[7] http://alsa.opensrc.org/OssEmulation

[8] http://www.opensound.com/pguide/oss.pdf