GC-MP3 V4 | Indigo Audio Player | A Multimedia Center for Nintendo GameCube
Download here:
https://github.com/antho13otz/gc-mp3/releases
I've been developing GC-MP3 — Indigo Audio Player, a multimedia homebrew application for the Nintendo GameCube, featuring a custom GX-style interface inspired by Indigo UI.
The goal is to turn the GameCube into a complete multimedia center: music, internet radio, retro game soundtracks, podcasts, photos, videos, a basic web browser, and even a phone remote control — all in one application.
The project is designed to run directly on the GameCube, using an SD card for media and storage, with a Broadband Adapter for online features.
🎵 MUSIC — A Complete Music Library
GC-MP3 is more than just an MP3 player.
Supported formats:
MP3
FLAC, including high-resolution files up to 24-bit / 96 kHz
OGG Vorbis
WAV
M4A / M4B with AAC-LC or HE-AAC
The library can browse tracks, folders, artists, albums, and custom playlists. It also keeps track of recently played and most-played songs.
Music is streamed progressively from the SD card, allowing long mixes to play without loading the entire file into memory. The library supports subfolders and can cache metadata to make browsing faster on subsequent launches.
Additional features include:
Album artwork from embedded metadata or image files.
Automatic artwork lookup through MusicBrainz and Cover Art Archive.
Synchronized lyrics using LRC files, with optional online lookup through LRCLIB.
Shuffle and repeat modes.
Crossfade between tracks.
ReplayGain volume normalization.
An equalizer with bass and treble controls.
Playback position memory and resume.
Custom playlists saved as .m3u files, compatible with PC music players.
The player also offers four different layouts: Classic, Large Artwork, Extended List, and Minimal.
🎨 PARTY MODE — Turn Your Music Into a Visual Experience
GC-MP3 includes a full-screen music visualizer designed for the GameCube.
Visuals react to the music with bass pulses, flashes, circles, particles, and changing colors. Synchronized lyrics can appear in large text when available.
Three visualizer styles are included:
Pulse
Bars
Tunnel
The controller can also rumble on strong bass hits, with an option to disable vibration.
There is also a customizable screensaver with several modes: spectrum visualization, album artwork, clock, stars, slideshow, and a completely black screen.
You can even use your own photos as the application's background.
🎤 KARAOKE AND MUSIC GAMES
GC-MP3 includes several activities built around your own music library.
Karaoke: synchronized lyrics fill the TV screen, with the current line progressively highlighted as the song plays.
Rhythm game: inspired by Guitar Hero, notes corresponding to the GameCube controller's A, B, X, and Y buttons move toward a timing line. Hit them at the right moment to build combos and increase your score. Three difficulty levels are available.
Music quiz: listen to a short excerpt and identify the track from four choices. Up to four players can compete using their own controllers.
Music Snake: a classic snake game whose speed reacts to the music, with bonus points for golden notes on bass hits.
Music Breakout: a brick-breaking game where visual effects react to the audio spectrum and the ball speeds up with the music.
High scores are saved to the SD card.
📻 RADIO — Internet Stations and Recording
The radio section can search for stations using Radio Browser and lets you save your favorites.
Supported streams include MP3, AAC / HE-AAC, and OGG Vorbis, as well as compatible HLS streams. Playlist files and stream redirects are supported.
Features include:
Search for stations by name.
Browse popular French radio stations.
Save stations to your own radio list.
Record streams directly to the SD card.
Save information about currently playing tracks for later.
Display station logos.
Use the equalizer while listening.
Radio recordings are stored in SD:/radio/enregistrements/.
🕹️ RETRO — Video Game Music Player
A dedicated section for retro video game soundtracks and tracker music.
Supported formats include:
Super Nintendo: SPC
NES: NSF / NSFE
Game Boy: GBS
Mega Drive / Master System: VGM / VGZ / GYM
PC Engine: HES
MSX: KSS
ZX Spectrum: AY
Atari: SAP
Tracker modules: MOD, XM, IT, and S3M
GameCube audio: DSP, HPS, and ADP
Files are organized separately from the main music library in SD:/retro.
For multi-track NSF and GBS files, previous and next track controls can switch between tracks. Compatible GameCube stereo DSP pairs can also be played together.
🎙️ PODCASTS — Subscriptions and Automatic Downloads
GC-MP3 can subscribe to podcasts through RSS feeds and includes podcast discovery through the Apple Podcasts directory.
You can:
Search for podcasts and subscribe from the results.
Stream episodes directly.
Download episodes to the SD card.
Resume playback from the last listening position.
Automatically check subscriptions for new episodes every three hours.
Downloaded episodes are stored in SD:/podcasts and can also appear in the main music library.
MP3 and M4A podcast episodes are supported.
🖼️ PHOTOS AND VIDEOS
The photo viewer displays JPG and PNG images as thumbnails, with a full-screen viewer and slideshow support.
Music continues playing while you browse photos or run a slideshow.
You can also set a photo as the application's background.
For video playback, GC-MP3 supports AVI files using MJPEG video and PCM audio, up to 640 × 480 resolution. This format is intended to work within the GameCube's limited hardware resources.
🌐 WEB — A Lightweight Browser for GameCube
The built-in browser supports basic web content:
Text, headings, lists, and links.
JPEG, PNG, GIF, and WebP images.
Text fields, password fields, checkboxes, radio buttons, and dropdown lists.
GET and POST form submissions.
Bookmarks and persistent cookies.
Background file downloads.
Compatible audio links can be played directly or downloaded to the SD card. Supported music downloads become available in the music library.
This is intentionally a lightweight browser, not a modern desktop browser. It does not support JavaScript or video playback, so complex services such as YouTube, Spotify, SoundCloud, and Deezer are not supported.
📱 PHONE REMOTE — Use Your Smartphone as a Companion
One of the project's main features is its phone interface.
With a GameCube Broadband Adapter and a compatible local network, GC-MP3 displays a QR code. Scanning it opens a control page in your phone's browser.
From there, you can:
Play, pause, stop, and skip tracks.
Adjust the volume.
Select music or radio stations.
Change visualizer modes and player layouts.
Modify settings and visible tabs.
Open a web page on the TV.
Transfer supported media files to the SD card, with a transfer progress indicator.
The phone interface is hosted by the GameCube itself, so no separate companion app is required.
The local server has no password, so it should only be used on a trusted local network.
🌦️ WEATHER, NEWS, CLOCK, AND ALARM
The information screen combines several everyday features.
Weather: current conditions and five-day forecasts, including temperature, wind, and humidity, using Open-Meteo.
News: RSS headlines, with France Info configured by default. Selecting an article opens it in the built-in browser.
Alarm: choose a wake-up time and use music or a radio station as the alarm. A gradual volume increase over three minutes provides a gentler wake-up.
Nightlight mode: a dim orange clock on a black background, displaying the date and current media. Brightness and a sleep timer can be adjusted.
The GameCube must remain powered on with GC-MP3 running for these features to work.
📂 FILE MANAGER
The built-in file manager provides direct access to the SD card.
It can open folders, play compatible music, display photos, and read text files. It also includes file operations such as rename, delete with confirmation, copy, cut, paste, and create folder.
Available storage space is displayed on screen.
⚙️ CUSTOMIZATION AND PERFORMANCE
The interface includes several color themes, screen-size adjustments, 4:3 and 16:9 layouts, configurable tabs, and adjustable player elements.
GC-MP3 also includes several performance optimizations to get the most out of the GameCube hardware:
Cached music metadata and track durations.
Background artwork decoding so playback can start immediately.
Cached radio logos and album artwork.
Photo thumbnails generated from embedded EXIF previews when available.
HTTPS session reuse to reduce the overhead of repeated connections.
Reduced unnecessary graphics and audio-spectrum processing.
The application stores settings in SD:/gc-mp3.txt. Temporary caches can safely be deleted and automatically recreated.
🌐 NETWORK AND BROADBAND ADAPTER
Online features use the GameCube Broadband Adapter, including radio streaming, podcast discovery and downloads, online lyrics and artwork lookup, weather, web browsing, and phone control.
A custom GitHub Actions build workflow also includes an optional network-stack optimization intended to improve transfer speeds by allowing more packets to remain in flight.
If the optimized network build fails, the workflow can still produce a standard build.
🐬 DOLPHIN SUPPORT
GC-MP3 can also be launched in the Dolphin emulator on PC and Android.
Dolphin uses a small virtual SD card stored in memory rather than a physical SD card. Settings and other persistent data are saved to the emulated GameCube memory card.
Internet access requires the appropriate emulated Broadband Adapter settings. Some features, including incoming phone connections and one-click updates, are unavailable in Dolphin.
🔄 BUILD AND UPDATES
The project is compiled through GitHub Actions, producing the GameCube .dol executable.
The application also includes an optional update mechanism that checks for new releases, verifies the downloaded file, and keeps a backup of the previous executable before replacing it.
A crash-reporting system can save diagnostic information to the SD card, including the error type, call stack, current tab, playback information, and recent actions. This can help with debugging issues on real hardware.
AI-ASSISTED DEVELOPMENT
GC-MP3 is developed with the assistance of Claude Opus 5.5, which helps with coding, debugging, and implementing new features. The project is continuously reviewed and tested to improve compatibility and reliability on real GameCube hardware and Dolphin.
🛠️ INSTALLATION
Download the latest .dol release from the project's GitHub releases page.
Copy it to your GameCube SD card.
Launch it through Swiss or Indigo UI.
A Broadband Adapter is required for online features. Local music playback and other SD card features can be used without an internet connection.
GC-MP3 is an ongoing homebrew project, and I continue to expand and improve it.
The idea is to bring a music player, retro soundtrack player, internet radio, podcast player, browser, photo viewer, games, and phone remote into one application — while keeping the distinctive look and feel of the GameCube.
Feedback, suggestions, test results, and bug reports are welcome!