Sergey M․
690355551c
[downoader/fragment,f4m,hls] Add internal support for custom HTTP headers
8 years ago
Sergey M․
9d64e1dcdc
[downloader/ism] Fix typo
8 years ago
Remita Amine
10380e55de
[downloader/ism] fix AVC Decoder Configuration Record creation in python 3
8 years ago
Remita Amine
b2758123c5
add Basic support for Smooth Streaming protocol( #8118 )
8 years ago
Sergey M․
bcd6276520
[downloader/common] Remove debug output
8 years ago
Yen Chi Hsuan
d54739a2e6
[downloader/http] xattr values should be bytes
8 years ago
Yen Chi Hsuan
d7753d1948
[downloader/http] Use write_xattr function for --xattr-set-filesize
8 years ago
Remita Amine
6f126d903f
[download/hls] Delegate downloading to ffmpeg for live streams
8 years ago
Sergey M․
86f4d14f81
Refactor fragments interface and dash segments downloader
...
- Eliminate segment_urls and initialization_url
+ Introduce manifest_url (manifest may contain unfragmented data in this case url will be used for direct media URL and manifest_url for manifest itself correspondingly)
* Rewrite dashsegments downloader to use fragments data
* Improve generic mpd extraction
8 years ago
Yen Chi Hsuan
919cf1a62f
[downloader/dash] Abort if the first segment fails
...
Closes #10497 , Closes #10542
8 years ago
Sergey M․
4a69fa04e0
[downloader/dash] Abort download immediately after giving up on some fragment
8 years ago
Sergey M․
2e99cd30c3
[downloader/dash:hls] Report exact fragment error on retry
8 years ago
Sergey M․
25afc2a783
[downloader/dash:hls] Respect --fragment-retries and --skip-unavailable-fragments ( Closes #10165 , closes #10448 )
8 years ago
Sergey M․
9603b66012
Introduce --skip-unavailable-fragments
8 years ago
Yen Chi Hsuan
6c9b71bc08
[downloader/external] Recommend --hls-prefer-native for SOCKS users
...
Related: #10490
8 years ago
Remita Amine
b8079a40bc
[turner] fix secure m3u8 formats downloading
8 years ago
Yen Chi Hsuan
20bad91d76
[downloader/external] Clarify that ffmpeg doesn't support SOCKS
...
Ref: #10304
8 years ago
Remita Amine
07ea9c9b05
[downloader/hls] fill IV with zeros for IVs shorter than 16-octet
8 years ago
Remita Amine
aaf44a2f47
[uplynk] Add new extractor
8 years ago
Remita Amine
acfccacad5
[downloader/external:curl] Clarify why CurlFD should not capture stderr
8 years ago
Remita Amine
98e698f1ff
[external/curl] respect more downloader options and display progress
8 years ago
Sergey M․
1ad6b891b2
Add more checks for --min/max-sleep-interval arguments and use more idiomatic naming
8 years ago
singh-pratyush96
065bc35489
Add --max-sleep-interval ( Closes #9930 )
8 years ago
Yen Chi Hsuan
477b7a8474
[downloader/f4m] Fix for Rai live streams
8 years ago
Sergey M․
8369a4fe76
[downloader/hls] Simplify and carry long lines
8 years ago
remitamine
e154c65128
[downloader/hls] Add support for AES-128 encrypted segments in hlsnative downloader
8 years ago
Sergey M․
e69f9f5d68
[downloader/external] Decode error string before writing to stderr
9 years ago
Yen Chi Hsuan
50ce1c331c
[downloader/external] Add another env for proxies in ffmpeg/avconv
...
Related sources:
https://git.libav.org/?p=libav.git;a=blob;f=libavformat/http.c;h=8fe8d11e1edfdbb04a8726db2c49cfef3f572aac;hb=HEAD#l152
https://git.libav.org/?p=libav.git;a=blob;f=libavformat/tls.c;h=fab243e93e20034e88e619188c13a44a5d8ccdb9;hb=HEAD#l63
https://github.com/FFmpeg/FFmpeg/blob/f8e89d8/libavformat/http.c#L191
https://github.com/FFmpeg/FFmpeg/blob/f8e89d8/libavformat/tls.c#L92
9 years ago
Sergey M․
633b444fd2
[downloader/hls] Correct comment on twitch vods
9 years ago
Sergey M․
51c4d85ce7
[downloader/hls] PEP 8
9 years ago
Sergey M․
1e236d7e23
[downloader/hls] Do not rely on EXT-X-PLAYLIST-TYPE:EVENT
9 years ago
Sergey M․
2615fa7584
[downloader/f4m] Simply select format when it's the only one
9 years ago
Yen Chi Hsuan
1b405bb47d
[downloader/f4m] Tolerate truncate segments when testing
...
Replaces #9216
Fixes #9214 and test_Bloomberg partially
9 years ago
Yen Chi Hsuan
edaa23f822
[compat] Rename struct_(un)pack to compat_struct_(un)pack
9 years ago
Yen Chi Hsuan
dab0daeeb0
[utils,compat] Move struct_pack and struct_unpack to compat.py
9 years ago
Sergey M․
2937590e8b
[downloader/hls] PEP 8
9 years ago
Sergey M․
e62d9c5caa
[downloader/external] Call ffmpeg with with HTTP_PROXY env variable set ( #9437 )
9 years ago
Sergey M․
6104cc2985
[downloader/hls] Add event media playlists to unsupported features of hlsnative
9 years ago
Sergey M․
c15c47d19b
[downloader/hls] Remove EXT-X-MEDIA-SEQUENCE from unsupported features for hlsnative
9 years ago
Sergey M
eb785b856f
Merge pull request #9358 from dstftw/hls-native-to-ffmpeg-delegation
...
[downloader/hls] Delegate extraction to ffmpeg when unsupported features detected
9 years ago
Sergey M․
f5436c5d9e
[downloader/external] Add temp fix ffmpeg m3u8 downloads ( Closes #9394 )
9 years ago
Sergey M․
0d66bd0eab
[downloader/hls] Delegate extraction to ffmpeg when unsupported features detected
9 years ago
Sergey M․
bf09af3acb
Add --hls-prefer-ffmpeg
9 years ago
remitamine
d868f43c58
[ffmpeg] check for - file name in _ffmpeg_filename_argument
9 years ago
remitamine
ce599d5a7e
[downloader/external] enable piping for FFmpegFD( closes #2124 )
9 years ago
Yen Chi Hsuan
f5d8743e0a
[downloader/rtsp] Print the command
9 years ago
Sergey M․
f7df343b4a
[downloader/f4m] Extract routine for removing unsupported encrypted media
9 years ago
Sergey M․
16a8b7986b
[downloader/fragment] Document fragment_retries
9 years ago
Sergey M․
617e58d850
[downloader/{common,fragment}] Fix total retries reporting on python 2.6
9 years ago
Sergey M․
e33baba0dd
[downloader/dash] Add fragment retry capability
...
YouTube may often return 404 HTTP error for a fragment causing the
whole download to fail. However if the same fragment is immediately
retried with the same request data this usually succeeds (1-2 attemps
is usually enough) thus allowing to download the whole file successfully.
So, we will retry all fragments that fail with 404 HTTP error for now.
9 years ago
Sergey M․
721f26b821
[downloader/fragment] Add report_retry_fragment
9 years ago
remitamine
4230c4894d
[external/downloader] fix rtmp downloading using FFmpegFD
9 years ago
remitamine
2e7e561c1d
Merge pull request #8611 from remitamine/ffmpegfd
...
[downloader/external] Add FFmpegFD
9 years ago
remitamine
d8515fd41c
[downloader/external] pass configuration args to ffmpeg
9 years ago
remitamine
694c47b261
[external/downloader] don't pass -t and -ss to ffmpeg
9 years ago
remitamine
77dea16ac8
[downloader/external] check for ffmpeg availablity when it used for m3u8 download
9 years ago
remitamine
6ae27bed01
[download/external] move the check for multiple selected formats to get_suitable_downloader
9 years ago
remitamine
da1973a038
[extractor/__init__] disable time range downloading
9 years ago
remitamine
be24916a7f
[downloader/rtsp] Add rtsp and mms downloader
9 years ago
remitamine
2cb99ebbd0
[downloader/external] add can_download mathod for checking downloader availibilty and support
9 years ago
remitamine
91ee320bfa
[downloader/external] wrap available_opt in a list
9 years ago
remitamine
634415ca17
[downloader/external] skip FFmpegFD when requesting multiple formats
9 years ago
remitamine
a755f82549
[ffmpeg] convert format ext to ffmpeg output formats codes
9 years ago
Sergey M․
1b5284b13f
[downloader/fragment] Make speed more smooth
...
At the beginning of every segment there was a drop to Unknown speed due to timeslice being too small to calculate speed.
Now last speed from the previous fragment is used.
9 years ago
Yen Chi Hsuan
e9c0cdd389
[jython] Introduce compat_os_name
...
os.name is always 'java' on Jython
9 years ago
remitamine
f34294fa0c
[downloader/external:ffmpegfd] check for None value of start_time
9 years ago
remitamine
99cbe98ce8
[downloader/external] check for external downloaders availability
9 years ago
remitamine
12b84ac8c1
[downloader/external] Add FFmpegFD( fixes #622 )
...
- replace HlsFD and RtspFD
- add basic support for downloading part of the video or audio
9 years ago
Sergey M․
611c1dd96e
[refactor] Single quotes consistency
9 years ago
Sergey M․
d800609c62
[refactor] Do not specify redundant None as second argument in dict.get()
9 years ago
Sergey M․
c78c9cd10d
[downloader/dash] PEP 8
9 years ago
remitamine
c43fe0268c
[downloader/dash] Implement dashsegments fd in terms of fragment fd
9 years ago
Sergey M․
56401e1e5f
[downloader/hls] Do not send 'q' to ffmpeg on Windows ( Closes #8300 )
9 years ago
remitamine
a1a22572fb
[downloader/dash] make initialization_url optional
9 years ago
Sergey M․
b8c9926c0a
[downloader/f4m] Do not update fragment list while test
9 years ago
Sergey M․
2c2f1efdcd
[downloader/fragment] Remove superfluous whitespace
9 years ago
Sergey M․
09104e9930
[downloader/f4m] Add live stream flag to context
...
Now download progress for f4m livestreams is reported correctly
9 years ago
Sergey M․
5fa1702ca6
[downloader/fragment] Do not report total bytes estimation and eta for live streams
9 years ago
Sergey M․
8ab3fe81d8
[downloader/f4m] Prefer bootstrap url attribute over inline bootstrap info
9 years ago
Jaime Marquínez Ferrándiz
7d106a65ca
Add --hls-use-mpegts option
...
When using the mpegts container hls vidoes can be played while being downloaded (useful if you are recording a live stream).
VLC and mpv play them file, but QuickTime doesn't.
9 years ago
Jaime Marquínez Ferrándiz
32d77eeb04
[downloader/common] report_retry: Don't crash when retries is infinite ( fixes #8299 )
9 years ago
Jaime Marquínez Ferrándiz
9d90e7de03
[downloader/hls] Ask ffmpeg to quit when interrupting youtube-dl with 'Ctrl+C' ( #8252 )
...
Otherwise the mp4 file can't be played.
9 years ago
Sergey M․
b83b782dc4
[downloader/fragment] Move helper data to context dict
9 years ago
Sergey M․
709185a264
[downloader/fragment] More smooth calculations
...
`downloaded_bytes` is now updated on each fragment progress hook invocation
9 years ago
Sergey M․
9cb1a06b6c
[downloader/fragment] Remove unused code and fix zero division error
9 years ago
Jaime Marquínez Ferrándiz
3c91e41614
[downloader/fragment] Don't fail if the 'Content-Length' header is missing
...
In some dailymotion videos (like http://www.dailymotion.com/video/x3k0dtv from #8156 ) the segments URLs don't have the 'Content-Length' header and HttpFD sets the 'totat_bytes' field to None, so we also use '0' in that case (since we do different math operations with it).
9 years ago
Jaime Marquínez Ferrándiz
3f17c357d9
[downloader/hls] Don't let ffmpeg read from stdin ( #8139 )
...
If you run 'while read aurl ; do youtube-dl "${aurl}"; done < path_to_batch_file' (batch_file contains one url per line that uses the hls downloader) each call to youtube-dl consumed some characters and 'read' would assing to 'aurl' a non valid url
(This is the same problem that was fixed for the ffmpeg postprocessors in cffcbc02de
)
9 years ago
Sergey M․
9b9c5355e4
Rename error_to_str to error_to_compat_str
9 years ago
Sergey M․
7f8b271465
Properly convert errors to strings
9 years ago
Sergey M․
4db43567e8
[downloader/f4m] Decode manifest before fixing
9 years ago
Sergey M․
17b786ae73
[downloader/f4m] Fix malformed manifests ( Closes #7823 )
9 years ago
Yen Chi Hsuan
94e8c80473
[downloader/hls] Respect Youtubedl-* headers
9 years ago
Yen Chi Hsuan
9d0e366880
[downloader/hls] Remove Accept-encoding from headers passed to ffmpeg
...
Fails for Youtube Gaming live streams (#7671 )
9 years ago
Sergey M?
5c2266df4b
Switch codebase to use sanitized_Request instead of
...
compat_urllib_request.Request
[downloader/dash] Use sanitized_Request
[downloader/http] Use sanitized_Request
[atresplayer] Use sanitized_Request
[bambuser] Use sanitized_Request
[bliptv] Use sanitized_Request
[brightcove] Use sanitized_Request
[cbs] Use sanitized_Request
[ceskatelevize] Use sanitized_Request
[collegerama] Use sanitized_Request
[extractor/common] Use sanitized_Request
[crunchyroll] Use sanitized_Request
[dailymotion] Use sanitized_Request
[dcn] Use sanitized_Request
[dramafever] Use sanitized_Request
[dumpert] Use sanitized_Request
[eitb] Use sanitized_Request
[escapist] Use sanitized_Request
[everyonesmixtape] Use sanitized_Request
[extremetube] Use sanitized_Request
[facebook] Use sanitized_Request
[fc2] Use sanitized_Request
[flickr] Use sanitized_Request
[4tube] Use sanitized_Request
[gdcvault] Use sanitized_Request
[extractor/generic] Use sanitized_Request
[hearthisat] Use sanitized_Request
[hotnewhiphop] Use sanitized_Request
[hypem] Use sanitized_Request
[iprima] Use sanitized_Request
[ivi] Use sanitized_Request
[keezmovies] Use sanitized_Request
[letv] Use sanitized_Request
[lynda] Use sanitized_Request
[metacafe] Use sanitized_Request
[minhateca] Use sanitized_Request
[miomio] Use sanitized_Request
[meovideo] Use sanitized_Request
[mofosex] Use sanitized_Request
[moniker] Use sanitized_Request
[mooshare] Use sanitized_Request
[movieclips] Use sanitized_Request
[mtv] Use sanitized_Request
[myvideo] Use sanitized_Request
[neteasemusic] Use sanitized_Request
[nfb] Use sanitized_Request
[niconico] Use sanitized_Request
[noco] Use sanitized_Request
[nosvideo] Use sanitized_Request
[novamov] Use sanitized_Request
[nowness] Use sanitized_Request
[nuvid] Use sanitized_Request
[played] Use sanitized_Request
[pluralsight] Use sanitized_Request
[pornhub] Use sanitized_Request
[pornotube] Use sanitized_Request
[primesharetv] Use sanitized_Request
[promptfile] Use sanitized_Request
[qqmusic] Use sanitized_Request
[rtve] Use sanitized_Request
[safari] Use sanitized_Request
[sandia] Use sanitized_Request
[shared] Use sanitized_Request
[sharesix] Use sanitized_Request
[sina] Use sanitized_Request
[smotri] Use sanitized_Request
[sohu] Use sanitized_Request
[spankwire] Use sanitized_Request
[sportdeutschland] Use sanitized_Request
[streamcloud] Use sanitized_Request
[streamcz] Use sanitized_Request
[tapely] Use sanitized_Request
[tube8] Use sanitized_Request
[tubitv] Use sanitized_Request
[twitch] Use sanitized_Request
[twitter] Use sanitized_Request
[udemy] Use sanitized_Request
[vbox7] Use sanitized_Request
[veoh] Use sanitized_Request
[vessel] Use sanitized_Request
[vevo] Use sanitized_Request
[viddler] Use sanitized_Request
[videomega] Use sanitized_Request
[viewvster] Use sanitized_Request
[viki] Use sanitized_Request
[vk] Use sanitized_Request
[vodlocker] Use sanitized_Request
[voicerepublic] Use sanitized_Request
[wistia] Use sanitized_Request
[xfileshare] Use sanitized_Request
[xtube] Use sanitized_Request
[xvideos] Use sanitized_Request
[yandexmusic] Use sanitized_Request
[youku] Use sanitized_Request
[youporn] Use sanitized_Request
[youtube] Use sanitized_Request
[patreon] Use sanitized_Request
[extractor/common] Remove unused import
[nfb] PEP 8
9 years ago
ashutosh-mishra
17cc153435
Typo fix, found while going through the code.
9 years ago
Jaime Marquínez Ferrándiz
36e6f62cd0
Use a wrapper around xml.etree.ElementTree.fromstring in python 2.x ( #7178 )
...
Attributes aren't unicode objects, so they couldn't be directly used in info_dict fields (for example '--write-description' doesn't work with bytes).
9 years ago
Sergey M․
8cd9614abf
[downloader/f4m] More accurate fragment URL construction
9 years ago
remitamine
324ac0a243
[downloader/f4m] get the redirected f4m_url and handle url query string properly
9 years ago
Yen Chi Hsuan
985e4fdc07
[downloader/hls] Add headers only for http(s) URLs
...
ffmpeg 2.8.1 raises an error with -headers and non-http input files.
9 years ago
Sergey M․
964e7b2dd0
[downloader/common] Always skip "already downloaded" check when outputting to stdout
9 years ago
AndroKev
f101079ae0
[downloader/rtmp] Respect --no-continue option
...
now when downloading a "rtmp-file" the --no-continue option works!
9 years ago
Sergey M․
f102819463
[downloader/hls] Pass http headers to downloader
9 years ago
Jaime Marquínez Ferrándiz
8a7bbd1606
[postprocessor/ffmpeg] Always use the 'file:' protocol for filenames ( fixes #6874 )
...
If the filename contains ':' it is interpreted as a protocol.
It also handles filenames starting with '-'.
9 years ago
Sergey M․
133a2b4ac2
[downloader/hls] Properly close stream
9 years ago
Sergey M․
1195a38f46
[downloader/external] Use generalized cli option converters
9 years ago
remitamine
dc534b674f
[downloader/external] change _argless_option function to _valueless_option
9 years ago
remitamine
f30c2e8e98
[downloader/external] add _argless_option for option without arguments
9 years ago
remitamine
266b0ad676
[downloader/external] add _bool_option to pass value to bool option
9 years ago
remitamine
e7a8c3032d
[downloader/external] Respect --no-check-certificate for curl and aria2c and --proxy for curl
9 years ago
Sergey M․
fcd9e423ec
[hls] Properly encode fragment filename
9 years ago
Sergey M․
db8f2bfd99
[f4m] Add missing imports
9 years ago
Sergey M.
55801fc76e
Merge pull request #5588 from aajanki/encode_frag_filenames
...
[f4m] Fix encode error by sanitizing fragment filenames
9 years ago
Sergey M․
7393746da2
[downloader/hls] Add _debug_cmd
9 years ago
Sergey M․
6828c809e4
[downloader/fragment] Respect --retries for fragment based downloaders ( Closes #6549 )
9 years ago
Sergey M․
9f3da13860
[downloader/external] Use generic _option
9 years ago
Sergey M․
bf812ef714
[downloader/external] Forward --proxy to wget and aria2c
9 years ago
Sergey M․
154655a85a
[downloader/external] Respect --no-check-certificate for wget
9 years ago
vijayanand nandam
e0ac521438
adding support for axel download manager
9 years ago
Sergey M․
84bc4dcb0f
[downloader/http] Clarify rationale for Content-Range check ( #6426 )
9 years ago
Sergey M․
10eaa8ef1d
[downloader/http] Report unable to resume
9 years ago
Sergey M․
c3124c3085
[downloader/http] Simplify
9 years ago
remitamine
8d5b8b477e
[utils] import re
9 years ago
remitamine
d7d2a9a3db
[utils] restart download if server does not support byte ranges
9 years ago
Sergey M․
f9a5affad9
[hls] Implement hlsnative fd in terms of fragment fd
9 years ago
Sergey M․
ab81ef8fa7
[f4m] Implement f4m fd in terms of fragment fd
9 years ago
Sergey M․
95d8f7ea12
[fragment] Generalize fragmented media file downloader
9 years ago
Jaime Marquínez Ferrándiz
59db9f8018
[downloader/dash] Improve 'combine_url' ( fixes #6341 )
...
In some videos the base_url already ends with '/'.
9 years ago
Jaime Marquínez Ferrándiz
2ee8f5d80f
Merge remote-tracking branch 'yan12125/download-dash-segments' ( #5886 )
9 years ago
Sergey M․
6c4d20cd6f
[downloader/external] Fix externals downloaders specified with extension on Windows
9 years ago
Jaime Marquínez Ferrándiz
906e2f0eac
[downloader/external] Add downloader for httpie ( closes #6079 )
9 years ago
Yen Chi Hsuan
5bf3276e8d
[downloader/dash] Add testing facility
10 years ago
Yen Chi Hsuan
93dfcb9357
[downloader/dash] Do not pollute ```self```
10 years ago
Yen Chi Hsuan
423d2be5f8
[downloader/dash] Rename the protocol
...
'http_dash_segments' looks more like a protocol name than
'dash_segments'
10 years ago
Yen Chi Hsuan
453a1617aa
[downloader/dash] Reorder imports
10 years ago
Yen Chi Hsuan
b9258c6178
[YoutubeDL] Change how DashSegmentsFD is selected
10 years ago
Yen Chi Hsuan
6800d3372f
[YoutubeDL] Support DASH manifest downloading
10 years ago
Yen Chi Hsuan
156fc83a55
[downloader/rtmp] Fix a typo
10 years ago
Antti Ajanki
233c1c0e76
[downloader/f4m] Fragment filenames must be sanitized
...
because the fragment was written to a file with a sanitized name by
http_dl.download()
10 years ago
Jaime Marquínez Ferrándiz
2ddcd88129
Remove code that was only used by the Grooveshark extractor
10 years ago
Sergey M․
74f8654a53
[downloader/external] Use encodeArgument
10 years ago
Sergey M․
9e105a858c
[downloader/rtmp] Fix arguments encoding and simplify retry logic ( Closes #5528 )
10 years ago
Sergey M․
cd8a07a764
[downloader/common] Use decodeArgument
10 years ago
Sergey M․
a5ebf77d87
[mplayer] Rename to RTSP
10 years ago
Sergey M․
b874495b1f
[mplayer] Simplify
10 years ago
Sergey M․
b860f5dfd4
[mplayer] Clarify error message
10 years ago
mrkrossxdx
db37e0c273
Added support for mpv if mplayer is not available
10 years ago
Yen Chi Hsuan
c6391cd587
[Senate] Add new extractor ( #5302 )
10 years ago
Philipp Hagemeister
c59e701e35
Default to continuedl=True
...
We already do this in the CLI interface, so it should be just fine.
10 years ago
Jaime Marquínez Ferrándiz
70a1165b32
Don't use bare 'except:'
...
They catch any exception, including KeyboardInterrupt, we don't want to catch it.
10 years ago
Jaime Marquínez Ferrándiz
43d6280d0a
[downloader/f4m] Fix use of base64 in python 3.2 ( fixes #5132 )
...
b64decode needs a byte string, but on 3.4 it also accepts strings.
10 years ago