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

NXMP it's on early versions and active dev state so expect any kind of bugs, anyways it's fully functional and tested before every release

Project repository|Stable Build
Stable: v0.9.0



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,

ber71

Well-Known Member
Member
Joined
Apr 24, 2019
Messages
574
Trophies
0
Age
59
XP
2,532
Country
Spain
Good job here.

I'm somewhat concerned about the sqlite usage. While that may work, continuous writes to the same file can cause wearing and ultimately kill the sdcard.
 
  • Like
Reactions: proconsule54

proconsule54

Well-Known Member
OP
Member
Joined
Nov 5, 2019
Messages
756
Trophies
1
Age
43
XP
2,753
Country
Italy
Good job here.

I'm somewhat concerned about the sqlite usage. While that may work, continuous writes to the same file can cause wearing and ultimately kill the sdcard.
Yes i am also worried about this. I am spending lot of time on make sqlite working as in memory database till the quit of the app when it will write the db.
Also the resume db can be completly removed in settings window, so it will not even be initialized
 
  • Like
Reactions: ber71

Chocola

GBAtemp Meowgular
Member
Joined
Sep 18, 2018
Messages
379
Trophies
0
Age
32
Location
Neko Paradise
XP
723
Country
Korea, South
Should do a lot of writes to kill the sdcard, for example operating system installed on SSD do a lot of writes on temp databases and directories and didn't kill SSD's at short time.

Anyways, the idea are good, reading database at startup and make instance of it on memory during runing stop the continuous IO of SD card, the problem of that, if it's app crash, the changes maked to database in memory didn't get saved to SD card.

Other problem of memory database, are if there are any plans to implement library with media info, scrapped content take a lot of memory if you have a large library, this can be solved using selective info on memory mantaining cold data (static, rarely change, like media infos) on SD card and hot data (like resume info or any content that constantly change) on memory and write memory database to SD card before close program.

The problem of that, it's the extra difficult to manage two diferent sources of database during development.
 
  • Like
Reactions: proconsule54

proconsule54

Well-Known Member
OP
Member
Joined
Nov 5, 2019
Messages
756
Trophies
1
Age
43
XP
2,753
Country
Italy
Yes for future use memory database can be a probelem but switch is a single app OS (if you use NXMP you are not using other things) 3.5GB of memory is enough for a big big library. the problems may be the time to read/write the db.
I look at the problem in the future, for actual usage a memeory db is very efficent
 
  • Like
Reactions: FFTW and Chocola

sashka69

Active Member
Newcomer
Joined
Dec 24, 2013
Messages
37
Trophies
1
Age
37
XP
1,384
Country
Gambia, The
Hi. I think I found a bug in enigma2 configuration.

I have set up an alternative port (88) for my openwebif on my receiver. The ip is 192.168.178.77:88. When I enter this path in the configuration file and try to launch enigma2 on newest nxmp: nothing happens and when I wait long enough the app crashes (software was closed).

When I reset my receivers port to default (80) and enter 192.168.178.77 in the config file, nxmp can be used to stream my enigma2 channels. So no problem on my end.


So I guess there is a problem in using anything but the default port 80. Please check. Thank you very much for your great work.
 
  • Like
Reactions: proconsule54

laraklara

Well-Known Member
Member
Joined
Jan 27, 2020
Messages
104
Trophies
0
Age
58
XP
415
Country
Germany
so i have a problem with the ftp streaming too...when i chose a mp3 or a mkv file that only what the app do ist a blackscreen with message "Buffering Media" and nothing happens...

can anybody help me? or is this a bug?

thanks
 

proconsule54

Well-Known Member
OP
Member
Joined
Nov 5, 2019
Messages
756
Trophies
1
Age
43
XP
2,753
Country
Italy
so i have a problem with the ftp streaming too...when i chose a mp3 or a mkv file that only what the app do ist a blackscreen with message "Buffering Media" and nothing happens...

can anybody help me? or is this a bug?

thanks
What ftp server daemon are you connecting to?
 

Chocola

GBAtemp Meowgular
Member
Joined
Sep 18, 2018
Messages
379
Trophies
0
Age
32
Location
Neko Paradise
XP
723
Country
Korea, South
so i have a problem with the ftp streaming too...when i chose a mp3 or a mkv file that only what the app do ist a blackscreen with message "Buffering Media" and nothing happens...

can anybody help me? or is this a bug?

thanks

I have a Debian based server on my LAN hosting all of my multimedia contents through my network and works fine with videos and audios (inclusive over wifi), didn't get the error that you comment.

Need more info about your setup to try to reproduce the error.
 

laraklara

Well-Known Member
Member
Joined
Jan 27, 2020
Messages
104
Trophies
0
Age
58
XP
415
Country
Germany
My OS is Windows Server 2022 and my Host is Serv-U..

i create in serv-u a ftp member and than i try to connect over the switch to the account...that connection works fine to my switch...i see all directorys and files but i cant play it....Only Blackscreen and "Buffering Media" Information
 

sashka69

Active Member
Newcomer
Joined
Dec 24, 2013
Messages
37
Trophies
1
Age
37
XP
1,384
Country
Gambia, The
That was quick. If you need more beta testers, let me know. I'm really looking forward to set my enigma2 port back to something different than 80.
 

Site & Scene News

Popular threads in this forum

General chit-chat
Help Users
    K3Nv2 @ K3Nv2: Were not sure about the next 30 minutes though