Toggle menu
Toggle preferences menu
Toggle personal menu
Not logged in
Your IP address will be publicly visible if you make any edits.
StreaMu
General
Authorimissuuuu
TypeMedia Players
Version1.5.1
LicenseMIT License
Last Updated2026/06/01
Links
Download
Website
Source

A homebrew music player for Nintendo 3DS that searches and streams YouTube audio via a companion proxy server.

This app runs on a Nintendo 3DS (with custom firmware) and lets you search for music on YouTube, browse playlists, and stream audio, all from the 3DS's dual-screen interface.

A lightweight proxy server runs on your PC and handles YouTube data fetching and audio streaming.

Features

  • Search YouTube and stream audio directly on your 3DS.
  • Create and manage playlists.
  • Shuffle, loop, and queue controls.
  • Customizable themes and wallpaper.
  • CIA and 3DSX support.

Installation

Requirements

3DS side:

  • Nintendo 3DS with custom firmware (Luma3DS)

Proxy server side (PC):

  • Windows/Mac/Linux
  • EXE version (recommended, no dependencies)
  • Python 3.10+

Install (3DS)

Download streamu.cia or streamu.3dsx from Releases.

  • CIA - Install with FBI. The app appears on the HOME Menu.
  • 3DSX - Copy to /3ds/ on your SD card. Launch from Homebrew Launcher.

Proxy server setup (PC)

Option A: Standalone EXE (recommended)

Download StreaMu-Server.zip from Releases, extract it, and run StreaMu-Server.exe.

The server uses native YouTube Opus audio and does not require FFmpeg. No Python or manual setup needed.

Option B: Python script

Mac / Linux:

cd server
chmod +x start_server.sh
./start_server.sh

This will:

  • Create a Python virtual environment
  • Install required packages (starlette, yt-dlp, uvicorn)
  • Start the proxy server

Windows:

cd server
python setup.py
venv\Scripts\python proxy.py

Or double-click start_server.bat in the server/ folder.

The server starts on port 8080. Open http://localhost:8080 in your browser to view the dashboard.

User guide

How to use

  • Start the proxy server on your PC.
  • Launch StreaMu on your 3DS.
  • On first launch, enter your PC's IP address (shown on the proxy dashboard).
  • Press Y to open the search keyboard and find music.
  • From search results, tap a track to start playback.
  • Use the "+ Add" button or the track options menu to save tracks to a playlist.

Playlists

Creating a playlist: 

  • From search results, tap the "menu icon" on a track and select "Add to Playlist".
  • Choose "New Playlist" to create one, or select an existing playlist.

Browsing playlists:

  • Tap the "Playlists" tab to see all your saved playlists.
  • Tap a playlist to view its tracks.

Playing from a playlist: 

  • Open a playlist and tap any track to start playback.
  • The playlist becomes your play queue.

Renaming tracks: 

  • In the track options menu, select "Rename" to give a track a custom name.

Custom Wallpaper

You can set a custom image for the top screen background:

  • Place PNG files in sdmc:/3ds/StreaMu/wallpaper/ on your SD card
  • Open "Settings" in the app
  • Select "Wallpaper" and choose from your images

Settings

Accessible from the settings icon in the app:

Setting Description
Theme Light / Dark mode
Accent Color Adjust hue, saturation, and brightness
Color Palette Choose a preset palette
L/R Button Assign actions: skip track, play/pause
D-Pad Speed Scroll speed for list navigation
Wallpaper Top screen background image
Language English / Japanese

Settings are saved to sdmc:/3ds/StreaMu/config.json.

Controls

Y - Open search keyboard

A - Select, Confirm

B - Back, Close popup

D-Pad - Navigate lists and menus

L/R - Switch tabs (configurable)

Select - Open track options menu

Start - Exit app

Touch - Tap items, Scroll lists, Tap buttons

Screenshots

StreaMu3DS2.png StreaMu3DS3.png

StreaMu3DS4.png StreaMu3DS5.png

Changelog

v1.5.1

  • Highlights
    • Improved steady-state Opus playback behavior to reduce low-FPS feeling and refill instability during playback.
    • Reduced noisy hot-path observation overhead while keeping the playback pipeline changes that were validated on hardware.
    • Tightened several playback and UI edge cases, including buffering state transitions, startup connection checks, and QA Remove handling.
  • Upgrade Notes
    • Update both the 3DS app and the proxy server together.
    • Replace your existing StreaMu-Server.zip with the version from this release.
    • Existing Opus Direct usage stays the same; this is a maintenance and smoothness update rather than a feature reset.

v1.5.0

  • Highlights
    • Opus Direct is now the only release playback path.
    • MP3 Proxy and server-side FFmpeg transcoding have been removed.
    • The proxy server no longer requires FFmpeg.
    • Existing audio_path settings, including old mp3 and aac_direct values, are treated as Opus Direct.
  • Upgrade Notes
    • Update both the 3DS app and the proxy server together.
    • Use the latest StreaMu-Server.zip; older proxy servers may not provide the required /stream_opus_ogg endpoint.
    • If playback fails for a specific video, please include the video ID and the server dashboard log when reporting it.

v1.4.1

  • Summary
    • Added cancelable startup server connection flow.
    • Added Mac/Linux Python server startup script.
    • Added GitHub Actions 3DS artifact build workflow.
    • Added GitHub Actions packaging tool installation for CIA builds.

v1.4.0

  • Standalone Server EXE
    • StreaMu-Server.zip — extract and run. No Python required.
    • Automatically downloads FFmpeg and yt-dlp on first launch.
  • Improved Documentation
    • Added Quick Start guide for easy setup
    • Added Troubleshooting section (connection timeout, firewall, FFmpeg)
    • Documented playlist workflow, custom wallpaper, and all settings
    • Bilingual (English / Japanese)

v1.3.0

  • Features
    • Split L/R button action into Skip Back and Skip Fwd — each independently assignable in Settings
    • Search keyboard hint text updated to "Search music..."
  • Bug Fixes
    • Fix seek bar not pausing when using L/R Play/Pause action
    • Fix mp3d uninitialized in MP3Player constructor
  • Performance
    • Faster startup: removed 1.1s of artificial sleep delays
    • Startup loading screen now appears before wallpaper decode (no more black screen on launch)
  • Improvements
    • Track rename feature in Track Options popup (playlist context only)
    • Separated search results from playlist tracks — no more overwriting each other
    • SearchScreen redesigned to match PlayingScreen layout (PlayBar + seek + hamburger)
    • Network: reduced streaming latency, pipe-based stream generator, Keep-Alive support
    • Fixed DASH fMP4 seek via manual segment fetch + init segment pre-send

v1.2.0

  • Features
    • Thumbnail display on PlayingScreen top screen (async download, center crop)
    • Thumbnail routed through proxy server (no direct ytimg.com access)
    • Delayed thumbnail fetch by 3s to prioritize audio buffering
    • Hide view count when playing from playlist
  • Bug Fixes
    • Fix crash on START exit when thumbnail is loaded

v1.1.0

  • UI Improvements
    • Home screen rich styling (gradient, bevel, touch feedback, cursor)
    • List UI restyle v2 (minimal flat, dashed separator, left accent bar)
    • Custom color palette with S/V sliders for freeform color selection
  • Features & Fixes
    • Streaming 15s timeout with simplified retry logic
    • Settings screen Save button fixed outside scroll list
    • Playlist track view counts removed (stale data)

v1.0.0

  • First public release of StreaMu - a homebrew music player for Nintendo 3DS.

External links

Advertising: