JACKで自動的に接続するツールをGo言語で作ってみた
JACKは色々なことができて便利なのですが、PulseAudioと比べると準備に色々と手間がかかって面倒なことがあります。
面倒なことをできるだけ減らしたいので、まずは新たなポートが見つかるとjack_mixerへ自動的に接続してくれるツールを作ってみました。
audio-tools/main.go at master · ohac/audio-tools · GitHub
まだ、マッチングの処理が賢くないので、改善していく必要がありますが、とりあえずはメトロノームのjack_metro --bpm 90を立ち上げると自動でjack_mixer:metro(モノラルチャンネル)につながるところまではできました。
WindowsでJACKを使っている人はあまりいないと思いますが、これはLinuxでしか動作確認していません。
ハマったところはコールバック内でconnectはできないことと、chanがうまく使えなかったところです。 とりあえず1秒間隔のポーリングにしていますが、シングルタスク用のキューみたいなやつに置き換えたいです。