概要
WiiFin はNintendo Wii向けの Jellyfinクライアント で、軽量かつ家庭用ゲーム機に最適化されたメディア体験を提供。 C++ でGRRLIBとMPlayer CEを利用し開発。 実験的段階だが、認証やライブラリ閲覧、再生など主要機能が動作。 ビルドや導入方法、既知の制限事項も明記。 オープンソースで GPLv3ライセンス 下に公開。
WiiFin概要
- Nintendo Wii専用の Jellyfinクライアント
- C++ で開発、 GRRLIB と MPlayer CE を利用
- 軽量設計、Wiiリモコンや仮想キーボード対応
- オープンソース、GPLv3ライセンス
- .dol形式と.wad形式で提供、vWiiにも対応
機能一覧
- 認証機能 :ユーザー名/パスワード、QuickConnect(別端末で承認)
- プロフィール保存 :複数アカウント、アクセストークンのみ安全保存
- ライブラリ閲覧 :映画、TV、音楽。カバーアート表示
- 詳細表示 :あらすじ、評価、ジャンル、出演者、監督、音声/字幕選択
- 視聴継続・Next Up :途中再生・次エピソード表示
- TV番組ナビゲーション :シーズン・エピソード移動
- ビデオ再生 :サーバ側トランスコード、MPlayer CE統合
- 音楽再生 :アルバム・トラック単位で操作
- プレイヤーオーバーレイ :シークバー、音量、エピソード移動、音声・字幕切替、イントロスキップ
- 再生レポート :進捗をJellyfinサーバに送信、レジューム可能
- HTTPS対応 :mbedTLS利用、自己署名証明書も可
- WiiリモコンIRポインタ、オンスクリーンキーボード
- メニューBGM :バックグラウンド再生
既知の制限事項
- Direct-play非対応 :全動画はサーバでトランスコード
- 5.1chオーディオ非対応 :ステレオのみ
- 字幕はサーバ側で映像に埋め込む必要
ビルド・導入手順
- 必須ツール :devkitPro(devkitPPC, libogc, wii-dev portlibs)
- グラフィック:GRRLIB, libpngu, freetype, libjpeg
- mbedTLS(libs/内に同梱、自動クロスコンパイル)
- MPlayer CE(libmplayer.aとしてビルド、動画再生に必須。詳細はMPLAYER_CE_BUILD.md参照)
- ビルド方法
- ./build.shを実行
- 実行方法
- Dolphin Emulator:dolphin-emu -e WiiFin.dol
- 実機Wii:SD:/apps/WiiFin/boot.dolにコピー、またはWiiFin.wadをWADマネージャーでインストール
プロジェクト構成
- WiiFin/
- source/
- core/:アプリライフサイクル、BGM、ユーティリティ
- input/:Wiiリモコン・USBキーボード入力
- jellyfin/:Jellyfin HTTP APIクライアント(HTTPS対応)
- player/:MPlayer CE統合、HUD
- ui/:各画面(接続、ライブラリ、プロフィール、設定)
- data/:PNG・TTFグラフィック素材
- libs/:mbedTLS同梱
- tools/:WADパッケージャー、バナー生成
- Makefile:devkitPro対応ビルドスクリプト
- apps/WiiFin/:Homebrew Channelメタデータ
- source/
今後のロードマップ
- 年・ジャンル・評価でのソート/フィルタ
- Wiiからのお気に入り登録
- UIカラーテーマの複数化
コントリビューション・ライセンス
- Pull Request、バグ報告、提案 歓迎
- 貢献ガイドライン、バグ報告/機能要望テンプレートあり
- GPLv3ライセンス。詳細はLICENSE参照