LumeRecorder

自分のサーバーでライブ TV を録画

LumeRecorder は、自宅で動かす小さな無料のオープンソース DVR サーバーです。何を録画するかは Lume が伝え、録画はサーバーが単独で行います。Apple デバイスがすべてスリープ中でも大丈夫。録画はすべてのデバイスの Lume で再生でき、録画中の番組も再生できます。

録画は Lume Pro の機能です。サーバー自体は無料です。

必要なもの

  1. ステップ 1

    サーバーを起動

    コンテナの実行方法を選んでください。どの方法でも録画と設定は隣のデータフォルダに保存されるので、アップデート後も残ります。

    これを新しいフォルダに docker-compose.yml として保存し、そのフォルダから起動します。ホストネットワークを使うと、Lume がサーバーを自動で見つけます。

    docker-compose.yml
    services:
      lume-recorder:
        image: ghcr.io/bilipp/lumerecorder:latest
        container_name: lume-recorder
        restart: unless-stopped
        network_mode: host
        volumes:
          - ./data:/data
    docker compose up -d

    Synology、QNAP、Unraid、TrueNAS では、同じファイルをシステムの Docker または Container Manager に新しいプロジェクトとして貼り付けられます。

    コンテナを使わずに動かしたい場合は、Swift 6 と ffmpeg が必要です。ソースからのビルドをご覧ください。

  2. ステップ 2

    ペアリングコードを取得

    サーバーは起動時に 6 桁のペアリングコードをログに出力し、以後 10 分ごとに新しいコードを出力します。現在のコードはいつでも次のコマンドで表示できます:

    docker exec lume-recorder lume-recorder pair

    Apple のツールでは container exec lume-recorder lume-recorder pair を実行します。NAS ではコンテナのログ画面にもコードが表示されます。

  3. ステップ 3

    Lume とペアリング

    1. Lume で 設定 › ライブTV › 録画サーバー を開きます。
    2. ペアリングの前に を読み、了解しました をタップします。
    3. このネットワーク上のサーバー からサーバーを選びます。表示されない場合は アドレスを手動で入力 をタップし、サーバーの IP アドレス(例:192.168.1.20)を入力して 接続 をタップします。ポートを指定しなければ 8090 が使われます。
    4. サーバーの ペアリングコード を入力し、ペアリング をタップします。

    ペアリングは一度だけ。iCloud を通じてほかの Apple デバイスにも同期されます。

  4. ステップ 4

    録画する

    • 今すぐ録画: チャンネルのメニューまたはプレーヤーで 録画 を選びます。
    • あとで録画: 番組表 で番組を開き、録画を予約 を選びます。
    • 視聴: ライブ TV のツールバー、または 設定 › ライブTV から 録画 を開きます。Apple TV ではライブ TV のサイドバーにも表示できます。

設定

docker-compose.yml の environment に指定して変更します(Apple のツールでは -e NAME=value)。

変数デフォルト内容
SERVER_NAMEホスト名Lume に表示されるサーバー名。
PORT8090サーバーが待ち受けるポート。
MAX_CONCURRENT4同時に実行できる録画の数。録画ごとにプロバイダへの接続を 1 つ使います。
MIN_FREE_GB2空き容量がこの GB 数を下回ると、録画は開始されません。
BONJOUR10 で自動検出をオフにします。自動検出が使えない環境向けです。
TZUTCログのタイムスタンプのタイムゾーン(例:Asia/Tokyo)。

変更後は docker compose up -d をもう一度実行してください。

トラブルシューティング

Lume がサーバーを見つけられない

Lume がローカルネットワークを使えるか確認してください(iPhone と iPad では 設定 › プライバシーとセキュリティ › ローカルネットワーク)。自動検出は Linux のホストネットワークでのみ機能します。Docker Desktop、Apple のツール、ブリッジネットワーク、別々の VLAN の場合は、アドレスを手動で入力 をタップしてマシンの IP アドレスを入力してください。

NAS で独自の Bonjour サービスがすでに動いている

1 台のマシンで 2 つの検出サービスが動くと干渉し合います。BONJOUR を 0 にして、アドレスでサーバーを追加してください。NAS 自身のサービスで告知する方法は LumeRecorder の README に記載されています。

ペアリングコードが受け付けられない

コードは 10 分ごとに変わるので、最新のコードを取得してください。5 回間違えると、ペアリングは 1 分間ロックされます。

視聴中に録画が失敗する

サーバーはプロバイダに独自の接続を開きます。契約で同時接続が 1 つに限られている場合、視聴と録画を同時に行うと失敗することがあります。プロバイダで接続数の上限を増やすか、重ならないようにしてください。

容量不足や録画数の上限で録画が失敗した

ディスクの空き容量を増やすか MIN_FREE_GB を下げてください。プロバイダが複数の接続を許可していれば、MAX_CONCURRENT を上げられます。

サーバーが再起動したらどうなる?

実行中だった録画は、サーバーが復帰すると短い途切れを挟んで再開します。停止中に時刻を過ぎた予約は失敗として記録されます。

アップデート

docker-compose.yml のあるフォルダで新しいイメージを取得し、再起動します。録画とペアリングはデータフォルダに残ります。

docker compose pull && docker compose up -d

すべてのオプション、HTTP API、ソースコードは GitHub の LumeRecorder リポジトリ にあります。

← Lume に戻る