Commit graph

18664 commits

Author SHA1 Message Date
pukkandan 8c04f0be96 batch-file enumeration improvements (https://github.com/ytdl-org/youtube-dl/pull/26813)
Co-authored by: glenn-slayden
Modified from c9a9ccf8a3

These improvements apply to reading the list of URLs from the file supplied via the `--batch-file` (`-a`) command line option.

1. Skip blank and empty lines in the file. Currently, lines with leading whitespace are only skipped when that whitespace is followed by a comment character (`#`, `;`, or `]`). This means that empty lines and lines consisting only of whitespace are returned as (trimmed) empty strings in the list of URLs to process.

2. [bug fix] Detect and remove the Unicode BOM when the file descriptor is already decoding Unicode.

With Python 3, the `batch_fd` enumerator returns the lines of the file as Unicode. For UTF-8, this means that the raw BOM bytes from the file `\xef \xbb \xbf` show up converted into a single `\ufeff` character prefixed to the first enumerated text line.

This fix solves several buggy interactions between the presence of BOM, the skipping of comments and/or blank lines, and ensuring the list of URLs is consistently trimmed. For example, if the first line of the file is blank, the BOM is incorrectly returned as a URL standing alone. If the first line contains a URL, it will be prefixed with this unwanted single character--but note that its being there will have inhibited the proper trimming of any leading whitespace. Currently, the `UnicodeBOMIE` helper attempts to recover from some of these error cases, but this fix prevents the error from happening in the first place (at least on Python3). In any case, the `UnicodeBOMIE` approach is flawed, because it is clearly illogical for a BOM to appear in the (non-batch) URL(s) specified directly on the command line (and for that matter, on URLs *after the first line* of a batch list, also)

3. Adds proper trimming of the " #" into the read_batch_urls processing so that the URLs it enumerates are cleaned and trimmed more consistently.
2021-01-09 18:08:03 +05:30
Alex Merkel ab8e5e516f Add post_hooks option to YoutubeDL.py (https://github.com/ytdl-org/youtube-dl/pull/27573)
Authored by: alexmerkel
2021-01-09 16:00:49 +05:30
pukkandan 62d80ba17c [youtube] Fix bug (Closes https://github.com/pukkandan/yt-dlc/issues/10) 2021-01-08 23:27:00 +05:30
pukkandan e8273c86a3 [version] update 2021-01-08 22:59:45 +05:30
pukkandan e5bc03a6fa Release 2021.01.08 2021-01-08 22:54:34 +05:30
pukkandan 034b6215b4 Move changelog to seperate file 2021-01-08 22:50:49 +05:30
pukkandan 00dd0cd573 Update to ytdl-2021.01.08 2021-01-08 21:59:10 +05:30
pukkandan 0c0ff18f7d [CI] Created quick-test 2021-01-08 03:44:54 +05:30
pukkandan a26c99ac13 Release 2021.01.07-1 2021-01-08 02:13:14 +05:30
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"`
2021-01-08 01:41:08 +05:30
pukkandan 6c40e33c9e
ffmpeg: ignore extra data streams #9 by jbruchon
closes #2, blackjack4494#291

Authored by jbruchon
2021-01-08 01:08:21 +05:30
Jody Bruchon e0da59fe54 ffmpeg: ignore extra data streams with -dn (fixes #2)
Sometimes, video files will arrive with a timecode data stream
that causes `-map 0` to error out due to the stream not being
supported in the output container. These data streams generally do
not matter, so tell ffmpeg to ignore them rather than choking on
them.
2021-01-07 12:26:50 -05:00
pukkandan c82fc65d03
Akamai fix #6 (blackjack4494#274) by nixxo
Authored by nixxo
2021-01-07 21:22:31 +05:30
nixxo 1c3a61baae
Merge branch 'master' into akamai-fix 2021-01-07 16:49:07 +01:00
pukkandan 9d88274ca2 Tiktok fix #8 (blackjack4494#20)
Authored by GreyAlien502
2021-01-07 20:53:03 +05:30
pukkandan 7dbce2c532 [vlive] add support for playlists #7 (blackjack4494#223)
Authored by kyuyeunk
2021-01-07 20:53:03 +05:30
pukkandan 2c35345868 Make sure playerOffsetMs is positive in youtube_live_chat by siikamiika #5 (blackjack4494#262)
Authored by siikamiika
2021-01-07 20:53:03 +05:30
pukkandan 3ad6c46175 Release 2021.01.07 2021-01-07 20:10:10 +05:30
pukkandan 5d0c537141 Fix/disable tests
The disabled tests needs to be fixed later
Tests for FormatSort, Multistreams also needs be created
2021-01-07 17:22:46 +05:30
pukkandan 19807826f7 Fix bug in default format selection 2021-01-07 17:22:46 +05:30
pukkandan b5611f728f Temporarily disable python 3.3 and 3.4 tests 2021-01-07 17:22:45 +05:30
pukkandan c76eb41bb9 Preparing for release 2021-01-07 17:22:45 +05:30
pukkandan dbbbe555d7 Add duration_string to info_dict 2021-01-06 22:37:55 +05:30
pukkandan 7fd86ce1a9 Remove av01 priority 2021-01-06 21:28:07 +05:30
pukkandan 735d865ece Disable Updates 2021-01-06 17:43:27 +05:30
pukkandan 2af884ff22 v2021.01.05.02 2021-01-05 02:37:15 +05:30
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
2021-01-05 02:36:09 +05:30
pukkandan 50865ca803 v2021.01.05 - Make publicly available 2021-01-05 01:05:59 +05:30
pukkandan 29f7c58aaf Update to ytdl-2021.01.03 2021-01-05 00:02:27 +05:30
pukkandan c2b5f3114f Readme changes 2021-01-04 23:59:02 +05:30
pukkandan 6623ac349b Added negative switches for many existing options
* The idea is that it should be possible to negate any boolean option by adding a `no-` to the switch

New: `--no-ignore-dynamic-mpd`, `--no-allow-dynamic-mpd`, `--allow-dynamic-mpd`, `--youtube-include-hls-manifest`, `--no-youtube-include-hls-manifest`, `--no-youtube-skip-hls-manifest`, `--no-download`, `--no-download-archive`, `--resize-buffer`, `--part`, `--mtime`, `--no-keep-fragments`, `--no-cookies`, `--no-write-annotations`, `--no-write-info-json`, `--no-write-description`, `--no-write-thumbnail`, `--youtube-include-dash-manifest`, `--post-overwrites`, `--no-keep-video`, `--no-embed-subs`, `--no-embed-thumbnail`, `--no-add-metadata`, `--no-include-ads`, `--no-write-sub`, `--no-write-auto-sub`, `--no-playlist-reverse`, `--no-restrict-filenames`, `--youtube-include-dash-manifest`, `--no-format-sort-force`, `--flat-videos`, `--no-list-formats-as-table`, `--no-sponskrub`, `--no-sponskrub-cut`, `--no-sponskrub-force`

Renamed: `--write-subs`, --no-write-subs`, `--no-write-auto-subs, `--write-auto-subs`. Note that these can still be used without the ending "s"
2021-01-04 23:15:15 +05:30
pukkandan a9e7f54670 Sponskrub integration 2021-01-04 23:13:27 +05:30
pukkandan 76d321f68f Option to present -F output to a more tabular form 2021-01-04 23:03:04 +05:30
pukkandan 2d30509fc8 Add --force-download-archive by by h-h-h-h
Authored-by: h-h-h-h
2020-12-13 20:05:04 +05:30
pukkandan 732044afb2 Add --write-*-link by h-h-h-h
Authored-by: h-h-h-h
2020-12-13 20:05:04 +05:30
pukkandan e51f368c27 Fix for embedding thumbnail in mp3 by pauldubois98
Authored-by: Paul Dubois <pauldubois98@gmail.com>
2020-12-13 20:05:03 +05:30
pukkandan f96bff99cb Relaxed validation for format filters so that any arbitrary field can be used 2020-12-13 20:05:03 +05:30
pukkandan 3f6eaea676 Make Twitch Video ID output from Playlist and VOD extractor same.
Is this sufficient for all cases?
2020-12-13 20:05:03 +05:30
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.
2020-12-13 20:05:03 +05:30
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
2020-12-13 20:05:02 +05:30
Kyu Yeun Kim 3d54ebd427 [vlive] add support for playlists 2020-12-04 23:24:23 +09:00
Remita Amine 727006d951
[extractor/commons] improve Akamai HTTP formats extraction 2020-12-03 13:11:21 +01:00
Remita Amine 0827033479
[extractor/common] improve Akamai HTTP format extraction
- Allow m3u8 manifest without an additional audio format
- Fix extraction for qualities starting with a number
Solution provided by @nixxo based on: https://stackoverflow.com/a/5984688
2020-12-03 13:10:24 +01:00
Tom-Oliver Heidel 98e248faa4
Merge pull request #106 from diegorodriguezv/fix-tmz
[TMZ] Fix TMZ.com extractor
2020-12-02 01:46:46 +01:00
Unknown 40ec740f7b [yt] temporary fix for automatic captions - disable json3 2020-12-02 01:44:14 +01:00
Tom-Oliver Heidel 8662875551
Merge pull request #270 from nixxo/skyit
[Skyit] Replace old skyitalia extractor
2020-12-02 01:31:23 +01:00
nixxo 4f618e64f5 [skyit] removed old skyitalia extractor 2020-12-01 12:10:50 +01:00
Remita Amine 12300fa45a [skyit] add support for multiple Sky Italia websites(closes #26629) 2020-12-01 12:09:45 +01:00
Tom-Oliver Heidel e8d46fc979
Merge pull request #143 from nixxo/gedi
[Gedi] Add new extractor
2020-11-30 04:07:22 +01:00
Tom-Oliver Heidel b662fc8d20
Merge branch 'master' into gedi 2020-11-30 02:51:41 +01:00