GramophoneはAndroid標準に寄せた端末音楽プレーヤー
Android の標準に厳密に従っている、media3 とマテリアル デザイン ライブラリで構築されたまともな音楽プレーヤーです。
ひと目でわかる
- これは何?
- Media3とMaterial Designを使い、端末内の音楽、同期歌詞、ReplayGain、外部イコライザーを扱うKotlin製プレーヤーです。
- 誰に向いている?
- 端末内の音源を軽い標準的なAndroid UIで聴きたい人に向きます。クラウド音楽サービスの統合や全形式の再生を求める人には候補が限られます。
- 商用利用できる?
- 条件付きでできます。GPL-3.0 はコピーレフトのライセンスで、これを含むソフトウェアを配布する場合、そのソフトウェアのソースコードを同じライセンスで公開する必要があります。配布せず社内で使うだけなら、この義務は生じません。
- 今もメンテナンスされている?
- されています。最後のコミットは 1 日前です。
- 何の言語で書かれている?
- 主に Kotlin です(GitHub の言語統計による)。
回答はプロジェクトの GitHub データ(最終同期:2026年9月14日)と当サイトの分析に基づくもので、法的助言ではありません。
オープンソース詳細解説
MediaStoreを起点にしたライブラリ
GramophoneはMediaStoreから端末内の音楽へアクセスし、検索、フォルダーやファイルシステム別の閲覧、リストとグリッド表示、自然順を含む並べ替えを提供します。プレイリストにも対応します。これは端末のメディアデータベースに依存する設計です。アプリ内に見えない曲がある場合、ファイルの存在だけでなくMediaStoreが登録しているかを分けて調べます。
最小曲長の初期値は60秒で、設定の「三点メニュー > Settings > Behaviour」から0にすると短い曲も表示できます。フォルダーのブラックリストも表示対象を変えます。検証用フォルダーを一つ作り、曲長設定、除外設定、再起動後の再スキャンを順に記録します。READMEにない性能値や互換性は未確認として扱います。検証では対象の版、入力、端末、終了コード、生成物を同じ記録に残し、再現できた範囲だけを採用根拠にします。
歌詞と再生処理の境界
LRC、TTML、SRTの同期歌詞に対応し、単語や音節単位のカラオケ同期も扱います。歌詞ファイルの時刻と曲の長さが合わない場合の補正方法はREADMEで説明されていません。表示できたかだけでなく、曲頭、中間、終端でハイライトが音声に追随するかを形式別に見ます。
再生はAndroidのシステムメディアコーデックを利用してアプリを小さくする方針です。int32のFLACはAndroid 14以降、xHE-AACはAndroid 9以降が目安で、AC-3、E-AC-3、AC-4はライセンス済みデコーダーを持つ端末が必要です。対応表を自分の端末のAndroid版と照合し、無音をアプリの音量設定だけの問題と決めつけません。READMEにない性能値や互換性は未確認として扱います。検証では対象の版、入力、端末、終了コード、生成物を同じ記録に残し、再現できた範囲だけを採用根拠にします。
ALACと外部イコライザー
ALACだけはJava実装の軽量デコーダーを同梱し、システム側にALACデコーダーがなくても再生できるとREADMEにあります。これは形式ごとに経路が違うことを示します。ALAC、FLAC、xHE-AAC、AC-4を同じアルバムへ置き、開始、シーク、停止、再開を個別に確認します。
ReplayGain 2.0を全面的に扱い、システムや第三者のイコライザーアプリも利用できます。ただし、端末メーカーのオーディオ処理や他アプリの音量補正までGramophoneが管理するとは書かれていません。アルバムゲインとトラックゲインを既知のタグで用意し、補正のオンオフ、外部イコライザー有無、ヘッドホン出力を比較します。READMEにない性能値や互換性は未確認として扱います。検証では対象の版、入力、端末、終了コード、生成物を同じ記録に残し、再現できた範囲だけを採用根拠にします。
UIとAndroid標準の選択
Material 3のテーマ、Android 12以降のMonetによる動的プレーヤー色とアイコンを採用します。READMEは軽量、安定、最小主義を掲げますが、対応する最小SDK、端末ごとの描画差、アクセシビリティの詳細までは示していません。画面の印象だけで安定性を断定せず、画面回転、バックグラウンド再生、通知、ライブラリ再読込を同じ端末で確認します。
標準に従うという方針は、独自の音源同期サービスを前提にしないこととも関係します。ファイルとシステム権限が利用条件になるため、権限を拒否した場合の表示、外部ストレージ上の曲、フォルダー名の変更後の追随を確認します。端末の省電力設定が再生を止めないかも別に記録します。READMEにない性能値や互換性は未確認として扱います。検証では対象の版、入力、端末、終了コード、生成物を同じ記録に残し、再現できた範囲だけを採用根拠にします。
入手経路とビルド条件
安定版はGitHub Releases、F-Droid、IzzyOnDroid、Google Playから入手できます。ベータ版はTelegramのチャンネルやチャットで案内されます。配布経路ごとに署名が異なり、READMEはGitHub等とPlay StoreのSHA-256証明書ダイジェストを記載しています。インストール前に配布元、版、署名を照合します。
ソースから作る場合は最新ベータ版Android Studioと高速なネットワーク、Media3などを含むサブモジュールが必要です。`git submodule update --init --recursive`後、ルートの`package.properties`へ`releaseType=SelfBuilt`を書き、署名をAndroid Studioへ登録してビルドします。依存取得の失敗と署名設定の失敗を分けてログに残します。READMEにない性能値や互換性は未確認として扱います。検証では対象の版、入力、端末、終了コード、生成物を同じ記録に残し、再現できた範囲だけを採用根拠にします。
GPL-3.0と常用前の判断
ライセンスはGPL-3.0です。再配布や改変版を組織内で配る場合、LICENSEと配布経路の条件を法務の確認対象にします。READMEのFriends欄にSongSyncへのリンクがありますが、GramophoneがSongSyncの機能を内包するという説明ではありません。連携を期待する場合は別プロジェクトとして評価します。
常用前に確認すべきなのは、音源の検出、対象コーデック、歌詞の時刻、バックグラウンド再生です。特に`.opus`のスキャンはAndroid 10以降で観測されるとREADMEにあり、古いAndroidでは拡張子を`.ogg`へ変える案内があります。元ファイルを変更する前にコピーで試し、タグと再生結果を保存します。READMEにない性能値や互換性は未確認として扱います。検証では対象の版、入力、端末、終了コード、生成物を同じ記録に残し、再現できた範囲だけを採用根拠にします。
編集部の結論
端末内の音源を軽い標準的なAndroid UIで聴きたい人に向きます。クラウド音楽サービスの統合や全形式の再生を求める人には候補が限られます。まずAndroidの対象版でMediaStoreの検出、歌詞同期、再生できない形式、ReplayGainの音量差を手元の音源で確認してから常用端末へ入れてください。
コミュニティノート