Commit graph

574 commits

Author SHA1 Message Date
pukkandan 78fde6e339
[outtmpl] Allow \n in replacements and default.
Fixes: https://github.com/yt-dlp/yt-dlp/issues/6808#issuecomment-1510055357
Fixes: https://github.com/yt-dlp/yt-dlp/issues/6808#issuecomment-1510363645
2023-04-24 18:28:30 +05:30
pukkandan 9874e82b5a
Do not translate newlines in --print-to-file
Fixes https://github.com/yt-dlp/yt-dlp/issues/6808#issuecomment-1509361107
2023-04-16 08:55:44 +05:30
pukkandan c3f624ef0a
Relaxed validation for numeric format filters
Continued from f96bff99cb

Closes #6782
2023-04-12 05:05:15 +05:30
pukkandan 26010b5cec
[postprocessor/FixupDuplicateMoov] Fix bug in triggering 2023-04-11 21:43:33 +05:30
pukkandan 34d3df72e9 Support loading info.json with a list at it's root 2023-03-11 19:51:14 -06:00
pukkandan ab1de9cb1e
Support loading info.json with a list at it's root 2023-03-10 14:15:13 +05:30
Elyse 932758707f Fix linter 2023-03-09 18:51:10 -06:00
Elyse fba1c397b1 [youtube] Support --download-sections for YT Livestream from start 2023-03-09 17:32:19 -06:00
pukkandan 392389b7df
[cleanup] Misc 2023-03-05 03:34:55 +05:30
pukkandan fe2ce85aff
Add option --break-match-filters
* Deprecates `--break-on-reject`

Closes #5962
2023-03-04 01:18:54 +05:30
Simon Sawicki 29cb20bd56
[build] Automated builds and nightly releases (#6220)
Closes #1839
Authored by: Grub4K, bashonly

Co-authored-by: bashonly <88596187+bashonly@users.noreply.github.com>
2023-03-03 22:54:23 +05:30
pukkandan 5b28cef72d
[cleanup] Misc 2023-02-28 23:51:06 +05:30
pukkandan a538772969
[cleanup] Misc
Closes #5897
2023-02-17 17:52:22 +05:30
Siddhartha Sahu 376aa24b15
Improve default subtitle language selection (#6240)
Authored by: sdht0
2023-02-17 01:25:01 +05:30
pukkandan 9ebac35577
Bugfix for 39f32f1715
when `--ignore-no-formats-error`
2023-02-16 17:06:54 +05:30
pukkandan c154302c58
Bugfix for 39f32f1715 2023-02-13 01:35:54 +05:30
pukkandan 39f32f1715
Sanitize formats before sorting
Closes #4501
2023-02-13 01:19:51 +05:30
bashonly 7e68567e50
[downloader/hls] Allow extractors to provide AES key (#6158)
and related cleanup

Authored by: bashonly, Grub4K

Co-authored-by: Simon Sawicki <contact@grub4k.xyz>
2023-02-08 11:09:32 +05:30
pukkandan 7aefd19afe
Make title completely non-fatal
Ref: https://github.com/yt-dlp/yt-dlp/pull/6158#discussion_r1096984349
2023-02-07 01:18:04 +05:30
pukkandan 59d7de0da5
Fix --concat-playlist
Closes #6080
2023-01-24 03:43:48 +05:30
pukkandan f079514957
[utils] windows_enable_vt_mode: Better error handling
Closes #5927
2023-01-03 15:59:49 +05:30
pukkandan 08e29b9f1f
[cleanup] Misc
Closes #5576, closes #5887
2023-01-02 19:40:15 +05:30
Matthew 8300774c4a
Add --enable-file-urls (#5917)
Closes https://github.com/yt-dlp/yt-dlp/issues/3675

Authored by: coletdjnz
2023-01-02 06:05:13 +00:00
Matthew e756f45ba0
Improve handling for overriding extractors with plugins (#5916)
* Extractors replaced with plugin extractors now show in debug output
* Better testcase handling
* Added documentation
Authored by: coletdjnz, pukkandan
2023-01-02 04:55:11 +00:00
pukkandan 193fb150b7
Fix bug in 119e40ef64 2023-01-01 17:01:48 +05:30
pukkandan 88fb942577
Add message when there are no subtitles/thumbnails
Closes #5551
2023-01-01 14:11:15 +05:30
Matthew 8e40b9d1ec
Improve plugin architecture (#5553)
to make plugins easier to develop and use:
* Plugins are now loaded as namespace packages.
* Plugins can be loaded in any distribution of yt-dlp (binary, pip, source, etc.).
* Plugin packages can be installed and managed via pip, or dropped into any of the documented locations.
* Users do not need to edit any code files to install plugins.
* Backwards-compatible with previous plugin architecture.

As a side-effect, yt-dlp will now search in a few more locations for config files.

Closes https://github.com/yt-dlp/yt-dlp/issues/1389

Authored by: flashdagger, coletdjnz, pukkandan, Grub4K
Co-authored-by: Marcel <flashdagger@googlemail.com>
Co-authored-by: pukkandan <pukkandan.ytdlp@gmail.com>
Co-authored-by: Simon Sawicki <accounts@grub4k.xyz>
2023-01-01 04:29:22 +00:00
pukkandan ec54bd43f3
Fix bug in writing playlist info-json
Closes #4889
2022-12-30 14:07:15 +05:30
pukkandan 119e40ef64
Add pre-processor stage video
Related: #456, #5808
2022-12-30 11:18:45 +05:30
Anant Murmu efa944f4bc
[cleanup] Use random.choices (#5800)
Authored by: freezboltz
2022-12-30 08:13:49 +05:30
pukkandan 8791e78ccc
Fix original_url in playlists 2022-12-23 01:44:20 +05:30
pukkandan 71df9b7fd5
[cleanup] Misc 2022-12-03 19:52:31 +05:30
pukkandan 784320c98c
Implement universal format sorting
Closes #5566
2022-11-17 11:05:49 +05:30
pukkandan 105bfd90f5
Add new field aspect_ratio
Closes #5402
2022-11-16 06:57:09 +05:30
pukkandan 6368e2e639
[cleanup] Misc
Closes #5541
2022-11-16 06:57:07 +05:30
pukkandan d7b460d0e5
Make early reject of --match-filter stricter
Closes #5509
2022-11-13 10:56:06 +05:30
pukkandan bc5c2f8a2c
Fix bugs in PlaylistEntries 2022-11-12 00:02:12 +05:30
bashonly e4221b700f
Fix --list options not implying -s in some cases (#5296)
Authored by: bashonly, Grub4K
2022-11-11 14:24:57 +05:30
pukkandan 497074f044
Write API params in debug head 2022-10-25 20:09:28 +05:30
pukkandan d5d1df8afd
[cleanup Misc
Closes #5162
2022-10-18 23:52:44 +05:30
cruel-efficiency 2576d53a31
Fix end time of clips (#5255)
Closes #5256
Authored by: cruel-efficiency
2022-10-18 18:21:43 +05:30
pukkandan 9b9dad119a
[outtmpl] Ensure ASCII in json and add option for Unicode
Closes #5236
2022-10-14 11:50:24 +05:30
pukkandan 94dc8604dd
Do more processing in --flat-playlist 2022-10-13 15:30:14 +05:30
pukkandan aebb4f4ba7
Fix for formats=None
Fixes: https://github.com/yt-dlp/yt-dlp/pull/4965#issuecomment-1267682512
2022-10-05 09:17:33 +05:30
pukkandan a057779d5e
[cleanup] Minor fixes
Closes #5129, Closes #4982
2022-10-04 01:48:14 +05:30
sam 177662e0f2
[extractor/MicrosoftEmbed] Add extractor (#5082)
Closes #2638
Authored by: DoubleCouponDay
2022-10-03 19:22:30 +05:30
Simon Sawicki dfea94f8f6
[extractor/crunchyroll:beta] Improve handling of hardsubs (#5041)
Closes #3397
Authored by: Grub4K
2022-09-30 06:35:44 +05:30
pukkandan 0500ee3d81
Don't download entire video when no matching --download-sections 2022-09-26 03:04:32 +05:30
pukkandan 0bd5a039ea
Playlists maynot always have webpage_url 2022-09-25 23:27:21 +05:30
Lesmiscore fc2ba496fd
Allow open ranges for time ranges (#4940)
Authored by: Lesmiscore
2022-09-17 01:04:23 +09:00
pukkandan 9c935fbc72
Fix bug in ae1035646a
Closes #4890
2022-09-11 05:12:52 +05:30
pukkandan deae7c1711
[cleanup] Misc 2022-09-10 03:46:54 +05:30
pukkandan 941e881e1f
Fix bug in ae1035646a
Closes #4881
2022-09-10 03:42:43 +05:30
pukkandan ae1035646a
Allow a set to be passed as download_archive 2022-09-08 15:09:30 +05:30
pukkandan 17ffed1842
[docs] Improvements
* Move detailed installation instructions to https://github.com/yt-dlp/yt-dlp/wiki/Installation
* Link to wiki where applicable
* Fix some mistakes. Closes #4853, Closes #4855, Closes #4852
* Improve some error messages
2022-09-07 17:38:05 +05:30
pukkandan 48c8424bd9
Fix bug in 07a1250e0e 2022-09-06 19:57:29 +05:30
pukkandan 07a1250e0e
[outtmpl] Curly braces to filter keys 2022-09-03 18:28:24 +05:30
pukkandan d2c8aadf79
[cleanup] Misc
Closes #4710, Closes #4754, Closes #4723
Authored by: pukkandan, MrRawes, DavidH-2022
2022-09-01 16:49:03 +05:30
pukkandan 1ac7f46184
Update to ytdl-commit-ed5c44e7
[compat] Replace deficient ChainMap class in Py3.3 and earlier
ed5c44e7b7
2022-09-01 16:46:32 +05:30
bashonly 9bd13fe5bb
[cookies] Support firefox container in --cookies-from-browser (#4753)
Authored by: bashonly
2022-08-30 22:24:46 +05:30
pukkandan da4db748fa
[utils] Add deprecation_warning
See https://github.com/yt-dlp/yt-dlp/pull/2173#issuecomment-1097021515
2022-08-30 21:03:07 +05:30
pukkandan b5e7a2e69d
Add version to infojson 2022-08-24 13:03:45 +05:30
pukkandan fd404bec7e
Fix --break-per-url --max-downloads 2022-08-24 08:00:13 +05:30
pukkandan fe7866d0ed
Add option --use-extractors
Deprecates `--force-generic-extractor`

Closes #3234, Closes #2044

Related: #4307, #1791
2022-08-24 07:47:51 +05:30
pukkandan 5314b52192
[utils] Add orderedSet_from_options 2022-08-24 07:38:55 +05:30
pukkandan a831c2ea90
[cleanup] Misc 2022-08-19 05:08:21 +05:30
pukkandan c200096c03
Fix bug in --download-archive
Closes #4668
2022-08-16 22:00:51 +05:30
pukkandan 1e4fca9a87
[cleanup] Misc 2022-08-15 03:41:45 +05:30
Lesmiscore 62b58c0936
[docs] Consistent use of e.g. (#4643)
Authored by: Lesmiscore
2022-08-14 17:34:13 +05:30
pukkandan f0ad6f8c51
Remove filtered entries from -J
Closes #4369
2022-08-09 02:01:40 +05:30
pukkandan 70b2340909
[build, devscripts] Add devscript to set a build variant
Closes #4471
2022-08-09 01:08:48 +05:30
pukkandan b8ed0f15d4
[extractor] Add field audio_channels 2022-08-08 01:35:36 +05:30
Lauren N. Liberda fc61aff41b
Determine merge container better (See desc) (#1482)
* Determine the container early. Closes #4069
* Use codecs instead of just file extensions
* Obey `--prefer-free-formats`
* Allow fallbacks in `--merge-output`

Authored by: pukkandan, selfisekai
2022-08-04 06:12:12 +05:30
pukkandan 7356a44443
Fix misleading DRM message
Closes #4534
2022-08-02 20:29:09 +05:30
pukkandan a6ca61d427
Fix bug in 0647d9251f 2022-08-02 04:04:39 +05:30
pukkandan 0647d9251f
Minor bugfixes 2022-08-02 03:52:23 +05:30
pukkandan 1e8fe57e5c [extractor] Support multiple archive ids for one video (#4307)
Closes #4352
2022-08-02 01:08:16 +05:30
pukkandan 8f97a15d1c [extractor] Framework for embed detection (#4307) 2022-08-02 01:08:16 +05:30
pukkandan a6bcaf71fc
[outtmpl] Treat empty values as None in filenames
Workaround for #4485
2022-07-31 03:26:09 +05:30
pukkandan 8dc5930511
[utils, cleanup] Consolidate known media extensions 2022-07-31 02:20:13 +05:30
pukkandan 3955b20703
Fix bugs in 3bec830a59
Closes #4454
2022-07-27 17:10:26 +05:30
pukkandan 693f060040
[youtube,twitch] Allow waiting for channels to become live
Closes #2597
2022-07-26 09:33:19 +05:30
pukkandan 3bec830a59
Reject entire playlists faster with --match-filter
Rejected based on `playlist_id` etc can be checked before any entries are extracted

Related: #4383
2022-07-26 09:33:12 +05:30
pukkandan 6929b41a21
Remove Python 3.6 support
Closes #3764
2022-07-18 06:31:14 +05:30
pukkandan c6e07cf1e1
[cleanup] Misc 2022-07-18 05:14:55 +05:30
pukkandan 24093d52a7
[update] Prepare to remove Python 3.6 support 2022-07-17 18:45:44 +05:30
pukkandan f5e438a976
[compat] Let PyInstaller detect _legacy module 2022-07-17 18:45:43 +05:30
pukkandan a7dc6a89f6
Support --no-progress for --wait-for-video
Closes #4365
2022-07-16 22:12:28 +05:30
Sebastian Wallkötter 0f44636597
[docs] Improve docstring of download_ranges (#4340)
Authored by: FirefoxMetzger
2022-07-12 19:21:41 +05:30
pukkandan f5ea47488a
[cleanup] Minor fixes 2022-07-11 02:24:36 +05:30
pukkandan 134c913cca
Discard info_dict from memory if no longer needed
Closes #1399
2022-07-11 02:14:23 +05:30
pukkandan cb794ee010
Do not allow extractors to return None 2022-07-11 01:13:31 +05:30
pukkandan 563e0bf82a
Fix rounding of integers in format table 2022-07-11 01:10:38 +05:30
pukkandan d816f61fbf
[utils, cleanup] Refactor parse_codecs 2022-07-11 01:10:38 +05:30
pukkandan f2df407165
[cleanup] Misc cleanup 2022-07-09 09:07:10 +05:30
Lesmiscore (Naoya Ozaki) ca9def714a
Skip some fixup if remux/recode is needed (#4266)
Authored by: Lesmiscore
2022-07-09 02:28:46 +05:30
pukkandan 47cdc68e03
[outtmpl] Add alternate form h for HTML escaping
Related: https://github.com/yt-dlp/yt-dlp/issues/3292
2022-07-09 01:52:08 +05:30
pukkandan a3976e0760
Improve chapter sanitization 2022-07-07 11:28:56 +05:30
pukkandan 9d339c41e2
Release 2022.06.29 2022-06-29 07:09:51 +05:30
pukkandan ae61d108dd
[cleanup] Misc cleanup 2022-06-29 06:43:27 +05:30
pukkandan b1f94422cc
[update] Ability to set a maximum version for specific variants 2022-06-29 06:43:24 +05:30
pukkandan 9eef7c4e55
Sanitize chapters
Closes #4182
2022-06-26 04:49:33 +05:30
pukkandan 14f25df2b6
[compat] Remove deprecated functions from core code 2022-06-25 00:14:12 +05:30
pukkandan 54007a45f1
[cleanup] Consistent style for file heads 2022-06-25 00:08:58 +05:30
pukkandan ac66811112
[compat] Remove more functions
Removing any more will require changes to a large number of extractors
2022-06-25 00:08:55 +05:30
pukkandan bc40160883
Fix section_end of clips
Closes #4165
2022-06-25 00:08:49 +05:30
pukkandan 1ac4fd80c8
Fix playlist error handling
Bug in 7e88d7d78f
2022-06-22 08:39:14 +05:30
pukkandan eff4275925
Add deprecation warning for Py3.6
See: https://github.com/yt-dlp/yt-dlp/issues/3764
2022-06-22 06:20:40 +05:30
pukkandan 3975b4d2e8
Allow extractors to specify section_start/end for clips 2022-06-22 02:44:28 +05:30
pukkandan 7b2c3f47c6
[cleanup] Misc 2022-06-20 11:44:55 +05:30
pukkandan 8aa0e7cd96
[docs] Improvements 2022-06-20 10:48:29 +05:30
pukkandan bf1824b391
[cleanup] Deprecate YoutubeDL.parse_outtmpl 2022-06-18 08:36:39 +05:30
pukkandan 7e9a612585
Add option --lazy-playlist to process entries as they are received 2022-06-17 14:20:40 +05:30
pukkandan 7e88d7d78f
Add slicing notation to --playlist-items
* Adds support for negative indices and step
* Add `-I` as alias for `--playlist-index`
* Deprecates `--playlist-start`, `--playlist-end`, `--playlist-reverse`, `--no-playlist-reverse`

Closes #2951, Closes #2853
2022-06-17 10:36:52 +05:30
pukkandan f0c9fb9682
[utils] Popen: Refactor to use contextmanager
Fixes https://github.com/yt-dlp/yt-dlp/issues/3531#issuecomment-1156223597
2022-06-16 06:23:50 +05:30
pukkandan 560738f34d
[extractor] Import _ALL_CLASSES lazily
This significantly speeds up `import yt_dlp` in the absence of `lazy_extractors`
2022-06-16 06:23:50 +05:30
pukkandan fccf90e7f3
Fix bug in 56ba69e4c9 2022-06-13 19:16:06 +05:30
pukkandan 64fa820ccf
[cleanup] Misc fixes (see desc)
* [tvver] Fix bug in 6837633a4a - Closes #4054
* [rumble] Fix tests - Closes #3976
* [make] Remove `cat` abuse - Closes #3989
* [make] Revert #3684 - Closes #3814
* [utils] Improve `get_elements_by_class` - Closes #3993
* [utils] Inherit `Namespace` from `types.SimpleNamespace`
* [utils] Use `re.fullmatch` for matching filters
* [jsinterp] Handle quotes in `_separate`
* [make_readme] Allow overshooting last line

Authored by: pukkandan, kwconder, MrRawes, Lesmiscore
2022-06-12 00:08:16 +05:30
pukkandan 56ba69e4c9
[cleanup] Misc fixes
Closes #4027
2022-06-11 05:00:12 +05:30
pukkandan 5ec1b6b716
Add option --download-sections to download video partially
Closes #52, Closes #3932
2022-06-07 02:41:55 +05:30
pukkandan 1890fc6389
[cleanup] Misc fixes
Cherry-picks from: #3498, #3947
Related: #3949, https://github.com/yt-dlp/yt-dlp/issues/1839#issuecomment-1140313836
Authored by: pukkandan, flashdagger, gamer191
2022-06-03 21:45:35 +05:30
pukkandan 0bf9dc1e35
Fix bug in 8a82af3511 2022-05-27 21:29:30 +05:30
pukkandan 8a82af3511
[cleanup] Misc fixes and cleanup
Closes #3780, Closes #3853, Closes #3850
2022-05-27 04:43:43 +05:30
pukkandan c487cf0010
[cleanup] Misc 2022-05-21 16:01:53 +05:30
pukkandan 415f8d51a8
Ensure pre-processor errors do not block video download
Closes #2875
2022-05-21 02:30:16 +05:30
pukkandan ca6d59d2c1
Fix --simulate --max-downloads
Bug in c3e6ffba53
Closes #3815
2022-05-20 23:13:31 +05:30
pukkandan 53973b4d2c
[utils] Fix bug in 0b9c08b47b
* Cache of `supports_terminal_sequences` must be reset after enabling VT mode
* and move `windows_enable_vt_mode` to utils to avoid cyclic imports
2022-05-20 06:01:09 +05:30
pukkandan 23326151c4
Add option --retry-sleep (#3059)
Closes #2852
2022-05-19 20:00:31 +05:30
pukkandan 21633673c3
[cleanup] Minor fixes 2022-05-18 09:04:30 +05:30
pukkandan 7896214c42
Bugfix for 591bb9d355
Closes #3769
2022-05-17 22:33:15 +05:30
pukkandan 5792c950bf
[compat] Implement compat.imghdr
Python 3.11 deprecates `imghdr` module
2022-05-17 19:46:01 +05:30
pukkandan 591bb9d355
Fix color in -q -F
and convert `ydl._out_files`/`ydl._allow_colors` to `Namespace`

Closes #3761
2022-05-17 18:41:46 +05:30
pukkandan 490110c543
--max-downloads should obey --break-per-input 2022-05-17 00:07:44 +05:30
pukkandan 2414649192
[cleanup] Misc cleanup 2022-05-17 00:07:43 +05:30
pukkandan 494f52308b
[FixupM3u8] Obey --hls-prefer-mpegts
Closes #3697
2022-05-11 11:03:36 +05:30
pukkandan 3a408f9d19
Show name of downloader in verbose log
Closes #3703
2022-05-11 07:20:54 +05:30
pukkandan d76fa1f3d4
[cookies] Allow cookiefile to be a text stream
Closes #3674
2022-05-11 05:52:55 +05:30
pukkandan 0f06bcd759
[cleanup] Minor fixes (See desc)
* [youtube] Fix `--youtube-skip-dash-manifest`
* [build] Use `$()` in `Makefile`. Closes #3684
* Fix bug in 385ffb467b
* Fix bug in 43d7f5a5d0
* [cleanup] Remove unnecessary `utf-8` from `str.encode`/`bytes.decode`
* [utils] LazyList: Expose unnecessarily "protected" attributes
and other minor cleanup
2022-05-09 17:59:26 +05:30
pukkandan d7a1aa00c6
Run FFmpegFixupM3u8PP for live-streams if needed
Closes #3669
2022-05-07 22:36:23 +05:30
pukkandan d4736fdb43
Remove warning for videos with an empty title 2022-05-07 19:45:33 +05:30
coletdev bb58c9ed5c
Add support for SSL client certificate authentication (#3435)
Adds `--client-certificate`, `--client-certificate-key`, `--client-certificate-password`

Authored-by: coletdjnz
Co-authored-by: df <fieldhouse@gmx.net>
Co-authored-by: pukkandan <pukkandan.ytdlp@gmail.com>
2022-05-02 07:59:45 +00:00
pukkandan 3fe75fdc80
[cleanup] Misc fixes (see desc)
* Do not warn when fixup is skipped for existing file
* [fragment] Fix `--skip-unavailable-fragments` for HTTP Errors
* [utils] write_string: Fix bug in 59f943cd50
* [utils] parse_codecs: Subtitle codec is generally referred to as `scodec`. https://github.com/yt-dlp/yt-dlp/pull/2174#discussion_r790156048
* [docs] Remove note about permissions. Closes #3597
2022-05-01 04:58:38 +05:30
pukkandan 43d7f5a5d0
[EmbedThumbnail] Do not obey -k 2022-05-01 04:58:26 +05:30
pukkandan 1d485a1a79
[cleanup] Misc fixes
Closes #3565, https://github.com/yt-dlp/yt-dlp/issues/3514#issuecomment-1105944364
2022-04-29 07:39:33 +05:30
pukkandan 0a41f331cc
[doc] Minor improvements
Closes #3518, Closes #3560
2022-04-29 06:53:36 +05:30
pukkandan 492272fed6
--match-filter - to interactively ask for each video 2022-04-28 20:04:40 +05:30
pukkandan 59f943cd50
[utils] write_string: Workaround newline issue in conhost
On windows `conhost`, when `WINDOWS_VT_MODE` is enabled, `\n` is not
actually sent if the window is exactly the length of printed line,
and the line does not end with a white-space character. So the
line-break disappears when resizing the window.

Fixes #1863
2022-04-28 20:04:40 +05:30
pukkandan 0a5a191a2a
Improve --clean-infojson
It should not removes fields that may be needed for `--load-infojson`.
Eg: `_ffmpeg_args`, `_has_drm`
2022-04-28 20:04:40 +05:30
pukkandan 9b8ee23b99
[dependencies] Create module with all dependency imports 2022-04-21 00:48:52 +05:30
pukkandan 19a0394044
[cleanup] Misc cleanup and refactor (#2173) 2022-04-18 02:28:28 +05:30