2009年07月05日 キーボードから輝度コントロール等 on Libretto U100
_ キーボードから輝度コントロール等 on Libretto U100
fnfxdを使うとできるらしい。
インストール
$ tar xvzf fnfx-0.3.tar.gz $ cd fnfx-0.3 $ ./configure && make # make install
後述するfnfxdが何故か/usr/local/etc/fnfx/を見ずに/etc/fnfx/を見てしまうので、シンボリックリンクをはる。
# ln -s /usr/local/etc/fnfx /etc/fnfx
それと(よくわからない)クライアントのfnfxが参照する~/.fnfxrcをサンプルからコピーする。
$ cp /etc/fnfx/fnfxrc_example ~/.fnfxrc
fnfxd(デーモン)をブート時に起動するように設定。
/etc/rc.d/rc.local
if [ -x /usr/local/sbin/fnfxd ]
then
/usr/local/sbin/fnfxd start
fi
東芝ラップトップのACPIモジュールをブート時にロードするように設定。
/etc/rc.d/rc.module
/sbin/modprobe toshiba_acpi
これで、Fn+F6(輝度ダウン)、Fn+F7(輝度アップ)ができるようになる。その他のキーアサインについては、/etc/fnfx/fnfxd.confを参照。
[ツッコミを入れる]
2026年07月05日 Pipewireによる合成マイクの作成
_ Slackware-currentのオーディオサーバがPulseaudioからPipewireに代ったので、pulseaudioによる合成マイクの作成のPipewire版
_ 仮想の出力デバイス(VOUT)を作成する
$ NULL_ID=$(pactl load-module module-null-sink sink_name=VOUT sink_properties=device.description=VOUT)
_ 利用可能なソースを確認する
$ pactl list short sources 2974 alsa_output.pci-0000_00_1f.3-platform-skl_hda_dsp_generic.HiFi__HDMI3__sink.monitor PipeWire s24-32le 2ch 48000Hz SUSPENDED 2975 alsa_output.pci-0000_00_1f.3-platform-skl_hda_dsp_generic.HiFi__HDMI2__sink.monitor PipeWire s24-32le 2ch 48000Hz SUSPENDED 2976 alsa_output.pci-0000_00_1f.3-platform-skl_hda_dsp_generic.HiFi__HDMI1__sink.monitor PipeWire s24-32le 2ch 48000Hz SUSPENDED 2977 alsa_output.pci-0000_00_1f.3-platform-skl_hda_dsp_generic.HiFi__Headphones__sink.monitor PipeWire s32le 2ch 48000Hz RUNNING 2978 alsa_input.pci-0000_00_1f.3-platform-skl_hda_dsp_generic.HiFi__Mic1__source PipeWire s32le 4ch 48000Hz RUNNING 3106 VOUT.monitor PipeWire float32le 2ch 48000Hz SUSPENDED
又は
$ LANG=C LC_ALL=C pactl list sources | grep 'Name:'
Name: alsa_output.pci-0000_00_1f.3-platform-skl_hda_dsp_generic.HiFi__HDMI3__sink.monitor
Name: alsa_output.pci-0000_00_1f.3-platform-skl_hda_dsp_generic.HiFi__HDMI2__sink.monitor
Name: alsa_output.pci-0000_00_1f.3-platform-skl_hda_dsp_generic.HiFi__HDMI1__sink.monitor
Name: alsa_output.pci-0000_00_1f.3-platform-skl_hda_dsp_generic.HiFi__Headphones__sink.monitor
Name: alsa_input.pci-0000_00_1f.3-platform-skl_hda_dsp_generic.HiFi__Mic1__source
Name: VOUT.monitor
_ マイク入力をVOUTへ接続する
$ MIC_ID=$(pactl load-module module-loopback \ source=alsa_input.pci-0000_00_1f.3-platform-skl_hda_dsp_generic.HiFi__Mic1__source \ sink=VOUT)
_ ヘッドフォンの再生音をVOUTへ接続する
$ HP_ID=$(pactl load-module module-loopback \ source=alsa_output.pci-0000_00_1f.3-platform-skl_hda_dsp_generic.HiFi__Headphones__sink.monitor \ sink=VOUT)
_ ffmpegで録音する
$ ffmpeg -f pulse -i VOUT.monitor output.mp3
_ 仮想デバイスを削除する
$ pactl unload-module "$MIC_ID" $ pactl unload-module "$HP_ID" $ pactl unload-module "$NULL_ID"
又は
$ pactl list short modules ... anip ... 536870916 module-null-sink sink_name=VOUT sink_properties=device.description=VOUT 536870917 module-loopback source=alsa_output.pci-0000_00_1f.3-platform-skl_hda_dsp_generic.HiFi__Headphones__sink.monitor sink=VOUT 536870918 module-loopback source=alsa_input.pci-0000_00_1f.3-platform-skl_hda_dsp_generic.HiFi__Mic1__source sink=VOUT
表示されたIDの降順に削除する。
$ pactl unload-module 536870918 $ pactl unload-module 536870917 $ pactl unload-module 536870916
_ その他
デフォルトのシンク名、ソース名の取得
$ pactl get-default-sink alsa_output.pci-0000_00_1f.3-platform-skl_hda_dsp_generic.HiFi__Headphones__sink
$ pactl get-default-source alsa_input.pci-0000_00_1f.3-platform-skl_hda_dsp_generic.HiFi__Mic1__source
又はpactlの引数の中で@DEFAULT_SINK@や@DEFAULT_SOURCE@のような記述ができる。
.fvwm2rcの設定
# For Pulseaudio
#Key XF86AudioRaiseVolume A N Exec exec sh -c 'index=`pacmd list-sinks | grep "index:" | egrep " \* " | sed -e "s/^.*index: *//"`; pactl set-sink-volume ${index} +3%'
#Key XF86AudioLowerVolume A N Exec exec sh -c 'index=`pacmd list-sinks | grep "index:" | egrep " \* " | sed -e "s/^.*index: *//"`; pactl set-sink-volume ${index} -3%'
#Key XF86AudioMute A N Exec exec sh -c 'index=`pacmd list-sinks | grep "index:" | egrep " \* " | sed -e "s/^.*index: *//"`; pactl set-sink-mute $index toggle'
# For Pipewire
Key XF86AudioRaiseVolume A N Exec exec pactl set-sink-volume @DEFAULT_SINK@ +3%
Key XF86AudioLowerVolume A N Exec exec pactl set-sink-volume @DEFAULT_SINK@ -3%
Key XF86AudioMute A N Exec exec pactl set-sink-mute @DEFAULT_SINK@ toggle
[ツッコミを入れる]