ALSA-utilsのを使用して

 REF:https://blog.csdn.net/outstanding_yzq/article/details/8126350

.alsa-utilsのご紹介

ALSAは、カーネル内のサウンドドライバである。これは、コアと他のALSAサウンドカードドライバが含まれています。
ALSA-utilsのALSAサウンドテストおよびオーディオ編集ツールが含まれているキットです。
 

2つの取り付け.alsa-utilsの

1.RPMパケットモード

ターボリナックス10.5,11バージョンが既にALSA-utilsのRPMパッケージが含まれている、あなたは直接インストールすることができます。
#rpmの-ivhのalsa-utilsの-xxx.rpm

2.ソースパケットモード

ダウンロード:
http://www.alsa-project.org/main/index.php/Download
ソースパッケージは、取り付け方法:
#タールzxvfのalsa-utilsの-1.0.6.tar.gz
#のCDのalsa-utilsの-1.0.6
# 。/構成、設定
#メイクインストール

3 .alsa-utilsのツールの使用

付属のalsa-utilsのツールは以下のとおりです。
alsactl、aconnect、alsamixerの、amidi、amixer、はaplay、aplaymidi、arecord、arecordmidi、
aseqnet、iecset、スピーカーテスト

1.alsactlの使用

alsactlいくつかの高度な設定。複数のサウンドカードを搭載したシステムであるために使用されるALSAサウンドドライバは、それはまた、サポートすることができます。
時にはオプションはボリュームコントロールパネルを調整することはできません、あなたが達成するためにalsactlを使用することができます。
alsactlは、設定ファイルにサウンドカード設定情報のドライバで指定することができる。コンフィギュレーションファイルから指定されたまたは復元します
サウンドカードのドライバ情報を設定します。
alsactlフォーマット:
 
alsactl [オプション] [ストア|復元] <カード番号またはID>
 
オプション:
 
-h、--help
        印刷ヘルプ
       -f、--file
        設定ファイルを指定し、デフォルトは/etc/asound.stateです。
              使用する設定ファイルを選択します。デフォルトは
              /etc/asound.state
 
 
       -F、--force
        最大回復のコマンドを復元します。設定値を使用します。
 
 
       -d、--debug
        デバッグモード、詳細は出力。
       -v、--version
        alsactlバージョン番号を表示します。
ファイル:
   /etc/asound.state(または指定-fファイルを使用)、すべてのサウンドミキサーの設定情報が保存されています。
例:
#RM-F /etc/asound.state
#alsactl店

2.aconnect使用

接続マネージャは、ALSAシーケンサaconnectある。ALSAシーケンサのポートを接続または切断する。ポート
定義する無料。
使用aconnectデバイスはaseqviewによって確立された任意のポートに接続することができます。
フォーマット:
aconnect [-d] [-options]センダレシーバ
      aconnect -i | -o [-options]
      aconnect -x
 
オプション:
接続管理
-d、--disconnect
       切断されました。
      -e、--exclusive
       使用ポート排他モード送信及び受信ポートを他のポートに接続することができません。
      -r、--realキュー
       タイムスタンプパケットは、現在の値がリアルタイムキューに変換されます。
 
ディスプレイポート
-i、--input
       ディスプレイの入力ポートが存在します。
      -o、--output
       ディスプレイ出力ポートが存在します。
      -l、--list
       現在の接続状態を表示します。
削除接続
-x、--removeall
       すべての接続を削除します。
例:
接続ポート64:65から0:0:
           64 aconnect%:0〜65:0
この接続は、すべてのポート64に送信される、一方向である:受信にリダイレクトされ、0データ65:ポート、他のポート65がある場合、0:1、
また、64を使用する:0を送信するポートとして、データは、二つの受信ポートに同時に送信されます。
ポート接続、使用:
           %のaconnectは64 -d:0 65:0
アドレスは、クライアントの名前を置き換えるために使用することができます。
           外部aconnect%:0 Emu8000:1
入力ポート情報-i.-O出力ポート情報をプリントアウトを使用して印刷。
           %aconnect -i
           クライアント0: 'システム' [タイプ=カーネル]
               0 ’Timer           ’
               1 ’Announce        ’
           client 64: ’External MIDI-0’ [type=kernel]
               0 ’MIDI 0-0        ’
可以使用-x选项来清除所有的连接.
           % aconnect -x

3.alsamixer的使用

alsamixer是一个终端界面的声卡音量调节器.如图:
命令格式:
alsamixer [options]
 
选项:
-h, -help
       显示帮助信息.
      -c <card number or idenfication>
       指定需要设置的声卡.默认为0.
      -D <device identification>
       选择需要控制的调节器.
      -g
       设置界面颜色.
      -s
       最小化界面窗口.
 
快捷键:
   进入alsamixer界面后,可以使用下面快捷键进行控制:
 
常规控制:
   左右箭头或n,p    用来选择通道.
    上下箭头或+,-    同时调整选定通道的左右声道的音量.
    B,=    设置左右声道音量相同.
    M    静音当前通道.<,>分别对左,右声道静音.
    空格    选择录音源.在选定的通道上按"空格",可以标记此通道为录音源.此操作仅限
        输入设备.插入键或";",删除键或"'"分别选定左右通道.
    L    刷新屏幕.
 
快捷设置
PageUp    增大5格音量.
      PageDown    减小5格音量.
   
      End    设置音量为0.
   分别调整左,右或整个通道的音量.
   Q,W,E    增大 左,右,通道 的音量.
   Z,X,C    减小 左,右,通道 的音量.
   alt-q,ESC    退出.
 
 
4.amidi的使用
amidi的作用是对ALSA的RawMIDI端口进行读写.
amidi是一个命令行工具,允许你以独占模式向MIDI设备读/写数据.
命令格式:
amidi options
 
选项:
   -h,-V,-l,-L    用于显示信息.
    -s,-r,-S,-d    用于发送/接收数据.
       -h, --help
        打印帮助信息.
       -V, --version
        打印版本号.
       -l, --list-devices
        打印所有硬件MIDI端口的列表.
       -L, --list-rawmidis
        打印所有RawMIDI定义.
       -p, --port=name
        设置要使用的ALSA RawMIDI端口.若不指定,则使用声卡0的端口0.
       -s, --send=filename
        发送指定文件的内容到MIDI端口.文件中必须包含raw MIDI命令(.syx,.mid文件).
       -r, --receive=filename
        将MIDI端口接收的数据写入指定文件.
       -S, --send-hex="..."
        发送十六进制字节到MIDI端口.
       -d, --dump
        从MIDI端口接收数据,然后以十六进制形式打印出来.
       -t, --timeout=秒
        指定超时,当端口无数据输出达到超时时长时,将停止接收数据.
示例:
       amidi -p hw:0 -s my_settings.syx
        发送my_settings.syx终端MIDI命令到端口 hw:0.
       amidi -S ’
        发送XG复位到默认端口.
       amidi -p virtual -d
        建立一个虚拟RawMIDI端口,然后发送所有数据到这个端口.

5.amixer的使用

amixer是命令行的ALSA声卡驱动调节器工具.
amixer用来在命令行控制ALSA的调节器,并且支持多声卡.
amixer不加参数时,将打印默认声卡的设置信息.
命令格式:
amixer [-c card] [cmd]
 
命令:
help   显示语法帮助.
       info   显示调节器设备的信息.
       scontrols    显示调节器器的完整列表 .
       scontents    显示包含详细信息的调节器的完整列表.
       set or sset <SCONTROL> <PARAMETER> ...
            设置调节器信息.
       get or sget <SCONTROL>
            显示调节器的信息.
       controls    显示声卡控制器的信息.
        
       contents    显示完整的声卡控制器信息.
       cset <CONTROL> <PARAMETER> ...
        设置声卡控制器信息.
       cget <CONTROL>    显示声卡控制器的信息.
 
 
选项:
[-c card]
        选择指定的声卡.
       [-D device]
        选择需要控制的设备名.默认是 default.
       -h     Help
        显示帮助信息.
       -q
        安静模式.不输出设置结果.
示例:
# amixer -c 1 sset Line,0 80%,40% unmute cap
     设置第2块声卡的"line"的左声道音量为80%,右声道为40%,取消静音,并设置
    它为声音源.
      # amixer -c 2 cset numid=34 40%
    设置第34个声卡元素为40%.

6.arecord,aplay的使用

arecord,aplay是命令行的ALSA声卡驱动的录音和播放工具.
arecord是命令行ALSA声卡驱动的录音程序.支持多种文件格式和多个声卡.
aplay是命令行播放工具,支持多种文件格式.
命令格式:
arecord [flags] [filename]
       aplay [flags] [filename [filename]] ...
 
选项:
-h, --help
             帮助.
       --version
              打印版本信息.
       -l, --list-devices
              列出全部声卡和数字音频设备.
       -L, --list-pcms
              列出全部PCM定义.
       -D, --device=NAME
        指定PCM设备名称.
       -q --quiet
        安静模式.
       -t, --file-type TYPE
        文件类型(voc,wav,raw或au).
       -c, --channels=#
        设置通道号.
       -f --format=FORMAT
        设置格式.格式包括:S8  U8  S16_LE  S16_BE  U16_LE
              U16_BE  S24_LE S24_BE U24_LE U24_BE S32_LE S32_BE U32_LE U32_BE
              FLOAT_LE  FLOAT_BE  FLOAT64_LE  FLOAT64_BE   IEC958_SUBFRAME_LE
              IEC958_SUBFRAME_BE MU_LAW A_LAW IMA_ADPCM MPEG GSM
       -r, --rate=#<Hz>
        设置频率.
       -d, --duration=#
        设置持续时间,单位为秒.
       -s, --sleep-min=#
        设置最小休眠时间.
       -M, --mmap
        mmap流.
       -N, --nonblock
        设置为非块模式.
       -B, --buffer-time=#
        缓冲持续时长.单位为微妙.
       -v, --verbose
        显示PCM结构和设置.
       -I, --separate-channels
        设置为每个通道一个单独文件.
示例:
aplay -c 1 -t raw -r 22050 -f mu_law foobar
    播放raw文件foobar.以22050Hz,单声道,8位,mu_law格式.
       arecord -d 10 -f cd -t wav -D copy foobar.wav
    以CD质量录制foobar.wav文件10秒钟.使用PCM的"copy".

7.aplaymidi的使用

aplaymidi用来播放标准的MIDI文件.
aplaymidi是一个命令行工具,可以在一个或多个ALSA端口上播放MIDI
文件.
命令格式:
aplaymidi -p client:port[,...] [-d delay] midifile ...
选项:
-h, --help
             输出帮助信息.
      -V, --version
             输出版本信息.
      -l, --list
             输出可以使用的输出端口列表.
      -p, --port=client:port,...
       设置端口.
      -d, --delay=seconds
       设置MIDI文件结束后,等待时长.
 
 
8.arecordmidi的使用
arecordmidi用于录制标准的MIDI文件.
arecordmidi可以从一个或多个ALSA端口上,录制一个标准MIDI文件.
命令格式:
arecordmidi -p client:port[,...] [options] midifile
 
选项:
-h,--help
             打印帮助信息.
      -V,--version
             打印版本号.
      -l,--list
             打印可以使用的输入端口.
      -p,--port=client:port,...
       设置端口.
      -b,--bpm=beats
       设置MIDI文件的速率,默认为120 BPM.
      -f,--fps=frames
       设置帧率.
      -s,--split-channels
       设置每个通道将录制成一个单独的MIDI文件.
      -d,--dump
       在标准输出上,以文本形式显示接受到的事件信息

9.aseqnet的使用

aseqnet是ALSA调节器的网络连接工具.
aseqnet是ALSA调节器的客户端程序,可以从网络上发送和接收事件数据包.
网络上有主机A,主机B.A为服务器端,B为客户端.ALSA调节器系统必须同事运行
在两个服务器上.然后建立服务器端口:
hostA% aseqnet
sequencer opened: 128:0
在HostB上执行:
hostB% aseqnet hostA
sequencer opened: 132:0
现在所有发送到HostA:128:0的数据将被传送到HostB:132:0上,反之亦然.
命令格式:
aseqnet [remotehost]
 
选项:
-p port
       指定TCP端口号或服务名.
      -s addr
       设置指定地址用于读操作.
      -d addr
       设置指定地址用于写操作.
      -v
       详细输出模式

10.iecset的使用

设置或输出IEC958状态位.
iecset是个小工具,通过ALSA的API,设置或输出IEC958(或称S/PDIF)状态位信息.
直接运行iecset将输出当前IEC958的状态信息. 命令格式:
iecset [options] [cmd arg...]
 
选项:
-D device
       设置需要打开的设备名.
      -c card
       设置需要打开的网卡名.
      -x
       输出AESx字节格式的状态信息.
      -i
       从标准输入读取命令信息,每行一个命令.
 
命令:
professional <bool>
       专业模式(true)或用户模式(false).
      audio <bool>
       音频模式(true).
      rate <int>
       采样频率,单位Hz.
      emphasis <int>
       设置加强值.0 = none, 1 = 50/15us, 2 = CCITT.
      lock <bool>
       速率锁.
      sbits <int>
       采样位:2 = 20bit, 4 = 24bit, 6 = undefined.
      wordlength <int>
       设置字长:0  =  No,  2 = 22-18 bit, 4 = 23-19 bit, 5 = 24-20
             bit, 6 = 20-16 bit.
      category <int>
       分类:值从0到0x7f.
      copyright <bool>
       设置是否包含版权.
      original <boo>
       原始标记:
示例:
输出当前IEC958信息.
$ iecset
   Mode: consumer
   Data: audio
   Rate: 44100 Hz
   Copyright: permitted
   Emphasis: none
   Category: general
   Original: 1st generation
   Clock: 1000 ppm
 
显示当前第1块声卡的IEC958状态位.
$ iecset -Dhw:0
   Mode: consumer
   Data: non-audio
   Rate: 44100 Hz
   Copyright: permitted
   Emphasis: none
   Category: general
   Original: 1st generation
   Clock: 1000 ppm
 
设置当前为用户模式,并打开"非音频"位.
$ iecset pro off audio off
   Mode: consumer
   Data: non-audio
   Rate: 44100 Hz
   Copyright: permitted
   Emphasis: none
   Category: general
   Original: 1st generation
   Clock: 1000 ppm

11.speaker-test的使用

speaker-test是一个针对 ALSA驱动的声音测试工具.
speaker-test可以分别对左右声道进行单独的测试.
命令格式:
speaker-test [-options]
 
选项:
-c | --channels NUM
       设置通道数目.
      -D | --device NAME
       设置使用的PCM设备名.
      -f | --frequency FREQ
       设置声音频率.
      --help
       输出帮助信息.
      -b | --buffer TIME
       设置缓冲区时长.0为使用最大的缓冲区大小.
      -p | --period TIME
       设置节拍为多少微秒.
      -r | --rate RATE
       设置音频率.
      -t | --test pink|sine|wav
             -t pink    表示测试时使用噪声.
             -t sine    表示测试时使用音频信号声.
             -t wav    表示测试时使用WAV文件.
      -l | --nloops COUNT
       设置测试循环的次数.
      -w | --wavfile
       设置测试时播放的wav文件.
      -W | --wavdir
       设置一个包含wav文件的目录.默认为/usr/share/sounds/alsa.
示例:
在一个音频接口上进行立体声测试
#  speaker-test -Dplug:front -c2
在两个音频接口上进行4声道测试.
#  speaker-test -Dplug:surround40 -c4
在立体声接口上进行5.1声道测试.
# speaker-test -Dplug:surround51 -c6
测试低音扬声器.
# speaker-test -Dplug:surround51 -c6 -s1 -f75
 
 

おすすめ

転載: www.cnblogs.com/schips/p/12099472.html