2.3 KiB
2.3 KiB
CjTUI
Chris Jellyfin Terminal User Interface
This is the first actually useful programming project I have completed. I still can't write in rust because of generative AI. Maybe one day when I am better at programming I will refactor the codebase and figure out how to hand code a transcoding option that actually is compatible with Jellyfin API.
UNIX Program only currently. Should work with WSL on Windows.
Features
- Blazingly Fast Speed
- Online and Offline Playback
- Robust Download Connectivity
- Individual Download and Batch Download Support
- Download Queue Management
- Local Media Management
- Autoplay and Resume functionality
- Sends Current Watch Position to the Server
- Playlist and Collection Support
- Persistent Auth
System Dependencies on
MPV and ARIA2C
Persistent Storage
All application data is stored in: ~/.config/cjtui/
- config.toml: Server URL and API key is stored.
- downloads/: Local download data, used for local playback and offline navigation.
- temp/: Temporary download data during ARIA2C functionality.
Controls
General Interface Controls
- Up/K: Up
- Right/L/Enter: Drilldown/Enter
- Down/J: Down
- Left/H/Backspace/Esc: Back
- q: Return to the home screen or quit.
- /: Search: Click once to search and clicking / multiple times cycles through search categories.
How to Watch Media
- p: Play: Starts a show playing at the beginning and will use offline playback if available.
- P: AutoPlay: Starts a show playing at the beginning and will use offline playback if available. Turns on auto play mode which will play the next episode in series or song in the playlist.
- r: Resume: If there is a pause position online, it will stream beginning at the paused position.
- R: AutoResume: Resume + Autoplay flag is on.
- w: Watched: Marks as watched.
- W: Not Watched: Marks as unwatched.
Media Player Control
- Space: Pause
- x: close mpv
- f: full screen media player
- a: cycle audio track
- s: cycle subtitles
- v: change subtitle visibility.
Local File Management
- d: Queue file for download
- D: Enter the download visual queue.
- (d on an item in the queue): Remove item from queue.
- X: Deletes the local file if the file exists.
- o: Enter offline playback/Attempt to ping the server to join online mode. (Local downloaded database is available during this mode)