This project based on Ankenyr jellyfin-youtube-metadata-plugin, I removed the remote support and added what we think make sense for episodes numbers, if you follow active channels like we do, you will notice that some episodes will have problems in sorting or numbering, we fixed some issues that relates to what we need.
Episodes are named 1 + MMdd, plus four integers XXXX generated using algo to be consistent across all platforms and you will get
the same episode number.
The reason we prefix the episode numbers by 1 is because we use two month digit, thus if you have episodes that aired 2023-07-02 and 2023-10-02,
it will prevent the 10-02 episode from appearing before the 07-02 episodes. Usually 0 is not counted in the index so if we do not add 1 before the
index number the episodes index will be 70020000 vs 10020000.
Plugin for Jellyfin that retrieves metadata for content from yt-dlp .info.json files.
- Reads the
.info.jsonfiles provided by yt-dlp or similar programs to extract metadata from. - Supports thumbnails of
png,jpgorwebpformat for both channel and videos. - Supports the following library types
Movies,Music VideosandShows. - Supports ExternalID providing quick links to source of metadata.
All media needs to have the ID embedded in the file name within square brackets.
The following are valid examples of a channel and video. We support the following id format
[(id)] and [youtube-(id)].
To add metadata from channel, INFO and image should follow the following format. YouTube channels must start with UC or HC.
whatever title you want [(youtube-)?(UC|HC)uAXFkgsw1L7xaCfnd5JJOw].info.jsonwhatever title you want [(youtube-)?(UC|HC)uAXFkgsw1L7xaCfnd5JJOw].(jpg|png|webp)
For Video files it follow the same rules as the channel format.
whatever [(youtube-)?dQw4w9WgXcQ].info.jsonwhatever [(youtube-)?dQw4w9WgXcQ].(jpg|png|webp)whatever [(youtube-)?dQw4w9WgXcQ].(mkv|mp4|etc)
Go to the releases page and download the latest release.
create a folder named YTINFOReader in the plugins directory inside your Jellyfin data directory. You can find your directory by going to Dashboard, and noticing the Paths section. Mine is the root folder of the default Metadata directory.
Unzip the downloaded file and place the resulting files in the plugins/YTINFOReader restart jellyfin.
Go to your YouTube library Make sure YTINFOReader is on the top of your Metadata readers list. Disable all external metadata sources and only enable YTINFOReader in the Metadata downloaders (TV Shows): and Metadata downloaders (Episodes):.
Tip: Only enable Image fetchers (Episodes): - Screen grabber (FFmpeg). if you don't have a local image for the episode, it will be fetched from the video file itself.
- Clone or download this repository.
- Ensure you have .NET Core SDK setup and installed.
- Build plugin with following command.
dotnet publish YTINFOReader --configuration Release --output bin - Create folder named
YTINFOReaderin thepluginsdirectory inside your Jellyfin data directory. You can find your directory by going to Dashboard, and noticing the Paths section. Mine is the root folder of the default Metadata directory.# mkdir <Jellyfin Data Directory>/plugins/YTINFOReader/ - Place the resulting files from step 3 in the
plugins/YTINFOReaderfolder created in step 4.# cp -r bin/*.dll <Jellyfin Data Directory>/plugins/YTINFOReader/` - Be sure that the plugin files are owned by your
jellyfinuser:# chown -R jellyfin:jellyfin /var/lib/jellyfin/plugins/YTINFOReader/
If performed correctly you will see a plugin named YTINFOReader in Admin -> Dashboard -> Advanced -> Plugins.