MaiMai Audio Linux 開発開始から20日ほど経過

夏季休暇の暇つぶしで始めた MaiMai Audio Linux の開発だが、20日ほど経過した
当初は、こじんまりとした機能だけを考えていたが、あれもこれもとアイデアが湧いてきて
「ぼくのかんがえたさいきょうのオーディオ リナックス」状態になっている

最初はDirettaをブラウザから簡単に操作できればいいかな、くらいのものだった
それがいつの間にかMUSIC PLAYER、Spotify、各種設定や診断機能が付き……
と、だいぶ話が大きくなってきた

まだ細かなバグ取りやUIの整理、インストール環境での検証などは残っているものの
それでも80%くらいの完成度までは来たとおもう

Spotify公式の「Soloist」を実装

本日の収穫は、Spotify Soloist というソフトウェアが本家Spotifyから出ていたこと
2026年8月に公開されたばかりで、LinuxマシンをSpotify Connectの再生デバイスとして利用するための公式クライアントである

先日、Spotify互換クライアントを使った方式では、こちらのアカウント環境だと再生部分で正常に動作せず
苦肉の策としてWindows側のSpotify音声だけをネットワーク転送し、MaiMai Audio LinuxからDirettaへ出力する方式でSpotify対応をさせていた

これはこれでちゃんと動いていたのだが、Windows側にSenderが必要になるので、できればLinux側だけで完結させたかった

そんなところに公式のSoloistである
これは使わない手はないということで、さっそくMaiMai Audio Linuxへの実装を試みた

soloist

簡単に入りそうに見えて、実際にMaiMai Audio Linuxの再生系へ組み込んでみると色々あった
認証、Spotify Connectへの表示、音声出力経路、サービス化、再起動時の復帰と一つずつ確認していった
バグ取りなどに丸2日ほどかかったが、無事に実装することができた

Spotifyアプリの接続先としてMaiMai Audio Linuxが普通のSpotify Connect機器と同じように表示され
スマホやPC側から選択するだけでそのまま再生できる

sp01sp02

SoloistはSpotify Losslessにも対応しておりPremiumでは最大24bit/44.1kHzまで扱える
実際にMaiMai Audio Linux側でもロスレスで再生できるようになった

これまでの「WindowsのSpotifyを再生 → 音声をキャプチャ → LAN転送 → Linuxで受信」という力技から
Spotify自身の公式Linuxクライアントで直接再生できるようになったのはかなり大きい

遠回りして作った直後に公式からこんなものが出てくるとは思わなかったが
まあ、このあたりも自作ソフトではよくある話だろう

なお現在のSoloistは、配布されているビルドに90日間の有効期限が設定されている
MaiMai Audio Linux側も、Soloistだけ簡単に更新できるような仕組みを考えておいたほうがよさそうだ

HQPlayerのNAAにも対応

Spotifyだけでなく、HQPlayerをネットワーク再生する機能も追加した
Network Audio Adapter(NAA)に対応させ
MaiMai Audio LinuxをHQPlayerのネットワーク出力先として利用できるようにした

NAAは、HQPlayer側で行ったアップサンプリングやフィルター処理などの結果をネットワーク越しに送り
再生側はできるだけ軽い処理だけを担当するという仕組みである
HQPlayerを使っている人にとっては定番の構成だが選択肢として使えるようになった

もともとDirettaを中心に作り始めたLinuxなので、HQPlayerまで載せる予定はまったくなかったのだが
「ネットワークオーディオ用Linux」という括りで考えると、あって困る機能でもない
こうして対応する方式がまた一つ増えた

スペクトラム表示も機能アップ

先日実装したスペクトラム機能も少し機能アップした
最初に作ったものは、昔ながらのスペクトラムアナライザーっぽく緑一色だった
これはこれで悪くなかったのだが、ずっと見ていると少し味気ない

そこで色を変更できるようにしてみた
ただ普通に「RED」「BLUE」「PURPLE」などと名前を付けても面白くないので
まどマギのキャラクターカラーをイメージしたプリセットを作成
プリセット名も、そのままキャラクターの名前にした

madoka

完全に作者の趣味である
オーディオLinuxのスペクトラム表示に、まどかやほむらの名前が並んでいる必要性があるかと言われれば
たぶん無い

単なる飾りとして付けたスペクトラムだったが、現在はMUSIC PLAYERだけではなく各再生系との連動も進めており
思っていたよりちゃんとした機能になってきた

だいぶ「オーディオLinux」らしくなってきた

開発開始からまだ20日ほどだが、当初考えていたものとはだいぶ違う姿になってきた

Direttaの設定や再生だけではなく
ローカル音源、Spotify Connect、HQPlayer NAA、ネットワーク再生、状態表示、診断機能、スペクトラム表示など
普段オーディオPCで使いそうなものを一つのWeb画面から扱える方向へ進んでいる

Linuxなので、本来ならSSHで入ってコマンドを打てば全部できる
ただ、それを毎回やるのが面倒だから作り始めたのがMaiMai Audio Linuxである

Linuxに詳しくなくてもブラウザを開けば使える
一方でDirettaなどの細かな設定はちゃんと触れる
そのあたりのバランスは、最初から変えずに完成まで持っていきたい

残り20%が一番長そうな気もするが
とりあえず夏季休暇の暇つぶしとして始めたものにしては、ずいぶん大掛かりなものになってしまった
もう少しで一通り形になりそうである