jordyalkema / youtube-dl-agent.bundle Goto Github PK
View Code? Open in Web Editor NEWA plex metadata agent for Youtube-DL downloads
A plex metadata agent for Youtube-DL downloads
I've looked at the source code and seems the difference with YouTube-Agent.bundle is also that Youtube-DL-Agent.bundle plugin supports only Library Type
=TV Episodes
.
This should be documented as well.
It is hard to explain what is happening but say I have a youtube playlist I downloaded, Elden Ring by UberHaxorNova, and some of the thumbnails are jpg and others are webp. It will only select the jpg images and ignore the webp ones completely.
However if the entire playlist comes with webp images it loads them properly.
This is not exclusive to that playlist as it happens on all playlists that give me multiple image formats for thumbnails; This is not 2 images for each episode. It is Episode 1-13 and 19-30 comes with jpg and then Episodes 14-18 are webp, it will ignore the images for 14-18.
Attached is an example with a different playlist where it pulls jpg then ignores the webp.
Grabbed all videos from https://www.youtube.com/playlist?list=PL0-LSnSBNInfrr7MDRuXmfk1LJ_KjvaXt also tried https://www.youtube.com/playlist?list=PL2X2odndvaIc145J7IBL2T-rN1y-gl9-_ with same results. Most import correctly but about 10% do not load the metadata.
The plex log shows this for one of the failed files
Feb 17, 2022 08:11:59.828 [0x7fa005208b38] DEBUG - * Found episode s2021e-1
Feb 17, 2022 08:11:59.828 [0x7fa005208b38] DEBUG - Migrating metadata settings from local://114348 -> com.plexapp.agents.youtube-dl://youtube-dl|%2Fdata%2FALL%2FVideos%2FYouTube%2FSteve%20Shives%20%5BUCD4qMoFPUEzSn4CurFLJkIQ%5D%2FWhy%20Dr%2E%20Pulaski%20Is%20Actually%20Pretty%20Awesome%5BzhvO85FmQtY%5D%2Emp4|9ee0c786acaca6f2/2021/1900-01-01?lang=en
Feb 17, 2022 08:11:59.829 [0x7fa005208b38] WARN - Unable to load episode file ["/config/Library/Application Support/Plex Media Server/Metadata/TV Shows/7/74beca8431033980601c4c92800c518117be884.bundle/Contents/_combined/seasons/2021/episodes/1900-01-01.xml"]
Feb 17, 2022 08:11:59.830 [0x7fa005208b38] DEBUG - Item 114348 (How Deep Space Nine Actually Gets Religious Tolerance Right[eDR_522dlFo].mp4) Scanning metadata graphic elements in XML file "seasons/2021/episodes"/1900-01-01.xml
Feb 17, 2022 08:11:59.830 [0x7fa005208b38] ERROR - Error parsing XML: Empty or non-existant file..
Feb 17, 2022 08:11:59.831 [0x7fa005208b38] DEBUG - Item 114348 (How Deep Space Nine Actually Gets Religious Tolerance Right[eDR_522dlFo].mp4) Scanning metadata graphic elements in XML file "seasons/2021/episodes"/1900-01-01.xml
Feb 17, 2022 08:11:59.831 [0x7fa005208b38] ERROR - Error parsing XML: Empty or non-existant file..
Feb 17, 2022 08:11:59.831 [0x7fa005208b38] DEBUG - Loading information from media bundle for part ID 140428 from "/config/Library/Application Support/Plex Media Server/Media/localhost/3/db38e26eaf36778ec74d9f5c5008f98ccc6aec9.bundle/Contents"
Feb 17, 2022 08:11:59.831 [0x7fa005208b38] DEBUG - There was a change for metadata item 114348 (How Deep Space Nine Actually Gets Religious Tolerance Right[eDR_522dlFo].mp4), saving.
Feb 17, 2022 08:11:59.831 [0x7fa005208b38] DEBUG - Updating metadata item (save) (How Deep Space Nine Actually Gets Religious Tolerance Right[eDR_522dlFo].mp4) with ID 114348
Feb 17, 2022 08:11:59.843 [0x7fa005208b38] DEBUG - * Season 2021 (-1) Episode -1 (2021) (2021-05-13)
Feb 17, 2022 08:11:59.843 [0x7fa005208b38] DEBUG - Looking up season and index for an episode, indexKey= dateKey=2021-05-13.
2022-02-20 05:16:06,623 (7fb0938f3b38) : DEBUG (runtime:717) - Handling request GET /:/plugins/com.plexapp.agents.youtube-dl/messaging/function/X0FnZW50S2l0OlVwZGF0ZU1ldGFkYXRh/Y2VyZWFsMQoxCmxpc3QKMApyMAo_/Y2VyZWFsMQoxCmRpY3QKMTAKczIKZW5zNApsYW5nYjFzNQpmb3JjZWIwczgKcGVyaW9kaWNzNgoxMTUxMjhzNApkYmlkaTAKczcKdmVyc2lvbnMyMzkKY29tLnBsZXhhcHAuYWdlbnRzLnlvdXR1YmUtZGw6Ly95b3V0dWJlLWRsfCUyRmRhdGElMkZBTEwlMkZWaWRlb3MlMkZZb3VUdWJlJTJGRFVTVCUyMCU1QlVDN3NEVDhqWjc2VkxWMXVfX2tyVXV0QSU1RCUyRlNjaS1GaSUyMFNob3J0JTIwRmlsbSUyMC0lMjBBbmdlbCUyMF8lMjBEVVNUJTIwXyUyME9ubGluZSUyMFByZW1pZXJlJTVCWTdBM1BmQU90cE0lNUQlMkVtcDR8OWY4MmFjMGRiMmMxMzY4My8yMDE5P2xhbmc9ZW5zMTAKcGFyZW50R1VJRHM2CjExNTA0MHM4CnBhcmVudElEczcKVFZfU2hvd3MxMAptZWRpYV90eXBlczI1MApjb20ucGxleGFwcC5hZ2VudHMueW91dHViZS1kbDovL3lvdXR1YmUtZGx8JTJGZGF0YSUyRkFMTCUyRlZpZGVvcyUyRllvdVR1YmUlMkZEVVNUJTIwJTVCVUM3c0RUOGpaNzZWTFYxdV9fa3JVdXRBJTVEJTJGU2NpLUZpJTIwU2hvcnQlMjBGaWxtJTIwLSUyMEFuZ2VsJTIwXyUyMERVU1QlMjBfJTIwT25saW5lJTIwUHJlbWllcmUlNUJZN0EzUGZBT3RwTSU1RCUyRW1wNHw5ZjgyYWMwZGIyYzEzNjgzLzIwMTkvMTkwMC0wMS0wMT9sYW5nPWVuczQKZ3VpZHMxOTQKeW91dHViZS1kbHwlMkZkYXRhJTJGQUxMJTJGVmlkZW9zJTJGWW91VHViZSUyRkRVU1QlMjAlNUJVQzdzRFQ4alo3NlZMVjF1X19rclV1dEElNUQlMkZTY2ktRmklMjBTaG9ydCUyMEZpbG0lMjAtJTIwQW5nZWwlMjBfJTIwRFVTVCUyMF8lMjBPbmxpbmUlMjBQcmVtaWVyZSU1Qlk3QTNQZkFPdHBNJTVEJTJFbXA0fDlmODJhYzBkYjJjMTM2ODNzMgppZHIwCg__
2022-02-20 05:16:06,624 (7fb0938f3b38) : DEBUG (runtime:49) - Received packed state data (80 bytes)
2022-02-20 05:16:06,624 (7fb0938f3b38) : DEBUG (runtime:814) - Found route matching /:/plugins/com.plexapp.agents.youtube-dl/messaging/function/X0FnZW50S2l0OlVwZGF0ZU1ldGFkYXRh/Y2VyZWFsMQoxCmxpc3QKMApyMAo_/Y2VyZWFsMQoxCmRpY3QKMTAKczIKZW5zNApsYW5nYjFzNQpmb3JjZWIwczgKcGVyaW9kaWNzNgoxMTUxMjhzNApkYmlkaTAKczcKdmVyc2lvbnMyMzkKY29tLnBsZXhhcHAuYWdlbnRzLnlvdXR1YmUtZGw6Ly95b3V0dWJlLWRsfCUyRmRhdGElMkZBTEwlMkZWaWRlb3MlMkZZb3VUdWJlJTJGRFVTVCUyMCU1QlVDN3NEVDhqWjc2VkxWMXVfX2tyVXV0QSU1RCUyRlNjaS1GaSUyMFNob3J0JTIwRmlsbSUyMC0lMjBBbmdlbCUyMF8lMjBEVVNUJTIwXyUyME9ubGluZSUyMFByZW1pZXJlJTVCWTdBM1BmQU90cE0lNUQlMkVtcDR8OWY4MmFjMGRiMmMxMzY4My8yMDE5P2xhbmc9ZW5zMTAKcGFyZW50R1VJRHM2CjExNTA0MHM4CnBhcmVudElEczcKVFZfU2hvd3MxMAptZWRpYV90eXBlczI1MApjb20ucGxleGFwcC5hZ2VudHMueW91dHViZS1kbDovL3lvdXR1YmUtZGx8JTJGZGF0YSUyRkFMTCUyRlZpZGVvcyUyRllvdVR1YmUlMkZEVVNUJTIwJTVCVUM3c0RUOGpaNzZWTFYxdV9fa3JVdXRBJTVEJTJGU2NpLUZpJTIwU2hvcnQlMjBGaWxtJTIwLSUyMEFuZ2VsJTIwXyUyMERVU1QlMjBfJTIwT25saW5lJTIwUHJlbWllcmUlNUJZN0EzUGZBT3RwTSU1RCUyRW1wNHw5ZjgyYWMwZGIyYzEzNjgzLzIwMTkvMTkwMC0wMS0wMT9sYW5nPWVuczQKZ3VpZHMxOTQKeW91dHViZS1kbHwlMkZkYXRhJTJGQUxMJTJGVmlkZW9zJTJGWW91VHViZSUyRkRVU1QlMjAlNUJVQzdzRFQ4alo3NlZMVjF1X19rclV1dEElNUQlMkZTY2ktRmklMjBTaG9ydCUyMEZpbG0lMjAtJTIwQW5nZWwlMjBfJTIwRFVTVCUyMF8lMjBPbmxpbmUlMjBQcmVtaWVyZSU1Qlk3QTNQZkFPdHBNJTVEJTJFbXA0fDlmODJhYzBkYjJjMTM2ODNzMgppZHIwCg__
2022-02-20 05:16:06,625 (7fb0938f3b38) : DEBUG (model:32) - Loading model with GUID com.plexapp.agents.youtube-dl://youtube-dl|%2Fdata%2FALL%2FVideos%2FYouTube%2FDUST%20%5BUC7sDT8jZ76VLV1u__krUutA%5D%2FSci-Fi%20Short%20Film%20-%20Angel%20_%20DUST%20_%20Online%20Premiere%5BY7A3PfAOtpM%5D%2Emp4|9f82ac0db2c13683/2019/1900-01-01?lang=en
2022-02-20 05:16:06,625 (7fb0938f3b38) : ERROR (model:205) - Cannot read model from /config/Library/Application Support/Plex Media Server/Metadata/TV Shows/2/6effd9a820229851b1389376a140643b1748e4e.bundle/Contents/com.plexapp.agents.youtube-dl
2022-02-20 05:16:06,626 (7fb0938f3b38) : DEBUG (networking:143) - Requesting 'http://127.0.0.1:32400/library/metadata/115128/tree'
2022-02-20 05:16:06,630 (7fb0938f3b38) : INFO (__init__:27) - =============================================================================================================================================================
2022-02-20 05:16:06,650 (7fb0938f3b38) : INFO (__init__:69) - Processing: '/data/ALL/Videos/YouTube/DUST [UC7sDT8jZ76VLV1u__krUutA]/Sci-Fi Short Film World Builder _ DUST[OX1hSQwnngo]' in DUST
2022-02-20 05:16:06,651 (7fb0938f3b38) : INFO (__init__:75) - Found thumbnail /data/ALL/Videos/YouTube/DUST [UC7sDT8jZ76VLV1u__krUutA]/Sci-Fi Short Film World Builder _ DUST[OX1hSQwnngo].jpg
2022-02-20 05:16:06,666 (7fb0938f3b38) : INFO (__init__:102) - Processed successfully! This episode was named 'Sci-Fi Short Film “World Builder” | DUST'
2022-02-20 05:16:06,667 (7fb0938f3b38) : DEBUG (threadkit:234) - Starting a parallel task set named UpdateEpisodes with 0 tasks
2022-02-20 05:16:06,668 (7fb0938f3b38) : DEBUG (threadkit:244) - Parallel task set UpdateEpisodes ended
2022-02-20 05:16:06,671 (7fb0938f3b38) : DEBUG (model:229) - Serializing to /config/Library/Application Support/Plex Media Server/Metadata/TV Shows/2/6effd9a820229851b1389376a140643b1748e4e.bundle/Contents/com.plexapp.agents.youtube-dl/Info.xml
2022-02-20 05:16:06,672 (7fb0938f3b38) : DEBUG (runtime:88) - Sending packed state data (110 bytes)
2022-02-20 05:16:06,672 (7fb0938f3b38) : DEBUG (runtime:924) - Response: [200] str, 16 bytes
I have "validated the json file for the ones that error out with https://jsonlint.com/ the site says the files are valid
any ideas?
When running the agent with some test data almost all of the videos metadata are not being updated even though it says they are in the logs.
Testing on 4 random channels with 5 videos each, only three videos from one of the channel actually has the video metadata changed in plex. The rest of the videos metadata does not change. In the logs they all say processed successfully. It does correctly update the metadata.title and summary but none of the episode data. all videos have a corresponding .info.json and .png thumbnail.
I have tried several different file naming schemes for youtube DL with your agent and the absolute series scanner, and have fumbled my way into getting a few smaller channels to sort out properly. But my main youtuber has 12+ TB worth of videos and I'd like to get the agent reading them nicely before I go and download that many.
He does have many playlists available but I want to archive the entire channel which means instead of sorting by playlist I am trying to just download the entire channel as I don't want to miss any stray videos (of which there are many)
My last attempt was --output "C:\YouTube-Download%(uploader)s [%(uploader_id)s]%(upload_date)s %(title)s[%(id)s].%(ext)s"
all metadata and other settings work I just need the output set to the right permutation to get them sorted by.. Preferably year with the first "episode" being the first video of that year then the next being the second and so on, which is why I just tried upload date at the start.
The youtuber is Northernlion for reference and any help or advice is greatly appreciated at this point.
I was directed to this agent as I was worried about missing videos having no metadata if I have to change servers. I've been trying to get it up and running but it seems to not like how my files are named. yt-dlp is naming them as below:
%(uploader)s [%(channel_id)s]/Season %(upload_date>%Y)s/S%(upload_date>%Y)s E%(upload_date>%m%d)s%(playlist_autonumber)s ([%(height)sp][%(acodec)s][%(vcodec)s]) - %(title)s [%(id)s].%(ext)s
In the past the original agent from ZeroQI used this to create a TV YouTube Channel library. Each channel is sorted into seasons and the episode contains the date and the playlist number to prevent duplicate videos if there are multiple uploads in the same day.
Utilizing this naming convention with the Youtube-DL-Agent returns lots of strange results.
Mainly the Channel is split into seemingly random Season folders. Generally "Specials" and "Season 2023". The expected result would be a single "Season 2020". For example this video S2020 E0123001 - What is The Wheel of Time? [0gYnAdKvQ1s] - ([1080p][mp4a.40.2][vp9])
shows in the "Specials" season on Plex and is episode 501. I have no idea where the 501 came from or why the "Season 2020" folder is not being respected.
Please advise on what naming convention would best work with this agent to have the Yearly Season folders and episodes in date order.
The agent doesn't seem to use the thumbnail that 'youtube-dl' downloaded, even though it is present in the folder.
Plus should the title of the video in plex have the id?
I followed all the instructions carefully.
I don't know if I'm doing something wrong or the agent isn't working at the moment.
Good day everybody.
I was wondering if there is a way to auto scan for local media.
Made a script, to download quite some playlists.
And made it so it will auto download the playlist poster.
Is there a way to automaticly add the poster to plex?
I can pull in the image for the episodes, all the metadata loads properly but I can't get the channel to load the image.
So I ran into an issue where some of the art for many episodes was not working for some reason. I would refresh the metadata and plex would not pull in the .webp or .png image files made by Youtube-dl.
In the coding at line 71 and I changed it from:
for extension in [".jpg", ".webp"]:
To:
for extension in ['jpg', 'jpeg', 'png', 'tiff', 'gif', 'jp2', 'webp']:
And suddenly all of my episode art was being pulled in. This line now matches line 82 in the ZeroQI agent. I am unsure if that fixed it or something else randomly let it work.
And example of this was the episodes from Markiplier's Outlast 2 playthrough.
Hello,
I just installed & setup everything mention (absolute series scanner, YouTube-dl-agent, Plex library)
Some sample channels, which were downloaded by tubesync (incl. nfo & thumbnail), are recognized and displayed correctly in a separate tv show Plex library. Also the thumbnails are shown, but I don't see any information from the metadata file (nfo).
Did I miss something?
Hello, thank you for this plugin. I've been using it a bit and it's been great so far. However, I wanted to ask about migrating off of youtube-dl and moving it to yt-dlp. Given that youtube-dl is not as regularly maintained, there is a lot of additional functionality provided by yt-dlp. One specific one that I take advantage of is that it is not throttled when downloading.
Right now I can still get this plugin to work with yt-dlp and some adjusting, but wanted to see if you though it would be valuable to switch it over formally?
Symptom: When adding new videos, the metadata was not being matched properly, even on refresh
Logs
When checking the com.plexapp.agents.youtube-dl.log
, I was seeing the following error:
2021-12-30 20:13:12,367 (7f36b7868b38) : CRITICAL (agentkit:1095) - Exception in the update function of agent named 'Youtube-DL', called with guid 'com.plexapp.agents.youtube-dl://youtube-dl|%2Fdata%2Fmedia%2Fyoutube%2FWendover%20Productions%2FSeason%2001%2FWendover%20Productions_S01E00027_The%20News%20You%20Missed%20in%202021%2C%20From%20Every%20Country%20in%20the%20World%20%28Part%201%29%2Emkv|7963fd455125d10d?lang=en' (most recent call last): File "/usr/lib/plexmediaserver/Resources/Plug-ins-c43dc0277/Framework.bundle/Contents/Resources/Versions/2/Python/Framework/api/agentkit.py", line 1093, in _update agent.update(obj, media, lang, **kwargs) File "/config/Library/Application Support/Plex Media Server/Plug-ins/Youtube-DL-Agent.bundle/Contents/Code/__init__.py", line 60, in update def UpdateEpisodes(): File "/usr/lib/plexmediaserver/Resources/Plug-ins-c43dc0277/Framework.bundle/Contents/Resources/Versions/2/Python/Framework/api/threadkit.py", line 233, in _parallelize_decorator f(*args, **kwargs) File "/config/Library/Application Support/Plex Media Server/Plug-ins/Youtube-DL-Agent.bundle/Contents/Code/__init__.py", line 98, in UpdateEpisodes if data['average_rating']: File "/usr/lib/plexmediaserver/Resources/Plug-ins-c43dc0277/Framework.bundle/Contents/Resources/Versions/2/Python/Framework/code/sandbox.py", line 108, in <lambda> _getitem_ = lambda x, y: x.__getitem__(y), KeyError: 'average_rating'
I knew I had seen that error before when a video I downloaded had no dislikes, so I commented out the lines:
if data['average_rating']: episode.rating = (data['average_rating'] * 2)
The scanner is now able to retrieve the metadata (albeit without a rating, but that's YouTube's fault.
Suggested Fix: Removal of average rating, or modifying it to reflect whatever value YouTube actually provides now.
I'm having an issue with some files that are showing up as one 'episode' when they're completely different videos. How can I fix it?
https://i.imgur.com/QGOPJgf.png
https://i.imgur.com/Hu7RE7L.png
I currently have youtube-dl also download SRT subtitles. Currently with this agent it seems I'm unable to see them in plex, despite them being in the same folder as the video with the same name + language + extension. It would be nice to include this feature.
Hello,
I'm having an odd issue. Metadata isn't being updated in Plex, and it looks to be because the metadata files aren't being named correctly. In the Plex log I found this error:
So when I browsed to the path in the error, I found that the date on the file is actually one day less:
If I manually rename the folder and file to match what's in the Plex log, the error goes away and the metadata displays correctly.
The release data in the json both match what's in the path, not what's in the error:
This is what the downloaded file looks like (I use TubeSync):
And this is what it looks like in Plex:
So I guess I'm not sure if it's an error with TubeSync or ASS, but from the Plex error I assumed it's probably the agent?
This is the channel I'm testing with: https://www.youtube.com/@3DPrinty
Hey everyone,
I'm using the very latest version of the plugin in the latest version of Plex Media Server and it appears to be that the order of the "episodes" is incorrect. It's happened with a few channels I've been downloading and I wonder what the cause could be.
This is my youtube-dl
config:
-i
-a channels.txt
-o "/mnt/YouTube/%(uploader)s [%(channel_id)s]/E%(playlist_index)03d - %(title)s [%(id)s].%(ext)s"
--playlist-reverse
# Archive Settings
--download-archive archive.txt
# Uniform Format
--prefer-ffmpeg
--merge-output-format mkv
# Get All Subs to SRT
--write-sub
--all-subs
--convert-subs srt
# Get metadata
--add-metadata
--write-description
--write-info-json
--write-thumbnail
# Debug
-v
This is the channel URL I'm downloading: https://www.youtube.com/channel/UCqYPhGiB9tkShZorfgcL2lA
And this is an example of the downloaded files:
'E001 - How the Internet Ruins Productivity (by Design) [4Lx1kIrempw].description'
'E001 - How the Internet Ruins Productivity (by Design) [4Lx1kIrempw].en.srt'
'E001 - How the Internet Ruins Productivity (by Design) [4Lx1kIrempw].es.srt'
'E001 - How the Internet Ruins Productivity (by Design) [4Lx1kIrempw].fr.srt'
'E001 - How the Internet Ruins Productivity (by Design) [4Lx1kIrempw].info.json'
'E001 - How the Internet Ruins Productivity (by Design) [4Lx1kIrempw].mkv'
'E001 - How the Internet Ruins Productivity (by Design) [4Lx1kIrempw].nl.srt'
'E001 - How the Internet Ruins Productivity (by Design) [4Lx1kIrempw].pl.srt'
'E001 - How the Internet Ruins Productivity (by Design) [4Lx1kIrempw].pt.srt'
'E001 - How the Internet Ruins Productivity (by Design) [4Lx1kIrempw].sv.srt'
'E001 - How the Internet Ruins Productivity (by Design) [4Lx1kIrempw].webp'
'E001 - How the Internet Ruins Productivity (by Design) [4Lx1kIrempw].zh-CN.srt'
'E002 - Longevity & Why I now eat One Meal a Day [PKfR6bAXr-c].ar.srt'
'E002 - Longevity & Why I now eat One Meal a Day [PKfR6bAXr-c].description'
'E002 - Longevity & Why I now eat One Meal a Day [PKfR6bAXr-c].en.srt'
'E002 - Longevity & Why I now eat One Meal a Day [PKfR6bAXr-c].es-419.srt'
'E002 - Longevity & Why I now eat One Meal a Day [PKfR6bAXr-c].fr.srt'
'E002 - Longevity & Why I now eat One Meal a Day [PKfR6bAXr-c].info.json'
'E002 - Longevity & Why I now eat One Meal a Day [PKfR6bAXr-c].ja.srt'
'E002 - Longevity & Why I now eat One Meal a Day [PKfR6bAXr-c].mkv'
'E002 - Longevity & Why I now eat One Meal a Day [PKfR6bAXr-c].pt.srt'
'E002 - Longevity & Why I now eat One Meal a Day [PKfR6bAXr-c].ru.srt'
'E002 - Longevity & Why I now eat One Meal a Day [PKfR6bAXr-c].tr.srt'
'E002 - Longevity & Why I now eat One Meal a Day [PKfR6bAXr-c].uk.srt'
'E002 - Longevity & Why I now eat One Meal a Day [PKfR6bAXr-c].webp'
'E002 - Longevity & Why I now eat One Meal a Day [PKfR6bAXr-c].zh-TW.srt'
'E003 - The Story of Fat - Why we were Wrong about Health [5S6-v37nOtY].cs.srt'
'E003 - The Story of Fat - Why we were Wrong about Health [5S6-v37nOtY].description'
'E003 - The Story of Fat - Why we were Wrong about Health [5S6-v37nOtY].en.srt'
'E003 - The Story of Fat - Why we were Wrong about Health [5S6-v37nOtY].es.srt'
'E003 - The Story of Fat - Why we were Wrong about Health [5S6-v37nOtY].id.srt'
'E003 - The Story of Fat - Why we were Wrong about Health [5S6-v37nOtY].info.json'
'E003 - The Story of Fat - Why we were Wrong about Health [5S6-v37nOtY].jpg'
'E003 - The Story of Fat - Why we were Wrong about Health [5S6-v37nOtY].mkv'
'E003 - The Story of Fat - Why we were Wrong about Health [5S6-v37nOtY].pt-BR.srt'
'E003 - The Story of Fat - Why we were Wrong about Health [5S6-v37nOtY].ro.srt'
'E003 - The Story of Fat - Why we were Wrong about Health [5S6-v37nOtY].ru.srt'
'E003 - The Story of Fat - Why we were Wrong about Health [5S6-v37nOtY].zh-CN.srt'
I'm downloading older episodes first (upload order). As you can see, E001
is How the Internet Ruins Productivity
, just like it shows on the YouTube page but on Plex I see differently:
In Plex it's marked as Episode 6
.
It also places the "episodes" in the wrong "Season". As an example: episode E011
titled WHY Exercise is so Underrated (Brain Power & Movement Link)
is placed in Season 2021
when that video was released around 4 years ago.
Are you guys having the same issues? Any recommendations on how to fix those? Or it's just a bug of the plugin? If so, hopefully we can fix it soon, I'll try to help!
Thanks in advance!
Not sure if I'm just using this incorrectly or what the issue is but I'm not seeing any difference between this and the personal media agent. If anything this seems to work worse.
Using the youtube-dl format you suggest I tried (https://www.youtube.com/watch?v=UMp-IF6uPkk&list=PLTzMGnJjrsSy6H8uiX3XKWtUhhj2Vilw1) which I had hoped would give me the playlist as a show or atleast as a season under ramsay as the show but instead I get this.
This is the full command I'm using.
docker run --rm --user $(id -u):$(id -g) -v /mnt/user/Youtube:/data vimagick/youtube-dl \
--playlist-reverse --download-archive /data/downloaded.txt -i \
--batch-file /data/channels.txt \
--add-metadata --write-info-json --write-all-thumbnails \
--embed-subs --all-subs --write-description --write-annotation \
-f 'bestvideo[ext=mp4]+bestaudio[ext=m4a]/mp4' \
-o "%(uploader)s [%(uploader_id)s]/%(title)s[%(id)s].%(ext)s"
Where as if I use this command it works fine. Notice the last line.
docker run --rm --user $(id -u):$(id -g) -v /mnt/user/Youtube:/data vimagick/youtube-dl \
--playlist-reverse --download-archive /data/downloaded.txt -i \
--batch-file /data/channels.txt \
--add-metadata --write-info-json --write-all-thumbnails \
--embed-subs --all-subs --write-description --write-annotation \
-f 'bestvideo[ext=mp4]+bestaudio[ext=m4a]/mp4' \
-o "%(uploader)s/%(playlist)s/%(playlist)s - S01E%(playlist_index)s - %(title)s [%(id)s].%(ext)s""
Hello People,
Is it possible to put in the webpage_url into plex aswell.
I was trying the below in init.py
metadata.title = data['uploader'] metadata.studio = data['uploader'] if 'playlist_title' in data: metadata.summary = data['playlist_title'] elif 'description' in data: metadata.summary = data['description'] if 'webpage_url' in data: tags.director = data['webpage_url'] tag.director = data['webpage_url']
I need this, so i can sort it for my own plex api script.
Hopefully im asking this correctly.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.