Open chrizilla opened 1 year ago
Retrying (13/inf)...
It is failing on the same block again and again, as seen from the increasing retry count.
Why do you think otherwise?
@pukkandan : I don't know how you can look at the log, particularly the increasing progress percentage and don't come to the conclusion that there is download progress ?
[download] 3.4%
[download] 3.6%
[download] 3.7%
[download] 4.0%
[download] 4.2%
[download] 4.2%
[download] 4.4%
[download] 4.7%
[download] 4.8%
[download] 5.2%
[download] 5.5%
[download] 5.6%
[download] 5.7%
My request is that
when yt-dlp wakes up from sleep and […] ... does not immediately fail again (i.e. successfully continues to download), the sleep time counter should be reset.
Basically you want any download progress to be treated as not a retry, even on reset?
@Grub4K : Could you please define "reset" in this context here ? (Pending understanding of what exactly a reset is, I would tentatively answer your question as: Download progress should reset the sleep counter to its initial value.)
pukkandan added
invalid
label
@pukkandan : You may not like the suggestion (and I can't fathom how one could possibly not like it), but it certainly is not "invalid", so I think there must be a misunderstanding somewhere.
My request for enhancement is this:
• error ► sleep ► wake up ► immediate fail ► increase exponential waiting time ► sleep • error ► sleep ► wake up ► download continues successfully (no immediate fail) ► reset sleep time counter ► later fails again ► sleep (with initial duration)
DO NOT REMOVE OR SKIP THE ISSUE TEMPLATE
Checklist
Provide a description that is worded well enough to be understood
Exponential
--retry-sleep
is very useful, but doesn't quite work as I would have expected.Let's look at the following example:
With
I got this:
I don't think this makes much sense.
If an error occurs (such as above),
--retry-sleep
sends yt-dlp to sleep, ok. Now, when yt-dlp wakes up from sleep andrationale
IMO the reason for exponential sleep time is to avoid continuously bumping into the same error with linear sleep time (i.e. trying to download every 2 seconds does not help when the server is currently down). Exponential sleep time is there sleep longer and longer and longer ... until the error goes away. But when the error has gone away, the counter should be reset, because it otherwise hampers the download unnecessarily (as shown in the example above).
Provide verbose output that clearly demonstrates the problem
yt-dlp -vU <your command line>
)'verbose': True
toYoutubeDL
params instead[debug] Command-line config
) and insert it belowComplete Verbose Output
full log
```shell [debug] Command-line config: ['https://www.dailymotion.com/video/x84f4u7'] [debug] Portable config "c:\hp\-\!portable\yt-dlp\yt-dlp.conf": ['--verbose', '--downloader-args', 'ffmpeg:-v 8 -stats -allowed_extensions ALL', '--no-playlist', '--format-sort', 'hasvid,ie_pref,quality,res,hdr,codec,size,br,asr,ext,fps,hasaud,lang,source,proto,id', '-F', '-f', 'bestvideo*+bestaudio/best', '-f-', '--paths', 'c:\\hp\\-\\#YT', '--download-archive', 'history.log', '--ffmpeg-location', '.\\helpertools\\FFmpeg\\bin', '--no-simulate', '--no-quiet', '--progress', '--write-info-json', '--write-description', '--write-annotations', '--write-playlist-metafiles', '--get-comments', '--write-link', '--write-url-link', '--write-desktop-link', '--no-overwrites', '--no-post-overwrites', '--merge-output-format', 'mkv', '--remux-video', 'mkv', '--list-subs', '--write-subs', '--write-auto-subs', '--all-subs', '--sub-format', 'all/ttml/vtt/best', '--sub-langs', 'all', '--extractor-args', 'youtube:skip=translated_subs', '--write-thumbnail', '--write-all-thumbnails', '--embed-metadata', '--embed-chapters', '--no-embed-info-json', '--no-check-certificate', '--retries', 'inf', '--file-access-retries', 'inf', '--fragment-retries', 'inf', '--no-skip-unavailable-fragments', '--retry-sleep', 'exp=1', '--retry-sleep', 'http,fragment,file_access,extractor:exp=1', '--geo-bypass', '--audio-multistreams', '--print', 'pre_process:\r\n========================================================= %(epoch>%Y-%m-%d [%H:%M:%S])s ========== stage 1: pre_process =================================================================\r\n', '--print', 'after_filter:\r\n========================================================= %(epoch>%Y-%m-%d [%H:%M:%S])s ========== stage 2: after_filter ================================================================\r\n', '--print', 'video:\r\n========================================================= %(epoch>%Y-%m-%d [%H:%M:%S])s ========== stage 3: video =======================================================================\r\n', '--print', 'before_dl:\r\n========================================================= %(epoch>%Y-%m-%d [%H:%M:%S])s ========== stage 4: before_dl ===================================================================\r\n', '--print', 'post_process:\r\n========================================================= %(epoch>%Y-%m-%d [%H:%M:%S])s ========== stage 5: post_process ================================================================\r\n', '--print', 'after_move:\r\n========================================================= %(epoch>%Y-%m-%d [%H:%M:%S])s ========== stage 6: after_move ==================================================================\r\n', '--print', 'after_video:\r\n========================================================= %(epoch>%Y-%m-%d [%H:%M:%S])s ========== stage 7: after_video =================================================================\r\n', '--print', 'playlist:\r\n========================================================= %(epoch>%Y-%m-%d [%H:%M:%S])s ========== stage 8: playlist ====================================================================\r\n', '--output-na-placeholder', '~~', '--parse-metadata', '%(is_live)s:(?P