Tag: PulseAudio

Ubuntu で イコライザーで手軽に重低音を強くしたい

概要

手元のオーディオの特性もあるが手軽に重低音を強くしたかった。

環境
  • Ubuntu Studio 21.04
  • Jack ではなく PluseAudio を利用
手順
  1. PulseAudio の module-equalizer-sink , module-dbus-protocol モジュールをロード、
pactl load-module module-equalizer-sink
pactl load-module module-equalizer-sink
  1. qpaeq をインストール
$ sudo apt install pulseaudio-equalizer
  1. pavucontrol の「再生」タブで、アプリの出力先をプルダウンメニューから「FFT based equalizer on Simultaneous output to hoge , hogege 」に変える

  2. Equalized Stream の出力先を、音声を出したいものに変更

エラーが出ることがあったが、ファイルを削除すると治る

下記エラーが出たが、

rm /home/kaoru/.config/pulse/equalizer-*

で解消した。

I: [pulseaudio] sink-input.c: Created input 7 "Equalized Stream" on alsa_output.usb-BurrBrown_from_Texas_Instruments_USB_AUDIO_DAC-00.analog-stereo with sample spec float32le 2ch 44100Hz and channel map front-left,front-right
I: [pulseaudio] sink-input.c:     media.name = "Equalized Stream"
I: [pulseaudio] sink-input.c:     media.role = "filter"
I: [pulseaudio] sink-input.c:     module-stream-restore.id = "sink-input-by-media-role:filter"
D: [pulseaudio] protocol-dbus.c: Interface org.PulseAudio.Ext.Equalizing1.Equalizer added for object /org/pulseaudio/core1/sink5
D: [pulseaudio] database-tdb.c: Opened TDB database '/home/kaoru/.config/pulse/equalizer-presets.tdb'
I: [pulseaudio] database.c: Successfully opened 'equalizer-presets' database file '/home/kaoru/.config/pulse/equalizer-presets.tdb'.
D: [pulseaudio] protocol-dbus.c: Interface org.PulseAudio.Ext.Equalizing1.Manager added for object /org/pulseaudio/equalizing1
D: [pulseaudio] database-tdb.c: Opened TDB database '/home/kaoru/.config/pulse/equalizer-state.tdb'
I: [pulseaudio] database.c: Successfully opened 'equalizer-state' database file '/home/kaoru/.config/pulse/equalizer-state.tdb'.
E: [pulseaudio] xmalloc.c: Assertion 'size > 0' failed at pulse/xmalloc.c:60, function pa_xmalloc(). Aborting.
fish: 'pulseaudio -vvvvv' terminated by signal SIGABRT (Abort)
Read more...

cheatsheet/pactl

コマンド効果
pactl list cards shortカード一覧
pactl list modulesロードしている PluseAudio 一覧
pactl list sinks現在の sink(出力先)一覧
pacmd list現在の設定一覧
pacmd list-sinks | grep -e ’name:’ -e ‘index:’デフォルトの出力先
pulseaudio –dump-conf設定ファイルの読み込み /etc/pulse/daemon.conf から読み込んでいる
Read more...

Linuxでのオーディオ関連の事

環境
  • Ubuntu Studio 21.04
  • Jack ではなく PluseAudio を利用
設定ファイルと書き方

最初に既存の設定ファイルを .include で読み込む

私は ~/.config/pulse/default.pa に下記のようにして使っている

.include /etc/pulse/default.pa

load-module module-equalizer-sink
load-module module-dbus-protocol
load-module module-combine-sink
set-default-sink combined

module-combine-sink で複数の音声デバイスから出力している。 module-equalizer-sink でイコライザーを有効にしている。

音を出す時には pavcontrol で [アプリ]->[module-equalizer-sink で作られたイコライザー]->[module-combine-sink で作られた combined デバイス] という流れを作ると音が出る。

この部分は後からマルチデバイスな感じに変更した

デバッグ

状況確認は pactl を使う

下記を繰り返すが、Youtube などブラウザで確認する場合、pulseaudio が起動した後、ブラウザを起動する必要がある。

pulseaudio -k
vi ~/.config/pulse/default.pa
pulseaudio -vvvvv

あるいは ~/.config/pulse/daemon.conf のログレベルを変更する事で出力増やすことができる。

log-level = info
log-target = syslog

レベルは debug, info, notice, warn, err, fail, crit が指定可能。

音量の調節などは pavucontrol が便利。 イコライザーは qpaeq 。

Read more...

Linux PluseAudio で 複数スピーカーから同時に音を出す

概要

デスクトップ Linux のデフォルトの状態で複数のスピーカー、音声の出力先があった場合、 「出力先の選択はできる」が「複数の出力先を同時に使えない」という状況だった。 PluseAudio の module-combine-sink モジュールを読み込み、仮想的な出力先を作り pavucontrol でアプリケーションごとにある音声出力先を仮想的な出力先に切り替えることで、 複数の出力先で同時に音がなるようになった。

課題

  • ウーファーとイヤフォン両方で聞けるようになったので、概ね満足しているが bluetooth イヤフォンでの遅延が気になった。 現在はケーブルのイヤフォンを使って聞いている。
  • MIDI キーボードからの遅延が大きい。この用途の場合は Jack を試したい。

環境

  • Ubuntu Studio 21.04
  • Jack ではなく PluseAudio を利用

手順

$ pactl load-module module-combine-sink
$ pavucontrol

pavucontrol 起動後、複数スピーカーから出力したいアプリの「出力先」を、 「Simultaneous output to hoge , hogege , hogegege( サウンドカード名 )」に変更する。

ウーファー

pulseaudio --dump-conf でエラー確認できるが、 ~/.config/pulse/daemon.conf に

enable-lfe-remixing = yes

と追加していると

E: [pulseaudio] daemon-conf.c: [/home/kaoru/.config/pulse//daemon.conf:1] Deprecated option 'enable-lfe-remixing' found.
E: [pulseaudio] daemon-conf.c: [/home/kaoru/.config/pulse//daemon.conf:1] Please migrate to 'remixing-produce-lfe' and 'remixing-consume-lfe', set both to 'yes'.

というエラーが出た。古い設定のようなので、オススメされている設定 remixing-consume-lfe = yes を追加した。

Read more...