Switchfin is third-party PC player for Jellyfin that provides a native user interface to browse and play movies and series.
This project is in its early stages so expect bugs.
| Home | Library |
|---|---|
![]() |
![]() |
| Search | Music |
![]() |
![]() |
| Series | Episode |
![]() |
![]() |
| gamepad | keyboard | describe |
|---|---|---|
| A | space | Play/Pause |
| B | esc | Stop during |
| Y | o | Toggle OSD |
| X | f4 | Show Menu |
| R/L | [/] | Seek +/- |
| + | f1 | Show video profile |
| R | f2 | Stick Button Toggle Video Quality |
| L | f3 | Stick Button Toggle Speed Select |
/switch/Switchfin/subfont.ttfconfig.json{
"setting": {
"ums": true
}
}

config.json{
"remotes": [
{
"name": "local",
"url": "file:///switch"
},
{
"name": "xiaoya",
"passwd": "guest_Api789",
"url": "webdav://192.168.1.5:5678/dav",
"user": "guest"
},
{
"name": "rpi",
"url": "sftp://pi:raspberry@192.168.1.5/media"
},
{
"name": "rclone",
"url": "http://192.168.1.5:8000"
}
]
}
rclone serve http --addr :8000 --read-only /media/downloads
sudo xattr -rd com.apple.quarantine /Applications/Switchfin.appgit clone https://github.com/dragonflylee/switchfin.git --recurse-submodules --shallow-submodules
To build for Switch, a standard development environment must first be set up. In order to do so, refer to the Getting Started guide.
sudo dkp-pacman -S switch-dev switch-glfw switch-libwebp switch-curl switch-libmpv
cmake -B build_switch -DPLATFORM_SWITCH=ON
make -C build_switch Switchfin.nro -j$(nproc)
# for debug
nxlink -a <YOUR IP> -p Switchfin/Switchfin.nro -s Switchfin.nro --args -d -v
pacman -S ${MINGW_PACKAGE_PREFIX}-cc ${MINGW_PACKAGE_PREFIX}-ninja ${MINGW_PACKAGE_PREFIX}-cmake
cmake -B build_mingw -G Ninja -DPLATFORM_DESKTOP=ON
cmake --build build_mingw