/PhinellyPort

PhinellyPort is a collection of tools designed to enhance your media library experience, by offering playlist generation, duplicate file removal outside of Jellyfin media server, and seamless integration with Jellyfin through its API for importing playlists

Primary LanguageShellMIT LicenseMIT

PhinellyPort

Donate Coffee GitHub Repo stars GitHub forks Latest Release

image

⚠️ Please note the scripts are far from perfect, and some manual effort is required to import.

PhinellyPort is a collection of tools designed to enhance your media library experience, by offering playlist generation, duplicate file removal outside of Jellyfin media server, and seamless integration with Jellyfin through its API for importing playlists.

How to

Generating temporary m3u8 files from a directory that contains audio files. The generated m3u8 files will be saved in the terminal's current working directory.

⚠️ Some scripts requires ffmpeg on your system to work.

For Directories with Subdirectories

Use the following command for generating m3u8 files from a directory that includes subdirectories:

./directories_to_playlists.sh [music_folder]

For a Single Directory

Use the following command for generating an m3u8 file from a single directory:

./generate_playlist.sh [music_folder] [playlist_name] [optional: new_base_path]

Eliminate Duplicate Audio Files

To remove duplicate audio files within a directory that includes subdirectories, use the following command. The action options available are "delete," "dry," and "cancel." When specifying the file format, do not include a dot in the string (e.g., "mp3").

./duplicate_cleaner.sh [folder_path] [file_format] [action]

Import Playlist to Jellyfin

To import a playlist into Jellyfin, follow these steps to ensure the playlist is properly set up:

  • Create empty playlist using Sonixd.
  • Navigate to Jellyfin's music section, then go to the Playlist tab and click on the new empty playlist. In the URL, locate the playlist ID, which should appear like this: id=5197ca8074c325d7e5882b0b1b2f0545.
  • Obtain your user ID by visiting your profile. Click your avatar in the top-right corner and select "Profile." In the URL, look for userId=f1c88706d5164400b2ab94a865be072.
  • Generate a new API Key by going to API Keys in the Admin panel.

To import tracks to an existing playlist, execute the following command:

./jellyfin_playlist.sh <input_file> <playlist_id> <host> <userid> <apikey>

To create a new playlist and import tracks, run the following command:

./jellyfin_playlist.sh <input_file> "" <host> <userid> <apikey>

Example

./jellyfin_playlist_import.sh Rock.m3u8 5197ca8074c325d7e5882b0b1b2f0545 example.com f1c88706d5164400b2ab94a865be072 0050cbe10cf149e000dd8b18c623c780