ytdl-org / youtube-dl

Command-line program to download videos from YouTube.com and other video sites
http://ytdl-org.github.io/youtube-dl/
The Unlicense
132k stars 10.01k forks source link

ERROR: unable to download video data: <urlopen error EOF occurred in violation of protocol (_ssl.c:600)> #22553

Closed penalvch-zz closed 5 years ago

penalvch-zz commented 5 years ago

Checklist

Question

Would the following be considered a bug with youtube-dl, suspected webserver configuration issue, transient ISP issue, etc.: [START] youtube-dl -v -r 625000 "https://www.twitch.tv/videos/478330615?filter=archives&sort=time" [debug] System config: [] [debug] User config: [] [debug] Custom config: [] [debug] Command-line args: ['-v', '-r', '625000', 'https://www.twitch.tv/videos/478330615?filter=archives&sort=time'] [debug] Encodings: locale cp1252, fs mbcs, out cp437, pref cp1252 [debug] youtube-dl version 2019.09.28 [debug] Python version 3.4.4 (CPython) - Windows-10-10.0.18362 [debug] exe versions: ffmpeg 4.1.3, ffprobe 4.1.3 [debug] Proxy map: {} [twitch:vod] 478330615: Downloading vod info JSON [twitch:vod] 478330615: Downloading vod access token [twitch:vod] 478330615: Downloading m3u8 information [debug] Default format spec: bestvideo+bestaudio/best [debug] Invoking downloader on 'https://vod-metro.twitch.tv/5a226a76b58d462c8af8_overwatchleague_35581451232_1292517779/chunked/index-dvr.m3u8' [hlsnative] Downloading m3u8 manifest [hlsnative] Total fragments: 567 [download] Destination: ReWatch 2019 Season Playoffs Week 2 Day 2 -v478330615.mp4 [download] 11.3% of ~4.17GiB at 609.63KiB/s ETA 05:01:17 ERROR: unable to download video data: <urlopen error EOF occurred in violation of protocol (_ssl.c:600)> Traceback (most recent call last): File "C:\Python\Python34\lib\urllib\request.py", line 1183, in do_open File "C:\Python\Python34\lib\http\client.py", line 1137, in request File "C:\Python\Python34\lib\http\client.py", line 1182, in _send_request File "C:\Python\Python34\lib\http\client.py", line 1133, in endheaders File "C:\Python\Python34\lib\http\client.py", line 963, in _send_output File "C:\Python\Python34\lib\http\client.py", line 898, in send File "C:\Python\Python34\lib\http\client.py", line 1287, in connect File "C:\Python\Python34\lib\ssl.py", line 362, in wrap_socket File "C:\Python\Python34\lib\ssl.py", line 580, in init File "C:\Python\Python34\lib\ssl.py", line 807, in do_handshake ssl.SSLEOFError: EOF occurred in violation of protocol (_ssl.c:600)

During handling of the above exception, another exception occurred:

Traceback (most recent call last): File "C:\Users\dst\AppData\Roaming\Build archive\youtube-dl\ytdl-org\tmpyi91grvc\build\youtube_dl\YoutubeDL.py", line 1925, in process_info File "C:\Users\dst\AppData\Roaming\Build archive\youtube-dl\ytdl-org\tmpyi91grvc\build\youtube_dl\YoutubeDL.py", line 1864, in dl File "C:\Users\dst\AppData\Roaming\Build archive\youtube-dl\ytdl-org\tmpyi91grvc\build\youtube_dl\downloader\common.py", line 366, in download File "C:\Users\dst\AppData\Roaming\Build archive\youtube-dl\ytdl-org\tmpyi91grvc\build\youtube_dl\downloader\hls.py", line 148, in real_download File "C:\Users\dst\AppData\Roaming\Build archive\youtube-dl\ytdl-org\tmpyi91grvc\build\youtube_dl\downloader\fragment.py", line 102, in _download_fragment File "C:\Users\dst\AppData\Roaming\Build archive\youtube-dl\ytdl-org\tmpyi91grvc\build\youtube_dl\downloader\common.py", line 366, in download File "C:\Users\dst\AppData\Roaming\Build archive\youtube-dl\ytdl-org\tmpyi91grvc\build\youtube_dl\downloader\http.py", line 341, in real_download File "C:\Users\dst\AppData\Roaming\Build archive\youtube-dl\ytdl-org\tmpyi91grvc\build\youtube_dl\downloader\http.py", line 109, in establish_connection File "C:\Users\dst\AppData\Roaming\Build archive\youtube-dl\ytdl-org\tmpyi91grvc\build\youtube_dl\YoutubeDL.py", line 2237, in urlopen File "C:\Python\Python34\lib\urllib\request.py", line 464, in open File "C:\Python\Python34\lib\urllib\request.py", line 482, in _open File "C:\Python\Python34\lib\urllib\request.py", line 442, in _call_chain File "C:\Users\dst\AppData\Roaming\Build archive\youtube-dl\ytdl-org\tmpyi91grvc\build\youtube_dl\utils.py", line 2724, in https_open File "C:\Python\Python34\lib\urllib\request.py", line 1185, in do_open urllib.error.URLError: <urlopen error EOF occurred in violation of protocol (_ssl.c:600)> [END]

Reproducible with: youtube-dl -r 625000 "https://www.twitch.tv/videos/478330615?filter=archives&sort=time" youtube-dl "https://www.twitch.tv/videos/478330615?filter=archives&sort=time"

Also, would there be a potential WORKAROUND for this problem?

dstftw commented 5 years ago

Most likely intermittent network issue on your side.

penalvch-zz commented 5 years ago

dstftw, thanks for the quick follow up. I am not able to twiddle around with the configs of the router/modem much, or interrogate the ISP about service. I'm still looking for a reasonable WORKAROUND, so that if the event occurs, youtube-dl handles it more gracefully (if possible), and just keeps trying again and again without my continued intervention.

Would there be anything at the project level, or switch level that could be improved?

Same thing reproducible with various permutations of: youtube-dl --http-chunk-size 250 -r 250000 --fragment-retries infinite -R infinite URL