Cross-Service YT-DLP Scraping Util #126
Labels
No labels
Bug
Cleanup/Refactor
Core Feature
Documentation
Feature
Performance Improvement
Security Improvement
UX/Accessibility
Unreproducable Bug
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference: rainbownapkin/canopy#126
Loading…
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Create a local YT-DLP Metadata Scraping Util.
Unfortunately reliably working piped/invidious instances with public IP's have pretty much vanished, the few that remain have disabled API and added captchas in desperation.
This is our quickest/easiest option for pulling YT data ourselves without registering some bullshit API key.
Otherwise, if our IP gets banned by google, we may have to resort to hosting our own piped/invidious instance locally(either on machine or LAN), while running it off of a separate global IP. Though it would still be good for other sources, or smaller canopy instances which might slip through the cracks.
added #124 as parent issue
changed the description
Canopy Custom Media Object Creation from YT-DLP partially-implemented:
0ce0685fd5Still need to refresh on queue from playlist, or upon playback if it was queued more than a couple of minutes ago.
Also need to fix queueing functions to wait until after media metadata has arrived to set the start date if starting now.
mentioned in task #127
changed title from
YTDLP Backup PullertoYT-DLP Scraping Utilchanged title from
YT-DLP Scraping UtiltoCross-Service YT-DLP Scraping Utilchanged the description
changed the description
changed the description
changed the description
changed the description
Youtube videos now refresh raw file link 10 seconds before playback starts to ensure it's ready to be sent to the client. In the advent the pull takes longer than 10 seconds, the update will be sent out live to the clients so they can hotswap the video and play the remainder:
60cd21d938Still need to refresh raw links for:
Items re-hydrated from playlist or after server restart that begin in less than 10 seconds
Items re-hydrated after server restart that begin in less than 10 seconds or have already started
Items which where already queued, and then moved to start within 10 seconds
-- OR --
This last option is probably the cleanest, and solves other issues while also reducing the amount of youtube scrapes.
refreshRawLink() now checks link expiration to make sure link actually requires a refresh, scheduleMedia() refreshes any items that start before the preSwitchDelta:
2a3740deceLooks like youtube scraping for YT-DLP is complete. I'll play around with Dailymotion and Vimeo before continuing...
Dailymotion looks workable, though we'll need to get HLS playback working before we can get it playing proper. This would also benefit youtube playback, on top of being a requirement for livestreams, so that'll be a big improvement.
Vimeo seems to pull unreliably from YT-DLP, however it has an API that works just fine anonymously which should at least be enough to get their official embed working...