fabienmillet/WiiFin: Jellyfin Client for Wii · GitHub

💥 Check out this trending post from Hacker News 📖

📂 **Category**:

✅ **What You’ll Learn**:

WiiFin logo
Jellyfin client for the Nintendo Wii

English
 
Français
 
Deutsch
 
Español
 
Italiano


WiiFin is an experimental homebrew client for Jellyfin, built specifically for the Nintendo Wii.
It provides a lightweight, console-friendly media browsing and playback experience, written in C++ using GRRLIB and MPlayer CE.


🚧 Experimental – functional but still under active development. Expect rough edges on real hardware.

  • Authentication: login with username/password or via QuickConnect (approve on another device)
  • Saved profiles: multiple accounts stored securely (access token only, no password stored)
  • Library browsing: movies, TV shows, music libraries with cover art loaded from the server
  • Detail view: synopsis, rating, genres, cast, director, audio/subtitle track selection
  • Continue Watching and Next Up rows
  • TV shows: season and episode navigation
  • Video playback: server-side transcoding streamed through the integrated MPlayer CE engine
  • Music playback: audio libraries, album/track navigation
  • Player overlay: seek bar, volume control, next/prev episode, audio & subtitle track switching, intro skip
  • Playback reporting: progress sent back to the Jellyfin server (resume where you left off)
  • HTTPS: TLS connections via mbedTLS (self-signed certificates supported)
  • Wiimote IR pointer and virtual on-screen keyboard
  • Background music on menus
  • Ships as a ready-to-use .dol and installable .wad (Wii / vWii)

⚠️ Known limitations:

  • Direct-play is not supported; all video is transcoded by the server
  • No 5.1 multi-channel audio (stereo only via transcoding)
  • Subtitle rendering relies on the server embedding them into the video stream

  • devkitPro with devkitPPC, libogc, and wii-dev portlibs
  • Graphics: GRRLIB, libpngu, freetype, libjpeg
  • mbedTLS (bundled under libs/, cross-compiled automatically by the CI)
  • Optional: MPlayer CE compiled as libmplayer.a — required for video playback. See MPLAYER_CE_BUILD.md for instructions. Without it, WiiFin still compiles but video playback is unavailable.

On Dolphin Emulator:

dolphin-emu -e WiiFin.dol

On real Wii hardware: copy WiiFin.dol to SD:/apps/WiiFin/boot.dol, or install WiiFin.wad using a WAD manager (works on vWii too).


WiiFin/
├── source/
│   ├── core/        # App lifecycle, background music, utilities
│   ├── input/       # Wiimote + USB keyboard input
│   ├── jellyfin/    # Jellyfin HTTP API client (HTTPS via mbedTLS)
│   ├── player/      # MPlayer CE integration, player overlay HUD
│   └── ui/          # All views: Connect, Library, Profile, Settings
├── data/            # PNG/TTF graphical assets
├── libs/            # Bundled mbedTLS
├── tools/           # WAD packager, banner generator
├── Makefile         # devkitPro-compatible build script
└── apps/WiiFin/     # Homebrew Channel metadata


WiiFin Menu Screenshot
WiiFin running in Dolphin Emulator


WiiFin is open to pull requests, bug reports, and suggestions.

Discord Badge


This project is licensed under the GPLv3.
See the LICENSE file for more details.

🔥 **What’s your take?**
Share your thoughts in the comments below!

#️⃣ **#fabienmilletWiiFin #Jellyfin #Client #Wii #GitHub**

🕒 **Posted on**: 1776135093

🌟 **Want more?** Click here for more info! 🌟

By

Leave a Reply

Your email address will not be published. Required fields are marked *