NXMP Nintendo Switch Media Player

nxmp-banner.jpg


NXMP is an open-source Nintendo Switch media player based on MPV and FFMPEG, supporting a wide range of media file formats and codecs.
NXMP is coded by @proconsule54 and @darkxex

It support HTTP,FTP,SFTP,Samba,NFS streaming and it also support Enigma2 decoders. Starting from 0.7.0 Version it features HW Decoding for H264,HEVC,VP9,VP8,MPEG2 up to 4K HDR@30fps


Project repository|Stable Build
Stable: v0.9.3



Features:
  • HW Decoding (since v0.7.0) for (H264,HEVC,VP9,VP8,MPEG2)
  • Extense support of media file formats and codecs, including audio too as well​
  • Touch and controller support, control the MP as you want​
  • Video deinterlace support
  • Advanced image settings, configure the brightness and color options, change aspect ratio and rotate the screen​
  • Custom subtitles, you can configure options like color, text size and position to your preferences​
  • Full sound EQ, allow adjust the sound equalizer to your preferences, you can define presets too​
  • Chapters navigator with titles support​
  • Selector of Video/Audio/Subtitle tracks during play​
  • Playlist queue, allow to enque desired files on a playlist for non-stop play​
  • Resume play, you can continue your videos where you previusly stop it​
  • Watch status, watched videos are marked as green on file explorer​
  • Shadermania, you can apply any shader compatible with MPV to NXMP​



Media sources supported:
  • Nintendo Switch SD Card
  • USB drive attached to dock or Switch with USB C adapter (FAT, NTFS and EXT4, up to 32 drives)
  • HTTP/S files through network
  • FTP and SFTP files
  • Samba (SMB) files shared throught network
  • NFS
  • Enigma2 (allow to view TV channel from satellite decoders compatible with this protocol)


Screenshoots:

2021110300034400.jpg2021110300031500.jpg2021110300032100.jpg2021110300023000.jpg



Post here any kind of bug/suggestions.
Enjoy!

Thanks to libusbhsfs https://github.com/DarkMatterCore/libusbhsfs for USB drives support
Thanks to @averne for HW Decoding FFMpeg! and for many many hints
Thanks to @bodyXY for the banner and the icons!
Thanks to @Godorowski for player UI design and releated icons
Thanks to @Chocola for beta testing a player guide
 
Last edited by proconsule54,
Is there any in restriction in resolution? In other words, if the video/sound is stuttering (1080p video), do I need to use overclock or is the Switch just not capable of playing such video flawlessly?
 
hello friends, for now I think the app is perfect as it is, but if you have any suggestions, you can comment on them
I agree, the app came a long way and thank you for all the contributor. and It came along really well and really fast!

I have troubles compiling the libass portlib on debian.

regardless of my installed version of harfbuzz, (which compiles fine)
configure: error: Package requirements (harfbuzz >= 1.2.3) were not met:

No package 'harfbuzz' found

Consider adjusting the PKG_CONFIG_PATH environment variable if you
installed software in a non-standard prefix.

Alternatively, you may set the environment variables HARFBUZZ_CFLAGS
and HARFBUZZ_LIBS to avoid the need to call pkg-config.
See the pkg-config man page for more details.
==> ERROR: A failure occurred in build().
Aborting...

For added feature suggestion:
Thumbnail of the video being generated could be nice - (local and remote files)

On the thread, implementing access to PLEX was mentioned at some point. As a heavy plex user, I would welcome this - or a fork of nxmp - but I have no idea of the scope of such implementation.
 
I agree, the app came a long way and thank you for all the contributor. and It came along really well and really fast!

I have troubles compiling the libass portlib on debian.

regardless of my installed version of harfbuzz, (which compiles fine)


For added feature suggestion:
Thumbnail of the video being generated could be nice - (local and remote files)

On the thread, implementing access to PLEX was mentioned at some point. As a heavy plex user, I would welcome this - or a fork of nxmp - but I have no idea of the scope of such implementation.
https://mega.nz/file/DUFzEARL#QxG_k2ql0tb1toCtLIjUQscbwL-qZcmBGFcP2to9wvY

there you have the compiled portlibs of the nightly builds in case you want to do something with them.
 
  • Like
Reactions: Djakku
I'm curious now that there are actually two movies on the switch maybe we can find a way to inject our own movies.the matrix trilogy and dr strange.ive always wanted a stable movie player for switch this now may be the chance!!! awesome
 
Hi, would nxmp work on my switch oled using the latest official firmware? Or a custom firmware is mandatory for the player to work?
 
If you could boot homebrew without cfw...then yes. But obviously you need a cfw for that ;)
I am not very familiar with these terms. I guess the answer was that i am not able to run nxmp. Is there any other way / trick / app to play movies from my sd card using the official firmware?
 
Hello, I don't understand because I have many videos in a media folder, all mp4, but when I open the folder with nxmp it shows it empty, why?
 
Hello, I don't understand because I have many videos in a media folder, all mp4, but when I open the folder with nxmp it shows it empty, why?
Are there uncommon letters in the file names? Like Ä, Ö, Ü or something like this? IIRC the media player has problems with these letters. Or with other words said, that was the reason why the player didn't show my video files because of these letters.
 
Are there uncommon letters in the file names? Like Ä, Ö, Ü or something like this? IIRC the media player has problems with these letters. Or with other words said, that was the reason why the player didn't show my video files because of these letters.
no no, the file name is "media"
 
Is there a way to get an idea why the app is crashing by connecting to a samba share?

I set up a samba server on a RaspberryPi with Debian running. My samba share uses a password and I checked my config.
For a few days now I try to figure out what's wrong... There is only the message "The software was closed because an error occured." This message appears about 2-3 seconds after selecting the SMB entry.

On the server itself there are no login attempts from the switch in the logs.

I tried with the stable and also with the nightly version. Anyone with ideas?

I use a switch with FW 13.1.0 and Atmosphere 1.3.1
Could the connection to the WLAN on 5 GHz be the issue?
 
just a suggestion, but isn't it about time to put a pause on new features to clean up the code (unused variables and allocation warnings and such), and throw together some build instructions? You're using a few libraries that aren't available from DKP, and simply grabbing required headers only gets as far as the linker stage. That's where I fail miserably. most DEVs build on a Linux platform, so I use ubuntu in a VM... but even with sqlite3 and libsqlite-dev installed, it can't find the header unless I manually copy it into your project's includes. One of the linker errors is even -lsqlite3, and like I said, I have it installed.
 
  • Like
Reactions: proconsule54
just a suggestion, but isn't it about time to put a pause on new features to clean up the code (unused variables and allocation warnings and such), and throw together some build instructions? You're using a few libraries that aren't available from DKP, and simply grabbing required headers only gets as far as the linker stage. That's where I fail miserably. most DEVs build on a Linux platform, so I use ubuntu in a VM... but even with sqlite3 and libsqlite-dev installed, it can't find the header unless I manually copy it into your project's includes. One of the linker errors is even -lsqlite3, and like I said, I have it installed.
https://github.com/proconsule/nxmp-portlibs/releases/ extract this in the devkitpro portlibs folder.
 
  • Like
Reactions: urherenow

Site & Scene News

Popular threads in this forum