Homebrew SwitchWave: a hardware-accelerated media player

TheStonedModder

Well-Known Member
Member
Joined
Dec 25, 2022
Messages
1,372
Trophies
2
Age
28
XP
3,014
Country
United States
View attachment 466624

SwitchWave is a media player for the Nintendo Switch, which aims at providing a smooth and feature-complete experience, for both quick playback and video enthusiasts.
It builds on ffmpeg and mpv for stability and broad compatibility.


Release | Source code

Features
  • Hardware decoding for all codecs supported by the Switch (MPEG1/2/4, H264, H265, VP8, VP9, VC1, and MJPEG)
  • Rich, dynamic interface for all relevant playback settings
  • Built-in config editor for mpv and in-app settings
  • Efficient GPU video rendering using deko3d
  • Native audio backend supporting up to 5.1 channel layouts
  • Network playback of SMB, NFS and SFTP shares
  • External USB drive support via libusbhsfs

Installation
Uncompress the release archive to the root of your SD card (be careful to not overwrite folders).
The release archive is bundled with sensible settings for mpv, which can be completed in-app via the editor.
A help tab is provided for usage reference.

Screenshots
View attachment 466629View attachment 466627
View attachment 466630View attachment 466631
Heck yea very cool! This might pair really well if/when I can get the Stremio source code ported

Great work
 
  • Wow
Reactions: LightBeam

ikynx

Well-Known Member
Member
Joined
May 9, 2023
Messages
207
Trophies
0
Age
44
XP
679
Country
Ukraine
New release: https://github.com/averne/SwitchWave/releases/tag/v1.0.1
This fixes the playback issue of files very long paths reported by @DiscostewSM, a rare corruption when taking native screenshots, along with some minor improvements to the UI//UX.
just tested, works brilliantly, you did what nxmp could never do: work reliably! Now regarding the UI/UX, are you open to comments / enhancement suggestions? it's currently pretty rough. Dunno what wiggle room you have with the libs you are using. Anyway, cheers, great job!
Post automatically merged:

oh by the way, does your app support AV1? NXMP seems to and its using mpv too.
 

averne

Well-Known Member
OP
Member
Joined
Jan 21, 2020
Messages
208
Trophies
0
XP
2,298
Country
France
just tested, works brilliantly, you did what nxmp could never do: work reliably! Now regarding the UI/UX, are you open to comments / enhancement suggestions? it's currently pretty rough. Dunno what wiggle room you have with the libs you are using. Anyway, cheers, great job!
Post automatically merged:

oh by the way, does your app support AV1? NXMP seems to and its using mpv too.
AV1 works with software decoding, unfortunately the switch CPU is not fast enough to really sustain 1080p in my experience.
And sure don't hesitate to throw suggestions in, but indeed imgui is mostly designed for desktop use, so the touch interface in particular is not perfect.
 

proconsule54

Well-Known Member
Member
Joined
Nov 5, 2019
Messages
759
Trophies
1
Age
44
XP
2,885
Country
Italy
I missed the news. A BIG ONE!

I am very glad to see this player! I have HUGE respect for @averne, he is a far better coder then i will ever be!
To point the diff between NXMP and this terrific player is that is coded by the one who made possible the HW decoding on switch, NXMP uses mpv and ffmpeg made by averne. also looking at the coding style is clear that switchwave is far better coded, is far more stable and so on.
I was sure that when averne release this one will be the NXMP end.

This will be the definitive player for switch and probably one of the best player ever on a console!

Thanks @averne for all your help and hints you gave me.
Now is time to show up to all how skilled you are!
 

Topken

Member
Newcomer
Joined
Apr 4, 2023
Messages
17
Trophies
0
Age
37
XP
58
Country
United States
Hardly anything is which is part of the issue. Hows the performance when software decoding 1080p 10bit h264?
 

randy_w

Well-Known Member
Member
Joined
Feb 27, 2021
Messages
820
Trophies
0
Age
34
XP
1,555
Country
United States
Hardly anything is which is part of the issue. Hows the performance when software decoding 1080p 10bit h264?
Depends on bitrate. Went through my old stash on my nas, almost all 10 bit BDRip releases are in HEVC, but i did find a few AVC 10 bit releases. Only had problem with one scene ([DHR&Makari&Airota][Sound! Euphonium S1+S2+Movie][BDRip][1080P]):
1732050254316.png


Video started to lag and got a ton of dropped frames. Checked bitrate on computer, it's actually around 25-30mbps:
1732050348635.png


Other 10 bit AVC videos played without any issue, bitrate is usually below 10mbps, highest I've seen is around 15mbps, so i think anything below 15mbps should play smoothly. Tbh not a huge deal, most 10bit BDRips are in HEVC anyway which can be decoded with hardware, there aren't many releases using 10 bit AVC.

Btw watched ET on my switch last weekend, it's the 4k HDR10 HEVC release, highest bitrate is around 70mbps and it played buttery smooth, not a single dropped frame. Thanks again for this awesome release!

1732051460756.png
 
  • Like
Reactions: averne

Topken

Member
Newcomer
Joined
Apr 4, 2023
Messages
17
Trophies
0
Age
37
XP
58
Country
United States
I am talking about the 10bit h264 KICK that anime releases got on in the early/mid 2010s AKA before bdray rips in hevc took off. Instead of going standard 8bit for anime releases in h264 they upped it to Hi10bit releases becuase of banding and other issues with 8bit

Basically those labled as Hi10p
 

Growingcow

Member
Newcomer
Joined
Dec 11, 2023
Messages
15
Trophies
0
Age
49
XP
122
Country
United States
This is really awesome. Just 2 question, can you fully navigate the player without having to use the controllers? I don't see a way to navigate or quiet whatever I'm watching with having to use the physical buttons.

Is there a lock screen function so that pressing something by accident does not trigger anything?
 

Site & Scene News

Popular threads in this forum

General chit-chat
Help Users
    kijetesantakalu042 @ kijetesantakalu042: @The_Dizzy_Vizzy it's fun in the unalive club