11 ポイント 投稿者 GN⁺ 2026-03-19 | 1件のコメント | WhatsAppで共有
  • 個人の音楽ファイルをカラオケ形式に変換するオープンソースアプリケーションで、音声分離・歌詞同期・リアルタイム採点機能を提供
  • UVR Karaoke モデルまたはDemucsを使ってボーカルと伴奏を分離し、WhisperXで単語単位の歌詞を自動書き起こし
  • マイク入力ベースのピッチ採点星評価・曲別記録機能により、ゲームのように歌唱力を測定
  • 複数のユーザープロフィール動画ファイルの背景再生GPUシェーダーによる動的背景ゲームパッド操作など多様なインタラクションをサポート
  • Linux, macOS, Windowsで動作し、インストール不要の単一実行ファイルで動く自己完結型構成を備える

主な機能

  • **ボーカル分離(Stem separation)**機能は、UVR Karaoke モデルまたは Demucs を使って音声と伴奏を分離
    • ガイドボーカルの音量を調整可能
  • **単語単位の歌詞(Word-level lyrics)**機能は、WhisperX により音声に合わせて各単語を整列
    • LRCLIB に既存の歌詞がある場合はそれを優先して使用
  • **ピッチ採点(Pitch scoring)**機能は、マイクで歌うとリアルタイムでスコアを計算
    • 星評価と曲ごとのスコアボードで進捗を追跡

ユーザーとインターフェース

  • **プレイヤープロフィール(Player profiles)**機能により、複数ユーザーがそれぞれのスコア記録を維持
    • 歌い手を切り替えてもデータ損失なし
  • **動画ファイル対応(Video file support)**機能では、.mp4 や .mkv ファイルを読み込むと元の映像を背景として再生
    • 音声から自動でボーカルを分離
  • **動的背景(Dynamic backgrounds)**機能は、GPUシェーダー効果(プラズマ、オーロラ、星雲など)、Pixabay の動画ループ、または元の動画を背景として使用
  • **ゲームパッド(Gamepad)**対応により、メニュー操作、曲選択、再生制御をコントローラーで実行

動作の仕組み

  • Separate 段階では、UVR Karaoke または Demucs がトラックをボーカルと伴奏に分離
    • 動画ファイルから音声を自動抽出
  • Transcribe 段階では、LRCLIB から同期済み歌詞を検索し、ない場合は WhisperX で単語単位の書き起こしを実行
  • Play 段階では、伴奏を再生しながら、ハイライト表示された歌詞、ピッチ採点、動的背景、ゲームパッド入力をあわせて表示

プラットフォームと配布

  • Linux(x86_64, aarch64)macOS(ARM, Intel)、**Windows(x86_64)**で実行可能
  • CUDAまたはMetalによるGPUアクセラレーションをサポートし、非対応環境ではCPUで動作
  • ffmpeg, Python, PyTorch, ML モデルは初回起動時に自動でブートストラップされ、別途インストール不要な単一バイナリ構成

更新通知

  • 新規リリースやアップデート情報をメールで受け取ることができ、不要であればいつでも購読解除可能

1件のコメント

 
GN⁺ 2026-03-19
Hacker Newsのコメント
  • さっきソースを取得してビルドして実行してみたが、初回起動した途端にインターネットからバイナリのダウンロードを始めて驚いた
    すでに FFMpeg と Python はインストールされているのに、新たにインストールしようとしていた
    アプリがインストール済みの Python を lib フォルダ内で探していたせいで実行に失敗した。こういう基本的な不具合がリリースコードに含まれているのは驚きだ
    さらに tarball のビルドスクリプトを実行したらDocker コンテナをインストールしようとして戸惑った。デスクトップアプリをビルドするのに Docker とは、理解できない

    • 多くのアプリは独自のPython ランタイムを同梱している。Blender、Houdini、Bitwig、Krita なども同様だ
      Krita はビルド時にはシステム Python を使うが、成果物には独自の Python を含めている
      ただ、このアプリはダウンロードするよりバンドルしたほうがよかった気がする
      セキュリティ上の問題は npm や pip にも似たようなリスクがあるので、完全な例外ではない
    • 「なぜこんな作りにしたのか?」という問いの答えは、たぶん「自分のマシンでは動いた」だと思う
    • Python のインストール生態系はとにかく混沌としている。OS ごとにインストール先や方法が違い、Conda や各種パッケージマネージャも入り混じっている
      だから、開発者がアプリの依存先として頼れる単一の環境を作りたかった気持ちは理解できる
    • 最近はこういうふうにシステムへ無断インストールを試みるアプリが増えている
      つい最近も Python アプリを実行したら Node/NPM をインストールしようとしてきて、かなり驚いた
      自分のコンピュータは自分の作業空間なのだから、アプリが勝手にインストールするのはサプライチェーン攻撃のリスクでもあり、ユーザーに対して失礼な行為だと思う
    • これは結局、静的リンク vs 動的リンクvim vs emacs のような終わりのない論争の始まりなのかもしれない
  • 私が作ったNightingaleは、音楽フォルダを指定すると楽曲を自動でカラオケトラックに変換してくれるアプリだ
    ボーカル分離、歌詞同期、ピッチ採点、ゲームパッド対応、GPU アクセラレーションなどを備えている
    すべての処理はローカルで行われ、アカウントやサブスクリプション、テレメトリもない
    初回起動時に必要なML モデルと Python 環境を自動で設定する
    Rust と Bevy エンジンで書かれており、完全なオープンソースプロジェクトだ

    • 昔、信号処理を勉強していたが、以前はトラック分離は難しかった
      今はDemucsのようなニューラルネットを使って解決しているのを見て興味深かった
      純粋に数学的なアプローチでも競争できるのか気になる
    • B.E.D - Walk Away を試したが、30秒以降で歌詞同期がずれていた
      再生中に前後へスキップする機能が必要だし、句読点の処理や結果の編集機能があるとよいと思う
      それでも FOSS として公開してくれてありがとう
    • 本当に素晴らしいプロジェクトだ。FOSS 側ではカラオケアプリはほとんどなかったので、これは大きな前進だ
      CUDA の最低要件と、AMD/Intel の iGPU アクセラレーション対応予定があるのか気になる
      家族に使ってもらうのを楽しみにしている
    • UltraSinger との違いが気になる。品質比較をした人がいるか知りたい
    • WhisperX が**中国語(漢字)**の歌詞もきちんと処理できるのか気になる
    • 日本語の曲を試したが、歌詞のアラインメントがまったくできなかった
      コードでは line_text.split() で単語を分割しているが、日本語には空白がないので動かない
      fugashi のような形態素解析器を使う必要がありそうだ
  • 昔の Firefox ベースのNightingale メディアプレーヤーを思い出した
    iTunes/Winamp の代替として開発されていたが、もう 10 年以上活動がない
    getnightingale.com で当時の痕跡が見られる

    • それは Songbird の後継プロジェクトだったと記憶している
  • 過去に似たようなピッチトラッキングのプロジェクトを作ったことがある
    現在のアプリのピッチラインが次の音高を表示する機能なのか気になる

    • 現状は単純なピッチ採点機能だけで、次の音高予測はまだ実装されていない
      良い機能提案として受け取っておく
  • ローカル実行、オープンソース、情熱主導のプロジェクトで、本当に感動的だ
    こういうニュースは人類愛を取り戻させてくれる

  • コミット履歴を見ると開発速度が非常に速い
    おそらくAI 支援開発を活用したのだろう
    「AI が開発者を置き換える」という話とは逆に、AI が小規模プロジェクトの実現可能性を高めてくれたのだと思う

    • 似たようなソフトウェアは Windows 95 時代にもあった。Pentium 2 でも動いていた
  • アプリが正確に何をするのかわからず、歌詞を消すのだと思っていた
    いくつかの曲を試したが、ボーカルがそのまま聞こえる。どうやってボーカル除去を調整するのかわからない

  • 本当に素晴らしいプロジェクトだ。
    1 台のデバイスで楽曲を処理し、別のデバイスで再生できるのか、あるいはサーバー/クライアントモードで動作できるのか気になる

    • 関連する回答は Issue #7 にある
  • 音楽家として、バンド演奏中に歌詞を追いかけて表示してくれるアプリがあるとよいと思っている
    今はスマホをマイクスタンドに固定しているが、すぐに位置を見失ってしまう

    • その通り、こうしたリアルタイム同期は Spotify ですらよく外す