Web画面を使用したブラウジングの概要です。
Subsonicの使い方を解説しているサイトは、ほとんどインストールに関する情報のみです。これはSubsonicの使い方が簡単で、インストールさえすれば使用方法は大体感覚で理解できる仕組みをしているためです。この記事ではSonic系サーバのGUIの特徴やそれらとJpsonicの違いについておおまかな概要をまとめています。
フォルダ vs タグ
楽曲管理ソフトにも似たように「フォルダ」「タグ」といったようにブラウジングの方式で分類されることがあります。ユーザが何を頼りに曲を探すかが決定づけられるため、使用感がかなり異なります。
- フォルダベースのアプリではエクスプローラのようなブラウジングが提供されます
- タグベースのアプリでは一般に「アーティスト」「アルバム」「曲」といった分類がされます
- 両方の機能を備えるアプリもあります。大量の楽曲を管理する場合にはどちらも使えるアプリを選ぶと便利です
楽曲管理で「フォルダ」か「タグ」はどちらが上位というものではありません。メリットとデメリットが宿命的に存在します。
分類 | メリット | デメリット |
---|---|---|
ファイル構造 による楽曲管理 |
ツリーをたどれば探せないものはない 全ての基礎で、PC初心者でもわかりやすい |
使用不可能な文字がありOSに依存する 名称を完全再現できないので楽曲管理に本来向かない 過度にルールが存在する場合、必ず独自性が強くなる |
タグ による楽曲管理 |
使用不可能な文字が少ない 分類の自由度が高く高レベルな管理が可能 |
ユーザの使用感はデータ精度とGUIに強依存 タグが欠損している場合探せない 解析が必要なため初期読み込みが遅い |
卵が先か鶏が先かという問題ではなく、ソフトウェアの設計としてはファイル構造の解析が必須です。そのため特に大量管理を目的とした音楽アプリでは、フォルダベースでタグも併用というブラウジングが提供されるのが一般的です。タグ解析前、あるいはタグに不備がある場合でもブラウジングが可能であり、最も合理的な設計になるためです。
Sonic系サーバのブラウジング
Subsonic系サーバのブラウジングには、以下のような共通の特徴があります。
- ライブラリはミュージックフォルダと分類の方法にあるような階層管理を前提としています。この階層管理はSubsonic系サーバ特有というわけではなく、楽曲ファイルを大規模管理する際の世界的慣例でもあります
- ミュージックフォルダ直下一階層目、つまり「アーティスト」の階層の索引を自動作成します。Jpsonicでは日本語はもちろん、国連公用語やトルコ語も処理可能なよう国際化対応が行われています
- 複数のミュージックフォルダを複数使用可能です。索引では統合表示も音楽ディレクトリ別に表示することも可能です
Webツールの場合
派生プロダクトも含めSubsonicブランドが長寿なのは、万単位のライブラリではこのようなブラウジングが速くて確実なためです。
Subsonicアプリの場合
Subsonic系サーバは内部でファイル構造とタグの両方のデータツリーを管理しています。API経由でどちらも利用が可能です。そのためどちらの方式でブラウジングが提供されるかはアプリの仕様によります。
UPnP/DLNAアプリの場合
JpsonicのUPnPのブラウジング項目はユーザが任意で選ぶ選択式になっています。
そのためUPnPアプリではフォルダもタグも利用可能です。アプリ毎の機能差についてはUPnPアプリを選ぶという記事に詳細があります。
Jpsonicを外部公開する際はSubsonicアプリを利用するのがお手軽です。この場合Jpsonicを宅内/宅外(VPS)のどちらに配備していても使用可能です。
一方UPnPは原則宅内使用に限られます。ただし手間をいとわなければBubbleUPnP Server経由で外部公開することも可能です。限定的なセットアップになりますが、宅外でBubbleUPnPを利用したブラウジングも実現可能ということです。
Webデザインの変更
v109.5.0において、Webページ全般の改善が行われました。
UPnPアプリを選ぶにも記載があるのですが、ブラウザのプレイヤも数あるアプリの中の一つ、簡易アプリという位置づけです。
ブラウザアプリは汎用性が利点です。一方でSNSアプリが一時期こぞってHTML化に傾倒し、その後ネイティブアプリに回帰したのは記憶に新しいです。ブラウザの処理は非効率でありデメリットが多いためです。
重要機能にデバイス操作を伴うことが多い音楽プレイヤでは、HTML化のデメリットはSNSアプリ以上に顕著になります。使用電力や通信量を問わない、キャッシュなし、フォーマット限定、出力デバイスの制御なし等、ありとあらゆる制約が生まれます。つまりどんなにがんばっても簡易アプリしかつくれません。
そのためJpsonicはUPnPアプリのように、既存の資産を生かした拡張がより重視されています。非機能要件や不具合改修を除き、ブラウザ以外のアプリにも恩恵があるコア機能の改善が常に優先されています。
ご要望、プルリクについて
将来的に全くブラウザアプリを更新しないというわけではありません。
- ご要望というのは特に受け付けていません。プルリクは受け付けます。アイデアだけというのは不要です
- 唯一例外としてスクリーンリーダを実使用している方の御意見は承ります
- 不具合修正も歓迎です
- jQueryやめて全部バニラに変更する、等の部分改善もOKです。インパクトが大きそうであれば事前にご相談ください
ブラウザアプリがネイティブアプリに優位である点を挙げるとすれば、マウスだけで操作可能なものが作れる、キーボードだけで操作可能なものが作れる、スクリーンリーダと親和性が高い、このあたりだと思います。その路線で行くと見た目は恐ろしくシンプルになるのではないかと思います。そのような高度なデザインで高みを目指せる方には、是非ご助力いただきたいです。
小さい変更を大人数で累積させればいずれ良いものができる、という楽観論には後ろ向きです。整合性の取れないキメラになりメンテ負荷が限界まで上がったプロダクトはたくさんあります。この程度の画面数であれば単騎で全部解決できるよ、というくらいキャパのある方の方がイノベーションを起こしやすいのではないかと思います。
UXとはみんなでコミュニケーションして最善を生み出すものである! 友情! 努力! 勝利! 的な同調圧力的風潮もありますが。
オープンソースの場合つまり誰が作るんだよ、になるので実行力のない人同士のブレインストームはロスしか生みません。
更新履歴
この記事を書き換えたときに以下に追記します。
- v111.0.0
- 「画面の表示仕様の概要(v105.1.0)」と「画面の仕様 (v109.5.0)」を併合し、記事内容を圧縮
コメントはまだありません