本文へスキップ

WaveFlow Server

安定版v2.2.1

あなたの音楽を、どこで聴いても。

あなたのファイル。あなたのサーバー。どのプレーヤーでも。

音楽があるフォルダーを WaveFlow Server に教えるだけ。ライブラリが作られ、ブラウザー、スマートフォン、WaveFlow プレーヤーで、家でも外出先でも再生できます。回線が弱いときは、音質を自動で下げてくれます。

Docker · Windows · macOS · Linux · Raspberry Pi 4 と 5

WaveFlow Server のウェブプレーヤー。左にナビゲーション、上部に聴いた曲から作られたミックス、その下にアルバムの一覧が並んでいる
ウェブプレーヤー。表示しているジャケットは開発者自身のライブラリのもので、イメージとしてのみ使用しています。

できること

  1. ブラウザで聴けるプレーヤー

    アプリのインストールは不要です。サーバーのアドレスを開けば、パソコンでもスマートフォンでも聴けます。HTTPS なら、オフライン用に曲を保存しておくこともできます。

  2. いつものアプリで使えます

    Subsonic に対応した音楽アプリは、そのままつながります。WaveFlow のプレーヤーなら、複数のパソコン間でライブラリと再生履歴がそろいます。

  3. ファイルの本当の中身を見分けます

    すべてのロスレスファイルを測定するので、非可逆圧縮の音源の痕跡がある FLAC は、おそらく非可逆圧縮のファイルとして警告表示されます。

  4. 再スキャンしてもリンクはそのまま

    ライブラリを再スキャンしても、アルバムとアーティストの識別は変わりません。そのため、アプリが持っているリンクはそのまま使えます。

  5. 1 分で動きます

    プログラム 1 つとデータベースファイル 1 つだけ。お使いのパソコンで起動することも、Docker を使って自宅のサーバーで動かし続けることもできます。

  6. あなただけのものです

    音楽ファイルは決して書き換えられません。オンにしない限り、サーバーから外へ出るものはなく、家族それぞれが自分のアカウントを持てます。

現在の状況

2.0 から安定版です。最新バージョンは 2.2.1 で、新しいバージョンも出続けます。確認を許可すれば、新しいバージョンが出たときにサーバーが知らせてくれます。

  • Docker 安定版

    amd64 と arm64 向けのイメージが 1 つ。サーバー、NAS、Raspberry Pi 4 または 5 で動きます。

  • Windows · macOS · Linux 安定版

    お使いのパソコンで展開して起動できるアーカイブ。FFmpeg 入りで、インストールは不要です。

ウェブプレーヤー

ブラウザで聴けるプレーヤー

アプリのインストールは不要です。パソコンやスマートフォンでサーバーのアドレスを開くだけ。アルバム、アーティスト、フォルダ、ジャンル、入力しながらの検索、再生キュー、全画面表示ができる同期歌詞、そして実際に再生した曲から作られるミックスを使えます。

オフライン
選んだ曲を保存しておけば、接続なしでも再生できます。保存は、そのブラウザ内のあなたのアカウント専用です。ブラウザの仕様上、HTTPS で接続しているか、サーバーを動かしているパソコンで開いている場合に限ります。
インストール可能
アプリのようにスマートフォンに追加できます。ロック画面の操作、メディアキー、キーボードショートカットにも対応しています。
14 種類のテーマ
ライトとダーク。部屋の雰囲気や時間帯に合わせて選べます。
9 つの言語
英語、フランス語、ドイツ語、スペイン語、イタリア語、日本語、韓国語、簡体字中国語、繁体字中国語。
ウェブプレーヤーの再生中画面。大きなアルバムカバー、曲名とアーティスト名、その下にストリームの音質が表示されている
再生中の画面。実際に配信されている音質も表示されます

いつものアプリで使えます

WaveFlow Server は、多くの音楽アプリが対応しているオープンなプロトコル、Subsonic と OpenSubsonic に対応しています。アプリにサーバーのアドレス、ユーザー名、アプリ用パスワードを入れるだけ。プラグインなどの追加インストールは要りません。

プロトコル
Subsonic · OpenSubsonic
アドレス
/rest/*たいていのアプリは自動で補ってくれます。サーバーのアドレスを入力してください。
パスワード
アプリにはそれ専用のパスワードを発行します。ブラウザで使うパスワードとは別になっています。
WaveFlow Server で動作を確認したアプリと、確認できた内容
アプリ確認できた動作
SymfoniumAndroidライブラリの閲覧、Opus・MP3・FLAC でのシーク、お気に入り、評価、ブックマーク、歌詞
FeishinWindowsライブラリの閲覧、フォルダ、同期歌詞、ラジオ、プレイリスト
DSubAndroidフォルダ、ポッドキャスト、再生キュー、プレイリスト、共有
JulietiPhoneライブラリの閲覧、トランスコード、再生キュー、プレイリスト

各アプリは手作業で動かし、結果はアプリの画面ではなくサーバー側の記録から確認しています。直近の全項目の確認は 2026年10月28日 に終わっており、2.0.0 より前のものです。そのため、それ以降に追加された機能は、これらのアプリではまだ確認できていないものがあります。

互換性マトリックスを読む

WaveFlow DesktopWindows · macOS · Linux

ネイティブ API を通じて、複数のパソコン間でライブラリと再生履歴をそろえます

ファイルの本当の中身を見分けます

長年かけて集めたライブラリには、思わぬものが混じっているものです。WaveFlow Server はファイルそのものを聴いて調べ、各アプリが扱える音で届けます。

品質ページ。ロスレスファイルを音声から測定し、判定ごとの件数と、各トラックの高音域がどこで途切れるかを表示している
すべてのロスレスファイルを、表示を鵜呑みにせず実測します
  • 偽のロスレスを見つけます

    すべてのロスレスファイルについて、音声を測定します。非可逆圧縮の音源の痕跡がある FLAC は、おそらく非可逆圧縮のファイルとして警告表示されます。ビットの水増しや、より高いサンプルレートに引き上げたアップサンプリングも同様です。

  • 原音のまま、または軽くして

    元のファイルをそのまま再生することも、回線が細いときはサーバーがその場で MP3、Opus、AAC に変換することもできます。バイト範囲を指定してシークするアプリは、エンコード中の変換ファイルではシークに失敗することがあります。その場合は、そのアプリに元のファイルを渡してください。

  • 音量をそろえます

    ReplayGain の情報をすべてのトラックでアプリに渡します。対応していないアプリには、サーバー側で変換後のストリームの音量をそろえることもできます。

あなただけのものです

家に置いたサーバーは、あなたにだけ従うべきです。WaveFlow Server は、最初の起動からそのように作られています。

サーバーが接続しうる先のすべて
  • ファイルはそのままです

    スキャンもタグの編集も、音声ファイルには触れません。見つからなくなったファイルのお気に入り、評価、再生履歴は、ファイルが戻ってくるまで残ります。

  • オンにしない限り、何も外へ出ません

    初期設定のままなら、サーバーが自分から何かを送ることはありません。歌詞、アーティスト画像、スクロブル、更新の確認は、どれもあなたの許可を待ちます。

  • 一人ひとりに自分のアカウント

    各アカウントには、所属しているライブラリだけが見えます。パスワードは Argon2id でハッシュ化され、サインインには総当たり対策の制限があり、一度きりのトークンによって、新しいサーバーを見知らぬ人に乗っ取られることを防ぎます。

  • コマンド 1 つでバックアップ

    コマンド 1 つで、データベースとその鍵をまとめてコピーできます。データベースが変わるアップグレードの前には、オフにしていない限り、サーバーが両方のコピーを自動で作ります。アーティスト画像、キャンバス、ダウンロードしたポッドキャストは、データフォルダー内の別の場所にあります。これらも残すには、フォルダー全体をバックアップしてください。

1 分で動きます

コンテナ 1 つ、データベースファイル 1 つ、鍵ファイル 1 つ。データベースサーバーもキャッシュも要らず、ほかに動かすものはありません。FFmpeg もすでに入っています。

  1. compose.yaml として保存します

    /path/to/music を、音楽が入っているフォルダに置き換えてください。サーバーはそのフォルダを読み取るだけです。

    compose.yaml
    services:
      waveflow:
        image: ghcr.io/instazdll/waveflow-server:2.2.1
        restart: unless-stopped
        ports:
          - "4533:4533"
        environment:
          WAVEFLOW_DATA_DIR: /data
          WAVEFLOW_BIND: 0.0.0.0:4533
        volumes:
          - waveflow-data:/data
          - /path/to/music:/music:ro
    
    volumes:
      waveflow-data:
    
  2. 起動します

    Docker がイメージを取得し、サーバーをバックグラウンドで起動します。

    Terminal
    docker compose up -d
  3. アカウントを作ります

    http://your-host:4533 を開きます。セットアップ画面で管理者アカウントを作成します。サーバーが書き出しておいた、一度きりのトークンの入力を求められます。

    Terminal
    docker compose exec waveflow cat /data/setup-token
  4. 音楽を追加します

    いま作ったアカウントの名前を指定します(ここでは admin)。最初のスキャンは自動で始まります。

    Terminal
    docker compose exec waveflow \
      waveflow-server library add --owner admin --name Music --path /music

イメージについて

ghcr.io/instazdll/waveflow-server

amd64 と arm64 向けに作られているので、64 ビット OS の Raspberry Pi 4 や 5 でも動きます。リリースごとにバージョン名のタグが付き、latest は最新の安定版を指します。同じイメージは Docker Hub にもあります。

  • linux/amd64
  • linux/arm64

外出先から聴く

サーバーは暗号化されていない HTTP で通信するため、信頼できるネットワーク内での利用に適しています。外出先から聴くには、HTTPS 対応のリバースプロキシ経由で公開してください。リポジトリには Caddy を使った設定例があり、証明書は Caddy が自動で取得・更新します。

Caddy の設定

Docker なしで

どのリリースにも、お使いのパソコンで展開して起動できるアーカイブがあります。インストール不要で、FFmpeg も入っていて、ウェブプレーヤーは自動で開きます。初回起動時には Windows と macOS が警告を出します。何をクリックすればよいかは、中の README.txt に書いてあります。

  • Windows · x86_64.zip
  • macOS · Apple silicon.zip
  • macOS · Intel.zip
  • Linux · x86_64.tar.gz
  • Linux · arm64.tar.gz

チェックサムは、同じリリースの SHA256SUMS にあります。

アーカイブをダウンロード