Commit graph

319 commits

Author SHA1 Message Date
Sergey M․ b91a7a4e5e
[downloader/http] Randomize HTTP chunk size 2018-02-04 07:33:18 +07:00
Sergey M․ 00c97e3e7a
[downloader/http] Add ability to pass downloader options via info dict 2018-02-04 07:16:22 +07:00
Sergey M․ cf7259bc93
[downloader/http] Fix 302 infinite loops by not reusing requests 2018-02-04 06:58:34 +07:00
Sergey M․ b54d4a5ce8
Document http_chunk_size 2018-02-04 02:53:50 +07:00
Sergey M․ ba515388b8
Introduce --http-chunk-size 2018-02-03 23:08:58 +07:00
Sergey M․ 65220c3bd6
Add support for IronPython 2018-01-28 05:48:18 +07:00
Sergey M․ c989bdbef8
[downloader/ism] Fix Python 3.2 support 2018-01-28 05:20:21 +07:00
Sergey M․ cf2820710d
Switch codebase to use compat_b64decode 2018-01-23 22:23:12 +07:00
Sergey M․ 538d4f8681
[downloader/hls] Use HTTP headers for key request 2017-12-31 01:15:35 +07:00
Sergey M․ 99081da90c
[downloader/fragment] Encode filename of fragment being removed (closes #15020) 2017-12-18 03:31:53 +07:00
Sergey M․ bec49996c6
[downloader/http] Return actual download result (closes #14971) 2017-12-13 23:49:05 +07:00
Sergey M․ 593f2f7989
[downloader/fragment] Commit part file after each fragment
In order to obtain correct resume_len on next iteration
2017-12-02 21:21:11 +07:00
Sergey M․ 48107c198b
[f4m] Prefer baseURL for relative URLs (closes #14660) 2017-11-04 22:10:55 +07:00
Sergey M․ 6f3b4a98c9
[downloader/fragment] Report warning instead of error on inconsistent download state 2017-10-17 22:53:34 +07:00
Sergey M․ a9ee4f6e49
[downloader/hls] Fix total fragments count when ad fragments exist 2017-10-15 11:03:54 +07:00
Sergey M․ 74c42d9ec3
[downloader/hls] Ignore anvato ad fragments (closes #14496) 2017-10-15 06:13:48 +07:00
Sergey M․ 5efaf43c93
[downloader/fragment] Output ad fragment count 2017-10-15 06:13:07 +07:00
Sergey M․ e7c3e33456
[downloader/fragment] Restart inconsistent incomplete fragment downloads (#13731) 2017-09-14 23:19:53 +07:00
Sergey M․ a3c3a1e128
[http] Rework HTTP downloader
* Simplify code and split into separate routines to facilitate maintaining
* Make retry mechanism work on errors during actual download not only during connection establishment phase
* Retry on ECONNRESET and ETIMEDOUT during reading data from network
* Retry on content too short and various timeout errors
* Show error description on retry
* Closes #506, closes #809, closes #2849, closes #4240, closes #6023, closes #8625, closes #9483
2017-08-27 02:22:30 +07:00
Sergey M․ 1141e9104b
Use relative paths for DASH fragments (closes #12990)
10x reduced JSON size
refs #13810
2017-08-05 07:40:29 +07:00
Sergey M․ c5a49ff084
[downloader/hls] Use redirect URL as manifest base (#13755) 2017-07-29 15:02:41 +07:00
Robin Neatherway 2583c0b54e Fix bugs caused by typos 2017-07-14 23:08:32 +07:00
Sergey M․ 1433734c35
[downloader/common] Use utils.shell_quote for debug command line 2017-06-17 23:50:21 +07:00
Sergey M․ a609e61a90
[downloader/external] Pass -loglevel to ffmpeg downloader (closes #13183) 2017-05-22 23:40:07 +07:00
Sergey M․ 50534b7158
[downloader/fragment] PEP 8 2017-04-30 22:04:01 +07:00
Sergey M․ e7db6759e4
[downloader/external] Properly handle live stream downloading cancellation (closes #8932) 2017-04-29 04:33:35 +07:00
Sergey M․ c0fa4245ce
[downloader/fragment] Remove assert for resume_len when no fragments downloaded
This may be incorrect due some header (e.g. flv header in f4m downloader)
2017-04-28 03:26:19 +07:00
Sergey M․ 85f6de25e4
[downloader/fragment] Clarify current_fragment's index and mark as experimental 2017-04-25 23:33:35 +07:00
Sergey M․ 290f64dbaa
[downloader/fragment] Improve .ytdl format and start documenting 2017-04-24 23:50:20 +07:00
Sergey M․ adb4b03cd5
[downloader/fragment] Don't process ytdl file when it's not needed yet 2017-04-24 23:05:56 +07:00
Sergey M․ 0eee52f34b
Introduce --keep-fragments 2017-04-24 03:09:08 +07:00
Sergey M․ d3f0687cf7
[downloader/fragment] Use temp file for current fragment 2017-04-24 02:54:17 +07:00
Remita Amine 4abdba643c [downloader/fragment] remove unused code 2017-04-22 18:19:47 +01:00
Remita Amine 3e0304fe6e [downloader/fragment] use the documented names for fragment progress_hooks fields 2017-04-22 16:42:24 +01:00
Remita Amine ea0c2f219c [downloader/fragment] use a general file to store fragment download context 2017-04-19 18:53:15 +01:00
Remita Amine 75a2485407 [fragment,hls,f4m,dash,ism] improve fragment downloading
- resume immediately
- no need to concatenate segments and decrypt them on every resume
- no need to save temp files for segments

and for hls downloader:
- no need to download keys for segments that already downloaded
2017-04-19 11:46:07 +01:00
Remita Amine f59746372a [downloader/hls] add basic support for EXT-X-BYTERANGE tag(#10955) 2017-04-13 12:28:22 +01:00
Remita Amine 40fcba5edb improve coding style 2017-04-12 20:38:43 +01:00
Remita Amine 2bfaf89b6c [downloader/hls] move check for m3u8 live streams to get_suitable_downloader 2017-03-25 23:07:05 +01:00
Remita Amine fb4fc44928 [downloader/hls] immediately delegate downloading to ffmpeg in case live stream 2017-03-25 19:38:23 +01:00
Sergey M․ a50862b735
[downloader/external] Add missing import and PEP8 2017-03-05 10:24:29 +07:00
John Hawkinson 6d0fe752bf [external:ffmpeg] In test harness, limit to 10k download size
Otherwise, if you screw up a playlist test by including a playlist
dictionary key, you'll be there for eons while it downloads all the
files before erroring out.
2017-03-05 11:19:44 +08:00
Pratyush Singh d374d943f3
[downloader/common] Limit displaying 2 digits after decimal point in sleep interval message 2017-02-25 20:59:04 +07:00
Sergey M․ de64e23c56
[downloader/ism] Honor HTTP headers when downloading fragments 2017-02-19 04:18:36 +07:00
Sergey M․ 553f6dbac7
[downloader/dash] Honor HTTP headers when downloading fragments
For example, https://www.oppetarkiv.se/video/1196142/natten-ar-dagens-mor
2017-02-19 04:18:22 +07:00
Remita Amine be670b8e8f [external:ffmpeg] do not assume that ffmpeg unknown version format is new 2017-02-09 17:36:59 +01:00
Sergey M․ 7097bffba6
[downloader/fragment] Respect --no-part 2017-02-06 23:07:59 +07:00
Remita Amine 36fce54816 [turner] fix downloading of secure hls formats using ffmpeg(closes #11358)(closes #11373)(closes #11800) 2017-02-04 15:23:46 +01:00
Remita Amine 8bdc149441 [downloader/external:ffmpeg] minimize the use of aac_adtstoasc filter 2017-02-02 08:07:28 +01:00
Remita Amine bfa1073e11 [uplynk] force downloading using hls native downloader(closes #11496) 2016-12-20 19:49:45 +01:00