Commit Graph

206 Commits

Author SHA1 Message Date
Ivan Habunek
c9ab6237e8
Don't rename the file while it's still open
issue #111
2022-09-09 08:05:03 +02:00
Ivan Habunek
a4b2434735
Start adding types 2022-08-20 13:25:00 +02:00
Ivan Habunek
235b13c257
Remove unused function 2022-08-20 11:10:47 +02:00
Ivan Habunek
cacf921923
Increase default limit for compact mode 2022-08-18 10:06:23 +02:00
Ivan Habunek
4d19f09065
Add compact videos display 2022-08-18 10:04:04 +02:00
Ivan Habunek
f289c93305
Bump version, set release date 2022-08-18 10:04:04 +02:00
Ivan Habunek
a14ce57f95
Decrease default number of workers to 5 2022-08-18 09:30:35 +02:00
Ivan Habunek
c4f4935b96
Enable downloading multiple videos successively 2022-08-18 09:12:25 +02:00
Ivan Habunek
c8a6d67822
Improve speed tracking
Instead of calculating the average speed for the whole download,
consider only the last 100 chunks.
2022-08-17 08:35:57 +02:00
Ivan Habunek
51a35ab494
Remove overly verbose logging 2022-08-15 07:14:53 +02:00
Ivan Habunek
f40fd290f7
Replace requests with httpx, remove unused code 2022-08-15 07:12:10 +02:00
Ivan Habunek
b03c19dac1
Improve visuals
I never liked cyan anyway
2022-08-14 11:33:38 +02:00
Ivan Habunek
cd445674e5
Download chunks to a temp file first 2022-08-14 11:33:23 +02:00
Ivan Habunek
721d78377e
Add rate limiting to download 2022-08-14 11:13:11 +02:00
Ivan Habunek
ac07006ae7
Limit number of prints per second 2022-08-14 11:04:53 +02:00
Ivan Habunek
32a68395d5
Use async downloader 2022-08-14 11:02:29 +02:00
Ivan Habunek
81846764a1
Don't download already downloaded files 2022-08-14 10:21:38 +02:00
Ivan Habunek
23f1a74aa6
Add new asyncio downloader code with rate limiting 2022-08-13 11:41:13 +02:00
Ivan Habunek
85631c8ce5
Extract progress tracking 2022-08-13 09:40:18 +02:00
Ivan Habunek
b3a57c2f95
Bump version, update changelog 2022-06-25 11:38:27 +02:00
Ivan Habunek
e1cf7c7cf8
Add a better error when auth token is rejected 2022-06-25 11:32:50 +02:00
Ivan Habunek
409100651e
Change the option to --auth-token 2022-06-25 10:14:30 +02:00
Philipp
f37179d786 Implemented auth param 2022-06-25 09:44:12 +02:00
Philipp
827fff73c6 Added auth header support 2022-06-25 09:44:12 +02:00
Ivan Habunek
071b117459
Generate docs 2022-03-13 14:11:59 +01:00
Ivan Habunek
d848826ec3
Fix info command 2022-03-12 08:17:51 +01:00
Ivan Habunek
45821ceb0e
Bump version, add changelog 2022-02-27 12:44:33 +01:00
Ivan Habunek
f663525d07
Fix --debug when no command is given 2022-02-27 12:23:22 +01:00
Ivan Habunek
5ae4396ab4
Add env command for printing environment info 2022-02-27 12:22:44 +01:00
Ivan Habunek
c8dd4f8efe
Remove unused import 2022-02-27 12:16:03 +01:00
Ivan Habunek
c06ba2248d
Bump version 2022-02-25 19:23:08 +01:00
Ivan Habunek
6fa3bd568d
Make clips behave similar to recent videos changes 2022-02-25 19:10:48 +01:00
Ivan Habunek
1fc5ef6bd1
Reorganize paging and limiting video list 2022-02-23 19:07:27 +01:00
Ivan Habunek
b73ab58432
Fix video output when creator is not set 2022-02-23 19:07:04 +01:00
Ivan Habunek
52651e62c8
Enable logging via --debug flag 2022-02-23 16:24:52 +01:00
Matt Calvert
4928188055
Add support for JSON output to videos command 2022-02-23 16:02:28 +01:00
Ivan Habunek
7ad574d103
Bump version 2022-02-05 15:08:51 +01:00
Ivan Habunek
2fddb0c6a4
Add support for downloading audio only 2022-02-05 14:37:52 +01:00
Ivan Habunek
fbc227017d
Bump version, add changelog 2022-02-05 09:52:06 +01:00
Ivan Habunek
b8aaa0c24c
Fix issue with downloading clips with no game set
issue #78
2022-02-05 09:50:17 +01:00
Ivan Habunek
0af472528d
Remove unused function 2022-02-05 09:50:17 +01:00
Ivan Habunek
fb73fe07c5
Add clip slug to formatting options 2022-02-05 09:36:50 +01:00
Ivan Habunek
7eb50a0fa1
Fix output formatting when game is not set
issue #87
2022-02-05 09:34:28 +01:00
Ivan Habunek
6ebe263f33
Fix issue with colons in file name
ffmpeg uses colons to define protocols, by prefixing the target with
file: this ambiguity is avoided.

issue #89
2022-02-05 09:26:10 +01:00
Ivan Habunek
310010363f
Bump version, add changelog 2022-01-25 08:22:35 +01:00
Ivan Habunek
4fd532f05d
Ask overwrite confirmation early
Ask whether to overwrite before starting download, this way once
download starts, there will be no more prompts.
2022-01-25 08:08:17 +01:00
Ivan Habunek
8156b18b37
Tweak colors 2022-01-25 07:59:54 +01:00
Ivan Habunek
b24bc0eb29
Add option to define target filename 2022-01-24 09:06:02 +01:00
Ivan Habunek
b67ccc9dde
Bump version, add changelog 2022-01-19 08:04:56 +01:00
Ivan Habunek
2f977be161
Bump version 2021-12-03 10:26:17 +01:00
Ivan Habunek
928c6d64cf
Add metadata to the encoded video file 2021-12-03 10:25:04 +01:00
David the Intrepid
dd1f4e0d26
Better computation of speed
Distinct VODs took from disk and freshly downloaded
2021-09-16 08:29:33 +02:00
Ivan Habunek
caabe3138c
Remove old kraken requests 2021-09-16 08:01:31 +02:00
Ivan Habunek
9c3cf11635
Dedupe clip fields 2021-09-16 07:59:07 +02:00
Ivan Habunek
2f51b3821b
Handle video not found gracefully 2021-09-16 07:58:43 +02:00
Ivan Habunek
6f86aea493
Bump version, changelog 2021-07-31 11:44:56 +02:00
Ivan Habunek
e3f66bda43
Fix compat with older versions of python
path.join doesn't handle PosixPath instances in older versions of python
which causes breakage.

fixes #71
2021-07-31 11:41:45 +02:00
Ivan Habunek
5c3cebd0f3
Bump version, changelog 2021-06-09 15:10:39 +02:00
Ivan Habunek
a49dcab419
Fix clips download by fetching access token
fixes #64
2021-06-09 15:08:40 +02:00
Ivan Habunek
0dd04a7e2d
Extract clips list method 2021-05-18 14:25:49 +02:00
Ivan Habunek
5bd0747dde
Respect --limit when downloading clips 2021-05-18 14:23:56 +02:00
Ivan Habunek
63c2aff334
Handle keyboard interrupt 2021-05-18 14:00:50 +02:00
Ivan Habunek
c0c5cbf2a8
Don't break if channel not found 2021-03-22 07:42:07 +01:00
Ivan Habunek
3f143b0c84
Fix file naming not to strip first digit of id
fixes #60
2021-03-22 07:42:07 +01:00
Ivan Habunek
2242af05fc
Add changelog, bump version 2021-02-15 14:35:20 +01:00
Ivan Habunek
9c901a21d9
Fix reference to invalid argument 2021-02-15 14:33:31 +01:00
Hegesippe Ëspace
e12dba26b4 Add dash as an allowed char, set length to 16. 2021-02-15 14:23:13 +01:00
Hegesippe Ëspace
3a61e61226 Add underscore as an allow char for clip extra ID 2021-02-15 14:23:13 +01:00
Hegesippe Ëspace
8ddfad51bc Update clip identifier patterns
New clips ID naming convention. ex: GloriousColdbloodedTortoiseRuleFive-E017utJ4DZmHVpfQ
2021-02-15 14:23:13 +01:00
Ivan Habunek
e0681ab53c
Bump version, changelog 2021-01-14 22:25:22 +01:00
Ivan Habunek
728e631623
Handle video not found in info 2021-01-14 22:23:40 +01:00
Ivan Habunek
9d19acbe6d
Re-apply fix lost to a merge conflict 2021-01-14 22:16:17 +01:00
Ivan Habunek
9e2bbd7e39
Bump version, changelog, readme 2021-01-14 22:14:53 +01:00
Ivan Habunek
dbee7cdc52
Use GraphQL to fetch access token
issue #53
2021-01-14 22:14:52 +01:00
Ivan Habunek
548a9350ba
Add twitch-dl info command 2021-01-14 22:14:52 +01:00
Ivan Habunek
2380dc5a35
Split up commands 2021-01-14 22:14:50 +01:00
Scotty Allen
a7340f178f Fix bug in videos command saying there are more videos when there aren’t
When listing videos, if --pager was not specified and all of the videos
for a channel were listed, a message would still print out saying
“There are more videos. Increase the --limit or use --pager to see the
rest."

This checks to see if there are actually more videos before printing
that error message.
2021-01-11 00:49:57 +01:00
Ivan Habunek
838611b834
Bump version 2020-11-23 16:08:15 +01:00
Ivan Habunek
cf8d13e80e
Fix clip download due to missing fields in query
fixes #45
2020-11-23 16:06:09 +01:00
Ivan Habunek
6108b15587
Handle channel not found in clips 2020-11-10 12:40:11 +01:00
Ivan Habunek
bb2de4af96
Bump version 2020-11-10 10:48:21 +01:00
Ivan Habunek
678bf11a8a
Fix print_clip when game is not set 2020-11-10 10:44:18 +01:00
Ivan Habunek
1cb4598a71
Add downloading clips 2020-11-10 09:22:07 +01:00
Ivan Habunek
02e4cdaff6
Add listing clips 2020-11-10 08:30:01 +01:00
Ivan Habunek
c2e9ab9382
Bump version 2020-09-29 12:22:24 +02:00
Ivan Habunek
739460bed1
Remove extraneous parameter 2020-09-29 12:21:13 +02:00
Ivan Habunek
c92ba5e183
Bump version 2020-09-29 11:28:35 +02:00
Ivan Habunek
f4ab045cdc
Add --pager option, don't page by default
issue #30
2020-09-29 11:28:35 +02:00
Ivan Habunek
c510d5aae4
Add --overwrite option
issue #37
2020-09-29 11:28:03 +02:00
Ivan Habunek
2abc56213e
Add --no-join option to skip ffmpeg join
issue #36
2020-09-29 11:27:49 +02:00
Ivan Habunek
bb16108572
Add source quality alias
issue #33
2020-09-29 08:26:40 +02:00
Ivan Habunek
b982cba566
Bump version, changelog 2020-09-03 12:56:57 +02:00
Ivan Habunek
eecd098f18
Add www before twitch.tv since that's what twitch uses 2020-09-03 12:55:45 +02:00
Ivan Habunek
041689bee9
Construct paths using path libs
Fixes issues with paths on windows.

issue #35
2020-09-03 12:26:28 +02:00
Ivan Habunek
a245ffb6a4
Fix issue with partial downloads
When using --start or --end, only keep the segments which have been
downloaded, and skip the rest.
2020-09-03 11:59:44 +02:00
Ivan Habunek
5b200a2cb7
Add a splash of color 2020-09-03 10:38:29 +02:00
Ivan Habunek
bf2a4558f4
Improve VOD joining logic
Instead of creating a file list, create a modified playlist which
references the downloaded files, and give this as input to ffmpeg. Since
ffmpeg handles M3U8 playlists, this means options such as
`EXT-X-BYTERANGE` are supported.

issue #35
2020-09-03 10:38:29 +02:00
Ivan Habunek
772faa5901
Log ffmpeg command and handle errors better 2020-09-03 10:38:28 +02:00
Ivan Habunek
04ddadef26
Add bundling with zipapp 2020-08-13 13:47:03 +02:00
Ivan Habunek
bbed398cf6
Fix version number in init file, bump version 2020-08-11 18:10:21 +02:00