switchfin

Switchfin

icon

Switchfin is third-party PC player for Jellyfin that provides a native user interface to browse and play movies and series.

build NS PSVita PS4 Flathub download nightly

This project is in its early stages so expect bugs.

Screenshots

Home Library
Home Library
Search Music
Search Music
Series Episode
Series Episode

Features

Input mapping during playback

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

System Requirements

FAQ

  1. Q: Subtitles didn’t display? A: Put any ttf file at /switch/Switchfin/subfont.ttf
  2. Q: How to enable external drive on switch? A: Edit config file config.json
{
  "setting": {
    "ums": true
  }
}

ums

  1. Q: How to play media files on webdav server? A: Edit config file 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
  1. Q: Can’t open app under macOS ? A: Please run this command in your terminal: sudo xattr -rd com.apple.quarantine /Applications/Switchfin.app

TODO list

Develop

git clone https://github.com/dragonflylee/switchfin.git --recurse-submodules --shallow-submodules

Building for Switch

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

Building for MinGW64

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

Thanks to