-
-
Notifications
You must be signed in to change notification settings - Fork 7.3k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[youtube] Support --download-sections with formats --live-from-start #6498
base: master
Are you sure you want to change the base?
Conversation
A range like '*(now-1hour)-(now-30minutes)' doesn't work
The approach looks good. There are a few part that I don't understand, but I'll do a full review when this is undrafted
We had the plan to support negative values as timestamp from end of stream. So, this would be |
Authored by: D0LLYNH0
Authored by: C0D3D3V
Bug in 8c53322 Closes yt-dlp#6490
and related cleanup Thanks @AudricV for the finding
Closes yt-dlp#6494 Authored by: elyse0
Authored by: makeworld-the-better-one Closes yt-dlp#6395
Authored by: C0D3D3V
Authored by: vampirefrog
…p#6254) Authored by: Lesmiscore, pukkandan
Building fragment list for all formats take significant time for large videos
This reverts commit 1799a6a.
@JayXon Try pulling / reinstalling the branch. It's working OK for me after resolving the merge conflict. Double check that you are using the correct syntax; it is different than the regular |
same error after pulling, I'm not using
|
@JayXon I have no idea what's going on if you don't provide the URL and a log |
I keep running into this issue and seem to have found a consistent case where it happens. It seems to happen when the stream has ultra low latency live mode enabled, uses AVC1, and has DVR disabled. Successful instances (DVR disabled on all): Failed instances where it froze (DVR disabled on all): AVC1 and Ultra Low Latency were used with this stream, but DVR was enabled. It was successful here. Verbose of my executions. The second and last ran are the ones that failed and had AVC1, ULL mode, and DVR disabled.
I reproduced the issue on 4 machines. 3 Windows, one Arch Linux. All of the above were taken on a Windows device. I both tried compiling it myself, which is what these were from and also had the same issues with the bashonly/yt-dlp releases at https://github.com/bashonly/yt-dlp/releases The part files also appear empty until the terminal window is closed, at which point they will have their proper size. When it is closed, you can rename the part files and manually merge them with ffmpeg for what appears to be the whole specified section. Unlike what the person in the other thread said, it does not appear like the clip ever successfully finishes no matter how much time is given. |
@bashonly @pukkandan Any progress in getting this PR merged? |
IMPORTANT: PRs without the template will be CLOSED
Description of your pull request and other information
Like #5822, this PR adds support for downloading a specific section of a YT livestream format with --live-from-start, but with a different approach.
The Dash parser now extracts the
start
andend
timestamps of each fragment and the fragment_generator code uses them to filter based on the selected range. A big advantage over #5822 is that these changes could allow support for --download-sections on any Dash livestream, if/when that downloader is implemented.Section selector
The current approach for specifying a range is using a new # syntax and negative durations, where these durations are relative to "now".
Fixes #3451
Template
Before submitting a pull request make sure you have:
In order to be accepted and merged into yt-dlp each piece of code must be in public domain or released under Unlicense. Check all of the following options that apply:
What is the purpose of your pull request?