Commit Graph

56 Commits (f74980cbaebaf3c4ea89d1b257424a50545991d9)

Author SHA1 Message Date
pukkandan f74980cbae Plugin support
Extractor plugins are loaded from <root-dir>/ytdlp_plugins/extractor/__init__.py

Inspired by https://github.com/un-def/dl-plus

:ci skip dl
3 years ago
pukkandan c571435f9c [MoveFiles] More robust way to get final filename
:ci skip dl
3 years ago
pukkandan 10e3742eb1 Fix overwrite in --write-link
:ci skip dl
3 years ago
pukkandan 0202b52a0c #29 New option `-P`/`--paths` to give different paths for different types of files
Syntax: `-P "type:path" -P "type:path"`
Types: home, temp, description, annotation, subtitle, infojson, thumbnail
3 years ago
pukkandan b46696bdc8 Revert d9eebbc747 3 years ago
pukkandan 63be1aab2f Deprecate unnecessary aliases in `formatSort`
(I should never have made so many aliases in the first-place)
The aliases remain functional for backward compatability, but will be left undocumented
3 years ago
pukkandan d0757229fa Fix typecasting when pre-checking archive (Closes #26) 3 years ago
pukkandan 43820c0370 Improved passing of multiple postprocessor-args
* Added `PP+exe:args` syntax
    If `PP+exe:args` is specifically given, only it used.
    Otherwise, `PP:args` and `exe:args` are combined.
    If none of the `PP`, `exe` or `PP+exe` args are given, `default` is used
    `Default` is purposely left undocumented since it exists only for backward compatibility

* Also added proper handling of args in `EmbedThumbnail`

Related: https://github.com/ytdl-org/youtube-dl/pull/27723
3 years ago
pukkandan 8a51f56439 [readme] Cleanup options
(Closes #23) :skip ci
3 years ago
pukkandan 30a074c2b6 Update to ytdl-2021.01.16 3 years ago
pukkandan d83cb5312c Fix archive bug introduced in 8b0d7497d5 3 years ago
pukkandan 8b0d7497d5 Added option `--break-on-reject`
and modified `--break-on-existing`
3 years ago
pukkandan d9d045e2ef Changed repo name to yt-dlp 3 years ago
alxnull 0c3d0f5177 Added `--force-overwrites` option (https://github.com/ytdl-org/youtube-dl/pull/20405)
Co-authored by alxnull
3 years ago
pukkandan f5546c0b3c Fix typos (Closes #14)
:skip ci all

Co-authored by: FelixFrog
3 years ago
pukkandan f5b1bca913 Kill child processes when yt-dlc is killed (https://github.com/ytdl-org/youtube-dl/pull/26592)
Authored by: Unrud
3 years ago
pukkandan d9eebbc747 Fix incorrect ANSI sequence for restoring console-window title (https://github.com/ytdl-org/youtube-dl/pull/26637)
Authored by: glenn-slayden
3 years ago
pukkandan c3e6ffba53 Stop immediately when reaching '--max-downloads' (https://github.com/ytdl-org/youtube-dl/pull/26638)
Authored by: glenn-slayden
3 years ago
Alex Merkel ab8e5e516f Add post_hooks option to YoutubeDL.py (https://github.com/ytdl-org/youtube-dl/pull/27573)
Authored by: alexmerkel
3 years ago
pukkandan 1b77b347d4 Allow passing different arguments to different postprocessors
* Also deprecated --sponskrub-args

Closes: https://github.com/ytdl-org/youtube-dl/issues/27593
Eg: `--postprocessor-args "VideoConvertor:-c:v h264_nvenc -preset slow"`
Eg: `--postprocessor-args "SponsKrub:-include-selfpromo"`

For backward compatibility, `--postprocessor-args args` is equivalent to:
`--post-processor-args "sponskrub:" --post-processor-args "default:args"`
3 years ago
pukkandan 19807826f7 Fix bug in default format selection 3 years ago
pukkandan dbbbe555d7 Add `duration_string` to info_dict 3 years ago
pukkandan 91ebc64068 Change defaults
* Enabled --ignore by default
* Disabled --video-multistreams and --audio-multistreams by default
* Changed default format selection to 'bv*+ba/b' when --audio-multistreams is disabled
* Changed default format sort order to 'res,fps,codec,size,br,asr,proto,ext,has_audio,source,format_id'
* Changed default output template to '%(title)s [%(id)s].%(ext)s'
* Enabled `--list-formats-as-table` by default
3 years ago
pukkandan 29f7c58aaf Update to ytdl-2021.01.03 3 years ago
pukkandan a9e7f54670 Sponskrub integration 3 years ago
pukkandan 76d321f68f Option to present -F output to a more tabular form 3 years ago
pukkandan 2d30509fc8 Add --force-download-archive by by h-h-h-h
Authored-by: h-h-h-h
4 years ago
pukkandan 732044afb2 Add --write-*-link by h-h-h-h
Authored-by: h-h-h-h
4 years ago
pukkandan f96bff99cb Relaxed validation for format filters so that any arbitrary field can be used 4 years ago
pukkandan 909d24dd6d Better Format Selection
* Added options: --video-multistreams, --no-video-multistreams, --audio-multistreams, --no-audio-multistreams
* New format selectors: best*, worst*, bestvideo*, bestaudio*, worstvideo*, worstaudio*
* Added b,w,v,a as alias for best, worst, video and audio respectively in format selection
* Changed video format sorting to show video only files and video+audio files together.
4 years ago
pukkandan eb8a44336c Better Format Sorting (Squashed)
* Added --format-sort (-S height,filesize)
* Made fields reversible (-S +height)
* Added --format-sort-force, --no-format-sort-force
* Added limit (-S height:720)
* Added codec preference (-S vcodec,acodec)
* Correct handling of preference<-1000

* Rebased to yt-dlc
* Automatically determine missing bitrates
* aext, vext, protocol, acodec, vcodec can now takes priority as string, not number (-S vext:webm)
* Correct handling of None in codec, audio_codec (None means the codec is unknown while 'none' means it doesn't exist)
* Correctly parse filesize (-S filesize:200M)
* Generalized preference calculation

* Rewrote entire code into the class FormatSort
* Correctly handle user input errors
* Combined fields (-S +ext:webm:webm)
* Closest mode (-S filesize~50M)
* Aliases (framerate=fps, br=bitrate etc)

* Documentation
4 years ago
pukkandan a0566bbf5c Updated to release 2020.11.21.1 4 years ago
pukkandan 3462ffa892 Implemented all Youtube Feeds (ytfav, ytwatchlater, ytsubs, ythistory, ytrec) and SearchURL 4 years ago
Tom-Oliver Heidel 228385340e
Merge pull request #187 from pukkandan/break-on-existing
Stop download after encountering video in archive
4 years ago
pukkandan ea6e0c2b0d Add --break-on-existing by @gergesh
Authored-by: Yoav Shai <gergesh@gmail.com>
4 years ago
pukkandan fe5caa2a7c Handle IndexError 4 years ago
pukkandan 9a68de1217 Pre-check video IDs in the archive before downloading 4 years ago
Unknown fa57af1ef3 flake8. added sha256 check to updater. 4 years ago
Unknown 9f448fcb26 [core/yt_live_chat] live_chat is back. dl() new parameter 4 years ago
Unknown 0704d2224b [core] be able to hand over id and title using url_result 4 years ago
Unknown bdc3fd2f35 [core] add option to trim file name length with integer
https://github.com/blackjack4494/youtube-dlc/issues/85
4 years ago
Unknown 0c9df79e17 [core] no sleep affected subtitles only with enforced flag 4 years ago
Jody Bruchon a45e861918 Switch from binary search tree to Python sets
Signed-off-by: Jody Bruchon <jody@jodybruchon.com>
4 years ago
Jody Bruchon fd87f42378 Randomize the ArchiveTree the proper Python way
Signed-off-by: Jody Bruchon <jody@jodybruchon.com>
4 years ago
Jody Bruchon 2459b6e1cf Style revisions 4 years ago
Jody Bruchon a4d834fb3e Fix wrong variable in position swap corrupting archive list
It's always a simple error in the end, you know?

Signed-off-by: Jody Bruchon <jody@jodybruchon.com>
4 years ago
Jody Bruchon fda63a4e87 Randomize archive order before populating search tree
This doesn't result in an elegant, perfectly balanced search tree,
but it's absolutely good enough. This commit completely mitigates
the worst-case scenario where the archive file is sorted.

Signed-off-by: Jody Bruchon <jody@jodybruchon.com>
4 years ago
Jody Bruchon 1d74d8d9f6 Try to mitigate the problem of loading a fully sorted archive
Sorted archives turn the binary tree into a linked list and make
things horribly slow. This is an incomplete mitigation for this
issue.
4 years ago
Jody Bruchon 1de7ea76f8 Remove recursion in at_insert() 4 years ago
Jody Bruchon a5029645ae Remove debugging print statements 4 years ago