試験運用中なLinux備忘録・旧記事

はてなダイアリーで公開していた2007年5月-2015年3月の記事を保存しています。

ALSA

Ubuntu上でサウンドカードをALSAのドライバで使用する際にデバイスファイル/dev/dspが存在しない件に関して(10.10時点)

既にまとめドキュメントでは少し触れているが、Ubuntuでは、バージョン10.10の時点ではALSAサウンドシステムのドライバを使用した環境において、OSSのサウンドシステムにおけるデバイスファイル/dev/dspは、ディストリ標準のカーネルには存在しない。また、O…

ALSAサウンドシステム上のオーディオデータをWAVEファイルに書き出す

ここでは、ALSAサウンドシステムに対応したアプリケーションからのオーディオ出力をWAVE形式のファイルに書き出す方法についてを扱う。 「file」のALSA PCMモジュール(プラグイン)を用いる方法 ALSAサウンドシステム上のPCMモジュール(プラグイン)システムに…

radiko.jpの試験配信を私的録音するのに適した環境と録音の手順について

2010年3月から試験配信されているradiko.jpのラジオ放送は対象のエリア内からのアクセスに限りFlashプラグインを用いてWebブラウザ上で聴取できる。 放送局の免許による地域限定性が関係しているなどの情報もあるものの、地域をわざわざ判定して限定する意味…

ALSAサウンドシステム上のMIDI信号をキャプチャする(後半)

「ALSAサウンドシステム上のMIDI信号をキャプチャする(前半)」の続き。 出力されるファイルについての注意点 アプリケーションからのキャプチャという性質により、書き出されるMIDIファイルの拍やテンポは元のMIDIシーケンスとは無関係となる。そのため、こ…

ALSAサウンドシステム上のMIDI信号をキャプチャする(前半)

ALSAの「alsa-utils」パッケージに含まれるarecordmidiというコマンド*1を用いると、任意のALSA MIDIポートから出力されるMIDIシーケンスを標準MIDIファイル(SMF:Standard MIDI File)形式で書き出すことができる。 ポートの指定に関する注意点 arecordmidiが…

MIDIデータの演奏状況をリアルタイムにグラフィカル表示するASeqViewの使い方

以前「STed2上の演奏と独自インターフェースについて(VirMIDIとrcpplayを使用した例・前半)」「STed2上の演奏と独自インターフェースについて(VirMIDIとrcpplayを使用した例・後半)」でも少し扱っているが、この機会に使い方をまとめておく。 前提 起動 アプ…

OpenAL Softの新しい設定ファイルとその書式について

Mandriva Linux 2010.0でOpenALライブラリのバージョンが上がり、Tao Frameworkのほうもこれに合わせた修正を「自前で作成もしくは修正した幾つかのMandriva Linux向けRPMパッケージを更新2」で行ったのだが、openBVE上でサウンド出力がうまく指定されていな…

GNU/Linux上のサウンドシステムについて(後半)

「GNU/Linux上のサウンドシステムについて(前半)」の続き。 サウンドデーモン(実際) 以下の各サウンドデーモンにはデーモン本体の他にライブラリが存在し、対応アプリケーションからそのサウンドシステム(デーモン)にアクセスする方法を提供する。 PulseAudio…

GNU/Linux上のサウンドシステムについて(前半)

GNU/Linux上の音声出力に関する仕組みは複雑に見えてしまうが、それほど難しいわけではない。 低レベルサウンドシステム ALSAやOSSといったサウンドシステムは音声の出力をするデバイスと最も密接な関係があり、アプリケーションから受け取ったデータをサウ…

システムトレイ上のALSA用ミキサーを作成

PyGTKでシステムトレイのアイコンの隣にポップアップウィンドウを作成する(前半) システムトレイアイコンの並び方向に関する覚え書き(2009/2/10現在) PyGTKでシステムトレイのアイコンの隣にポップアップウィンドウを作成する(後半) システムトレイアイコン…

PythonからALSAのミキサーを扱う

pyalsaaudio(http://pyalsaaudio.sourceforge.net/)を用いると、PythonのコードからALSAのミキサーやPCMデバイスを操作することができる。 ここではミキサー項目の取得と音量取得/変更を試してみることにする。 ディストリのパッケージ Gentooでは「pyalsaau…

PulseAudioの設定(主にデーモン)に関する覚え書き

ここで扱うのは、PulseAudio自体の設定ファイルについて。 (2009/11/12)Mandriva Linux 2009.1や2010.0のPulseAudioでは本記事のように(PulseAudioがhwでなくdmix/dsnoopを用いるように)設定すると頻繁にノイズが出てしまうようになってしまい、システム設定…

ALSA PCMプラグインとその設定について(既定のプラグインデバイス)

既定(default)のPCMプラグインデバイス ALSAアプリケーションは、特に指定のない限り、「default」というPCMプラグインデバイスに対してデータのやりとりをする。この定義は/usr/share/alsa/cards/以下のカードごとの設定ファイルにされている。*1 この「def…

ALSA PCMプラグインとその設定について(概要と設定ファイル)

ALSAにはPCMプラグインという仕組みがある。PCMプラグインは、PCM音声に関する色々な処理を行う。プラグインというと機能拡張のようだが、ALSA対応アプリケーションから音を出すときには、「alsa-lib」パッケージに含まれるPCMプラグインが1つ*1以上使用され…

JACK Audio Connection KitをALSAのdmixとdsnoopから使用する

(2014/10/3)2014年時点ではPulseAudioがALSAに統合されているディストリが多数で、ALSAのライブラリからALSAの「dmix」などのプラグインを経由してALSAのドライバへ出力されることは基本的にはなく、本記事の形を用いるメリットもない。JACK Audio Connectio…

JACK Audio Connection KitとQjackCtlにおけるMIDIドライバについて

0.109系より古いJACKではALSAのMIDIドライバを使用できない JACK Audio Connection Kitを制御するGUIのQjackCtlの設定ダイアログには「MIDI Driver」という項目があり、有効にする場合には「seq」と「raw」を選択するようになっている(「none」で無効)。しか…

TuxOnIce + hibernate-scriptとサウンドについて

復帰後に不具合が起きる場合にはサービス停止/起動で回避する TuxOnIceを実行するために使用するhibernate-script*1には自動でサービスを停止/開始する*2機能があり、サウンドもその1つとなっていて、Gentoo Linuxでは、/etc/init.d/alsasoundが使用される。…

STed2上の演奏と独自インターフェースについて(VirMIDIとrcpplayを使用した例・後半)

「STed2上の演奏と独自インターフェースについて(VirMIDIとrcpplayを使用した例・前半)」の続き。 STed2上の設定 STed2上の操作 ポート接続の他の形(好みの問題) 注意点(仕様) ALSA MIDI(実)デバイスを使用する場合の覚え書き STed2上の設定問題がなければ、…

STed2上の演奏と独自インターフェースについて(VirMIDIとrcpplayを使用した例・前半)

「STed2上の演奏と独自インターフェースについて(概要と対応状況)」と「STed2上の演奏と独自インターフェースについて(TiMidity++ 1を使用)」の続き。 TiMidity++ 2は、STed2インターフェースパッチが当たらないのだが、ALSAシーケンサインターフェース機能…

ALSA Patch BayのLADCCA対応をLASH対応にする実験

LADCCAに対応しているが、LASHになってから対応されず放置されている例として、ALSA Patch Bay(http://pkl.net/~node/software/alsa-patch-bay/)がある。ALSA MIDIポートとJACK Audio Connection Kitのポートを接続するためのGUIツールで、機能や使い勝手はQ…

JACK Audio Connection Kitを使用した録音について

JACKを使用することで、PCM音声の録音が行える。JACK対応アプリケーションはもちろん、非対応アプリケーションでもALSAのプラグインにより使用できることもあり、録音を行うのに最も有効な方法。 関連記事: ALSA PCMデバイスとしてJACK Audio Connection Kit…

ALSA上の録音に関する覚え書きとAudacity

ライン入力やマイクなどの外部入力の録音は、ALSA標準の録音機能で行える。JACK Audio Connection Kitを使用することでJACK対応アプリケーションから録音することもできるが、JACKを使用する方法は別の記事にて扱う。 ミキサー設定 録音に関するミキサー設定…

ALSA PCMデバイスとしてJACK Audio Connection Kitを使用

「ALSAには対応しているがJACKには対応していない」というアプリケーションからでも、JACK経由でのPCM音声のやりとりが可能になる。 このALSAプラグインはオプション扱いで、alsa-libには含まれず、「alsa-plugins」の中に入っていて、Debianでは「libasound…

JACK Audio Connection Kitの音飛びについてと、その対処

JACK Audio Connection Kitを使用すると、音声が途切れてしまうことがある。端末には **** alsa_pcm: xrun of at least xx.xxx msecsのような形で、切れた時間の目安が表示される。これが出てしまう状況ではかなり聞き苦しい音になってしまうのだが、効果的…

JACK Audio Connection Kitの概要

JACK Audio Connection Kit(JACK)はサウンドデーモン(サーバ)の1つで、対応したアプリケーション間でPCM音声*1を渡すことができる。 具体的には、あるソフトウェアから出る音声に別のソフト(複数可)でエフェクトを通すことや、複数のアプリケーションからの…

alsamixerとamixer、GUIのミキサー

「alsa-utils」パッケージに含まれるalsamixerとamixerは、ともに端末から音量調整を行うものだが、全く使い方が異なる。 alsamixer 起動 端末上で、GUIのミキサーのような感覚で使える。端末から $ alsamixerとする他、ランチャやデスクトップ環境のコマン…

GStreamerのALSA出力におけるPCMデバイス名を指定する

[ホームディレクトリ]/.asoundrcで定義した「pcm.[名前]」というPCMデバイスをGStreamerのALSA出力プラグイン(エレメント名「alsasink」)で使用するためには、alsasinkエレメントへの引数(プロパティ)として「device=[デバイス名]」を指定する必要がある。こ…

ALSA対応アプリケーションのPCMデバイス指定

${HOME}/.asoundrcなどに独自のPCMデバイスの定義をしている場合、アプリケーションからはそのままでは使用されず、使用するには、アプリケーションごとに固有の方法で指定する必要がある。 ALSA PCMデバイス名の指定方法 アプリケーション設定方法 Audaciou…

ALSAでLADSPAプラグインを使用する

ALSAのPCMプラグインの中に、LADSPAプラグインを扱う「ladspa」という種類がある。これを使用することで、ALSA経由で音を出す際にフィルタがかけられる*1。 (2007/6/29)alsa-libのバージョン1.0.14_rc4を含む、それ以降のバージョンにおいて、LADSPAプラグイ…

/dev/dspを使用するアプリケーションからaossを使用してALSAで音を鳴らすときの設定

GNU/Linux上で音を出すアプリケーションには、新しいALSAライブラリ経由で出すものと、古いOSS APIを使用して出すものとがある。*1 ALSAにはOSSエミュレーションモードがあり、snd-pcm-oss,snd-seq-oss,snd-mixer-ossといったカーネルモジュールが読み込まれ…