Jody Bruchon
ecdec1913f
Keep download archive in memory for better performance
...
The old behavior was to open and scan the entire archive file for
every single video download. This resulted in horrible performance
for archives of any remotely large size, especially since all new
video IDs are appended to the end of the archive. For anyone who
uses the archive feature to maintain archives of entire video
playlists or channels, this meant that all such lists with newer
downloads would have to scan close to the end of the archive file
before the potential download was rejected. For archives with tens
of thousands of lines, this easily resulted in millions of line
reads and checks over the course of scanning a single channel or
playlist that had been seen previously.
The new behavior in this commit is to preload the archive file
into a binary search tree and scan the tree instead of constantly
scanning the file on disk for every file. When a new download is
appended to the archive file, it is also added to this tree. The
performance is massively better using this strategy over the more
"naive" line-by-line archive file parsing strategy.
The only negative consequence of this change is that the archive
in memory will not be synchronized with the archive file on disk.
Running multiple instances of the program at the same time that
all use the same archive file may result in duplicate archive
entries or duplicated downloads. This is unlikely to be a serious
issue for the vast majority of users. If the instances are not
likely to try to download identical video IDs then this should
not be a problem anyway; for example, having two instances pull
two completely different YouTube channels at once should be fine.
Signed-off-by: Jody Bruchon <jody@jodybruchon.com>
2020-09-17 14:22:07 -04:00
Unknown
7ac0ba50ce
[hotstar] regex fix
2020-09-17 14:00:03 +02:00
Unknown
17cb02d0c6
bump version 2020.09.16
2020-09-16 13:55:35 +02:00
Unknown
78895bd3a1
[Core] hls manifests, dynamic mpd
2020-09-16 13:00:41 +02:00
Tom-Oliver Heidel
cd93279de8
Merge branch 'ext/remuxe-video' of https://github.com/Zocker1999NET/youtube-dl into Zocker1999NET-ext/remuxe-video
2020-09-16 10:30:38 +02:00
Tom-Oliver Heidel
c11c64f318
Merge branch 'elonet' of https://github.com/tpikonen/youtube-dl into tpikonen-elonet
2020-09-14 13:24:18 +02:00
Tom-Oliver Heidel
4c7d0c13e1
Merge branch 'fix-mitele' of https://github.com/DjMoren/youtube-dl
2020-09-14 13:22:50 +02:00
Tom-Oliver Heidel
acdb1a4ec6
Merge branch 'arbitrary-merges' of https://github.com/fstirlitz/youtube-dlc
2020-09-14 13:04:24 +02:00
felix
d03cfdce1b
Support arbitrary stream merges
...
With this change, the merge operator may join any number of media streams,
video or audio. The streams are downloaded in the order specified.
Also, fix the metadata post-processor so that it doesn't leave out
any streams.
2020-09-14 12:53:09 +02:00
Unknown
e69dd78090
merge ytdl-master
2020-09-14 12:50:56 +02:00
Tom-Oliver Heidel
3796554609
Merge pull request #102 from blackjack4494/gdcvault-fix
...
[gdcvault] fix extractor
2020-09-13 15:22:33 +02:00
Unknown
4b819d1454
flake8
2020-09-13 15:21:59 +02:00
Unknown
10bbf2c48d
[skip travis] bump version
2020-09-13 15:16:38 +02:00
Tom-Oliver Heidel
acd0a71894
Merge pull request #96 from blackjack4494/kakao-new-apis
...
[kakao] new apis
2020-09-13 12:47:12 +02:00
Tom-Oliver Heidel
d8edca1e56
Merge pull request #95 from blackjack4494/daserste-ndr
...
[ndr] support Daserste ndr
2020-09-13 12:36:17 +02:00
Unknown
4cd3053c4f
[kakao] new apis
...
there are also ageLimit and GeoBlock attributes provided by api_json if needed
2020-09-13 12:31:36 +02:00
Unknown
f791b41970
flake8
2020-09-13 11:08:02 +02:00
Unknown
57df9f53e0
[youtube] convert subtitles with --skip-download
2020-09-13 11:03:48 +02:00
Unknown
84da5d84b0
add json3 back but don't use it as default.
2020-09-13 11:02:07 +02:00
Unknown
fc0999c695
exclude json3 for now
2020-09-13 09:22:24 +02:00
Unknown
d23f9ec7eb
[gdcvault] fix extractor
...
at least when not logged in?
2020-09-13 01:04:02 +02:00
felix
de7c27cd25
[dispeak] mark the "slides" stream as video-only
2020-09-12 13:41:23 +02:00
Unknown
ac4df0908a
[skip travis] bump version
2020-09-12 06:17:02 +02:00
Tom-Oliver Heidel
6cef08ad00
Merge branch 'tiktok' of https://github.com/skyme5/youtube-dl into skyme5-tiktok
2020-09-12 05:49:52 +02:00
Tom-Oliver Heidel
df38b4a1a9
Merge branch 'pr/duboku' of https://github.com/lkho/youtube-dl into lkho-pr/duboku
2020-09-12 05:47:27 +02:00
Tom-Oliver Heidel
ca640230de
Merge branch 'alura' of https://github.com/hugohaa/youtube-dl into hugohaa-alura
2020-09-12 05:38:44 +02:00
Tom-Oliver Heidel
310f762636
Merge branch '26564' of https://github.com/adrianheine/youtube-dl into adrianheine-26564
2020-09-12 05:37:08 +02:00
Tom-Oliver Heidel
23306df2d8
Merge branch 'master' of https://github.com/ddland/youtube-dl into ddland-master
2020-09-12 05:34:59 +02:00
Tom-Oliver Heidel
bb1d0b26ed
Merge branch 'patch-2' of https://github.com/nixxo/youtube-dl into nixxo-patch-2
2020-09-12 05:33:16 +02:00
Unknown
55e106d1b0
Merge remote-tracking branch 'origin/master'
2020-09-12 05:22:29 +02:00
Tom-Oliver Heidel
0f0762a761
Merge branch 'myvideo_ge' of https://github.com/fonkap/youtube-dl into fonkap-myvideo_ge
2020-09-12 05:22:08 +02:00
Tom-Oliver Heidel
4d0d5e37f9
Merge pull request #69 from blackjack4494/viki-subtitles_and_more
...
[Viki] subtitles, formats
2020-09-12 05:21:46 +02:00
Tom-Oliver Heidel
d153de9d10
Merge branch 'rai-update' of https://github.com/iamleot/youtube-dl into iamleot-rai-update
2020-09-12 05:12:19 +02:00
Tom-Oliver Heidel
e61b2178eb
Merge branch 'JensTimmerman-patch-1' of https://github.com/JensTimmerman/youtube-dl into JensTimmerman-JensTimmerman-patch-1
2020-09-12 05:10:55 +02:00
Unknown
39e7107d7f
Merge branch 'ytdl-org-master'
2020-09-12 05:08:57 +02:00
Tom-Oliver Heidel
448f4b70c6
Merge branch 'fix/google-drive-cookie-issue' of https://github.com/legraphista/youtube-dl into legraphista-fix/google-drive-cookie-issue
2020-09-12 05:02:08 +02:00
Unknown
4ae68091bb
[soundcloud] flake8
2020-09-12 01:17:16 +02:00
Unknown
921dc153f3
[ndr-daserste] flake8
2020-09-12 01:12:39 +02:00
Unknown
dc9d8f44d6
[daserste-ndr] dirty workaround
...
what a mess..
2020-09-11 03:20:44 +02:00
Unknown
169bd46bdc
[viki] subtitles, formats
2020-09-09 21:20:13 +02:00
Unknown
389709160c
[soundcloud] playlist limit per page according to official docs
...
https://github.com/ytdl-org/youtube-dl/pull/26557
2020-09-09 18:24:20 +02:00
Tom-Oliver Heidel
cb2ea2d5ef
Merge branch 'rutv' of https://github.com/adrianheine/youtube-dl into adrianheine-rutv
2020-09-08 18:58:19 +02:00
Tom-Oliver Heidel
10a4858d8f
Merge branch 'magenta' of https://github.com/adrianheine/youtube-dl into adrianheine-magenta
2020-09-08 18:49:11 +02:00
Tom-Oliver Heidel
baf36445c1
Merge branch 'ard.py_add_playlist_support' of https://github.com/martin54/youtube-dl into martin54-ard.py_add_playlist_support
2020-09-08 18:31:53 +02:00
Unknown
2045de7c32
[skip travis] bump version
2020-09-06 07:36:49 +02:00
Tom-Oliver Heidel
65f5a72266
Merge branch 'ondemandkorea' of https://github.com/julien-hadleyjack/youtube-dl into julien-hadleyjack-ondemandkorea
2020-09-06 04:02:43 +02:00
Unknown
bc842c27a7
flake8 fix + soundcloud tests
2020-09-06 02:57:08 +02:00
Tom-Oliver Heidel
3c0c0b428d
Merge branch 'mkvthumbnail' of https://github.com/MrDoritos/youtube-dl into MrDoritos-mkvthumbnail
2020-09-06 02:43:37 +02:00
Tom-Oliver Heidel
a74727e93c
Merge branch 'abc' of https://github.com/adrianheine/youtube-dl into adrianheine-abc
2020-09-06 02:39:04 +02:00
Unknown
b54d0e702a
Merge remote-tracking branch 'origin/master'
2020-09-06 02:37:51 +02:00