- 2022-02-22 (Tue) 07:22
- 一般 ソフトウェア ( Linux/coLinux )
今まで学会タイマーを Zoom に流し込むのは Win + OBS でやってたのだけど,今日は Win マシンが足りなかったので Ubuntu で用意してみた.
とりま OBS Studio と仮想カメラ用のカーネルモジュールを入れる:
sudo apt-get install ffmpeg sudo add-apt-repository ppa:obsproject/obs-studio sudo apt update && sudo apt install obs-studio sudo apt install v4l2loopback-dkms
次に PulseAudio で仮想オーディオ配線.テキトウに virtmic という名前の null sink を作ってみて,あとで Zoom に入力デバイスとして使えるようにその null sink の monitor を source に remap しとく(Zoom が monitor を入力として拾ってくれないので):
pacmd load-module module-null-sink sink_name=virtmic sink_properties=device.description="virtmic" pactl load-module module-remap-source master=virtmic.monitor source_name=virtmic_monitor source_properties=device.description="virtmic_monitor"
そしてブラウザの音出力をこの null sink に入れたいので,ブラウザで音出した状態で pavucontrol を起動して出力デバイスを virtmic にする:
sudo apt install pavucontrol pavucontrol &
音量調整も pavucontrol でやってしまうので良いっぽい.
あとは OBS Studio でウインドウキャプチャ(xcomposite)して仮想カメラで流して Zoom で拾う.Chrome だと chrome://settings/appearance で "Use system title bar and borders" をやっとかないとキャプチャできない罠にハマった(画面全体のキャプチャだとこれなしでも拾えたけど).
なお,タイマーアプリの音を自分のスピーカーにも流したいとかなら,combined sink を作ってブラウザを出力をそこに入れて分岐させる(alsa_output.pci-0000_04_00.1.hdmi-stereo のところは pacmd list-sinks で出てくるスピーカーの sink の name で):
pacmd load-module module-combine-sink sink_name=virtmic_combined slaves=virtmic,alsa_output.pci-0000_04_00.1.hdmi-stereo
閑話休題.
これでタイムキーパーが用意できたぜと思って使ってたら,Zoom 自体が落ちやがるというオチが待っていた…… 残念.仕事にならん.
同じネットワークにつなげてたメイン PC(Win)の Zoom も同時に落ちたし,DNS の解決も出来なくなってたので,たぶんネットワークがちょっと死んでたっぽい.でもその程度で落ちないで欲しい気もする.ハートビートが途切れたからミーティングが終了したという判定だったりしたのだろうか? でも自分がホストだったんだよね…… 謎.
- Newer: ことはじめ