Commit Graph

497 Commits (3ba7740dd841ebcfe8f47612eac30d3b470fa93d)

Author SHA1 Message Date
pukkandan e36d50c5dd
[websockets] Add `WebSocketFragmentFD` (#399)
Necessary for #392

Co-authored by: nao20010128nao, pukkandan
4 years ago
pukkandan ff0f78e1fe
[aria2c] Lower `--min-split-size` for HTTP downloads
This makes downloading smaller files much faster
4 years ago
pukkandan 7e067091e8
[options] Rename `--add-metadata` to `--embed-metadata`
and clarify that it embeds chapter markers
4 years ago
pukkandan f89b3e2d7a
Skip fixup of existing files and add `--fixup force` to force it 4 years ago
pukkandan fd7cfb6444
[cleanup] Refactor fixup 4 years ago
pukkandan 4e6767b5f2
[youtube] Temporary fix for age-gate
Related:
https://stackoverflow.com/a/67629882
https://github.com/yt-dlp/yt-dlp/issues/319
https://github.com/ytdl-org/youtube-dl/issues/29333
https://github.com/ytdl-org/youtube-dl/issues/29086
4 years ago
pukkandan 9fea350f0d
Fix id sanitization in filenames
Closes #415
4 years ago
pukkandan e858a9d6d3
[EmbedThumbnail] Add compat-option `embed-thumbnail-atomicparsley`
to force use of atomicparsley for embedding thumbnails in mp4

Related: #411
4 years ago
pukkandan 7e87e27c52
[postprocessor] Fix `_restrict_to` when a codec is not set 4 years ago
pukkandan d0fb4bd16f
[pornhub] Extract `cast`
Closes #406, https://github.com/ytdl-org/youtube-dl/pull/27384
4 years ago
felix 3fd4c2a543
[mediasite] Extract slides (#343)
Fixes:
https://github.com/ytdl-org/youtube-dl/issues/4974#issue-58006762
https://github.com/ytdl-org/youtube-dl/issues/4540#issuecomment-69574231
https://github.com/ytdl-org/youtube-dl/pull/11185#issuecomment-335554239

Authored by: fstirlitz
4 years ago
felix cdb19aa4c2
[downloader/mhtml] Add new downloader (#343)
This downloader is intended to be used for streams that consist of a
timed sequence of stand-alone images, such as slideshows or thumbnail
streams

This can be used for implementing:

https://github.com/ytdl-org/youtube-dl/issues/4974#issue-58006762
https://github.com/ytdl-org/youtube-dl/issues/4540#issuecomment-69574231
https://github.com/ytdl-org/youtube-dl/pull/11185#issuecomment-335554239

https://github.com/ytdl-org/youtube-dl/issues/9868
https://github.com/ytdl-org/youtube-dl/pull/14951


Authored by: fstirlitz
4 years ago
pukkandan 4d85fbbdbb
Fix bug in 8326b00aab 4 years ago
pukkandan 551f93885e
Ignore `images` formats from merge 4 years ago
pukkandan 8326b00aab
Allow `images` formats
Necessary for #343.

* They are identified by `vcodec=acodec='none'`
* These formats show as the worst in `-F`
* Any postprocessor that expects audio/video will be skipped
* `b*` and all related selectors will skip such formats
* This commit also does not add any selector for downloading such formats. They have to be explicitly requested by the `format_id`. Implementation of a selector is left for when #389 is resolved
4 years ago
pukkandan b0249bcaf0
Expand `--check-formats` to thumbnails
Closes #402
4 years ago
pukkandan 21cd8fae49
Use `NamedTemporaryFile` for `--check-formats` 4 years ago
pukkandan 45db527fa6
[youtube] Login is not needed for `:ytrec` 4 years ago
pukkandan 28419ca2c8
[utils] Improve `LazyList`
* Add `repr` and `str` that mimics `list`
* Add `reversed`. Unlike `[::-1]`, reversed does not exhaust the iterable and modifies the `LazyList` in-place
* Add tests
4 years ago
pukkandan 8ba8714880
[EmbedThumbnail] Fix for already downloaded thumbnail 4 years ago
pukkandan 187986a857
Better error handling of syntax errors in `-f` 4 years ago
coletdjnz 4ba001080f
[youtube] Non-fatal alert reporting for unavailable videos page (#401)
Co-Authored by: colethedj, pukkandan
4 years ago
coletdjnz 1974e99f4b
[youtube] Improve SAPISID cookie handling (closes #393) (#395)
Author: colethedj
4 years ago
pukkandan 0181adefc6
[build] Build Windows x86 version with py3.7
and remove redundant tests
Closes #390

:ci skip

Co-authored by: pukkandan, shirt-dev
4 years ago
pukkandan fd3c633d26
[version] update
:ci skip all
4 years ago
pukkandan 385a27fad1
Improve offset parsing in outtmpl 4 years ago
pukkandan 639f1cea92
Fix `%d` and empty default in outtmpl
Closes #388
4 years ago
pukkandan b5c5d84f60
Revert "[build] Build Windows x86 version with py3.8"
This reverts commit aa75e51f99.

See #390

This is being reverted instead of modified due to #388
4 years ago
pukkandan aa75e51f99
[build] Build Windows x86 version with py3.8
and remove redundant tests
:ci skip

Ao-authored by: pukkandan, shirt-dev
4 years ago
pukkandan 884ce9d05d
[version] update :ci skip all 4 years ago
pukkandan 3b1fe47d84
Release 2021.06.08 4 years ago
pukkandan 76a264ac9e
Make outtmpl more robust and catch errors early 4 years ago
pukkandan 324ad82006
[utils] Generalize `traverse_dict` to `traverse_obj` 4 years ago
Nil Admirari beb982bead
[build,update] Add GNU-style SHA512 and prepare updater for simlar SHA256 (#383)
Authored by: nihil-admirari <50202386+nihil-admirari@users.noreply.github.com>

Related: #385
4 years ago
pukkandan 46358f647d
Update to ytdl-commit-c2350ca
Update MSVC 2010 redist URL
c2350cac24
4 years ago
pukkandan bd99f6e648
Add field `original_url` with the user-inputted URL
So that they can be processed by `--parse-metadata` for example

`webpage_url` is the same, but may be modified by the extractor
4 years ago
pukkandan ecb5419149
Make more fields available for `--print` when used with `--flat-playlist` 4 years ago
pukkandan 89ee4cf8ae
[viki] Fix extraction
Closes #381
Code from: 59e583f7e8
4 years ago
pukkandan 87ea7dfc04
Fix filename sanitization
Bug from 752cda3880
4 years ago
pukkandan eb0f9d6838
[zoom] Extract transcripts as subtitles 4 years ago
pukkandan d3d8d8184a
[extractor] Fix pre-checking archive for some extractors
The `id` regex group must be present for `_match_id` and pre-checking archive to work correctly
4 years ago
pukkandan e85a39717a
[twitcasting] Add TwitCastingUserIE, TwitCastingLiveIE
Closes #374

Code adapted from: f1fb9222bb/youtube_dl/extractor/twitcasting.py
Authored by: pukkandan, nao20010128nao
4 years ago
MinePlayersPE f2cd7060fc
[vidio] Add VidioPremierIE and VidioLiveIE (#371)
Authored-by: MinePlayersPE
4 years ago
pukkandan 752cda3880
Fix and refactor `prepare_outtmpl`
The following tests would have failed previously:
%(id)d %(id)r
%(ext)s-%(ext|def)d
%(width|)d
%(id)r %(height)r
%(formats.0)r
%s
4 years ago
pukkandan 9d83ad93d0
[cleanup] Mark unused files 4 years ago
felix cc52de4356
[cleanup] Point all shebang to `python3` (#372)
Authored by: fstirlitz
4 years ago
felix 2ec1759f9d
[downloader/ffmpeg] Hide FFmpeg banner unless in verbose mode (#372)
Authored by: fstirlitz
4 years ago
felix e2efe599aa
[common] Fix FourCC fallback when parsing ISM (#372)
In some DASH manifests, the FourCC attribute is actually present,
but empty.  We thus apply the same fallback to 'AACL' that we do
when the attribute is entirely absent.

Authored by: fstirlitz
4 years ago
pukkandan 5e1dba8ed6
Remove duplicate file `trovolive.py` 4 years ago
pukkandan bea742222f
[youtube] Support shorts URL
Closes #375
4 years ago
pukkandan e06ca6ddac
[hls] Decrypt fragment when reading from disk
Closes #373
4 years ago
pukkandan eb03899192
[version] update
:ci skip all
4 years ago
pukkandan bc6b9bcd65
[utils] Escape URLs in `sanitized_Request`, not `sanitize_url`
d2558234cf added escaping of URLs while sanitizing. However, `sanitize_url` may not always receive an actual URL.
Eg: When using `yt-dlp "search query" --default-search ytsearch`, `search query` gets escaped to `search%20query` before being prefixed with `ytsearch:` which is not the intended behavior. So the escaping is moved to `sanitized_Request` instead.
4 years ago
Ashish 6e6390321c
[Hotstar] Add HotStarSeriesIE (#366)
Authored by: Ashish0804
4 years ago
pukkandan 4040428efc
[update] Block further update for unsupported systems 4 years ago
pukkandan 14eb1ee1cb
Update to ytdl-commit-d495292
[ard] Relax _VALID_URL and fix video ids
d495292852

Closes #357
4 years ago
coletdjnz 879e7199bb
[archiveorg] Add YoutubeWebArchiveIE (#356)
Co-authored by: colethedj, pukkandan, alex-gedeon
4 years ago
pukkandan d89da64b1d
[hls,dash] When using `concurrent_fragment_downloads`, do not keep the fragment content in memory
Partial fix for #359
This is a temporary solution until #364 can be implemented
4 years ago
pukkandan 5dcd8e1d88
[hls] Disable external downloader for `webtt` 4 years ago
MinePlayersPE 10bb7e51e8
[vidio] Add login support (#362)
Authored by: MinePlayersPE
4 years ago
pukkandan b0089e8992
[fancode] Add extractor (#316,#354)
Closes #269, #363

Authored by: rmsmachine
4 years ago
Ashish a3ed14cbaf
[Voot] Add VootSeriesIE (#351)
Authored by: Ashish0804
4 years ago
LE 9dee4df559
[Saitosan] Add new extractor (#350)
Closes #224
Authored by: llacb47
4 years ago
pukkandan adddc50cbf
[extractor] Functions to parse socket.io response as json
Authored by: pukkandan, llacb47
4 years ago
MinePlayersPE 46c43ffc9d
[vidio] Support premium videos (#358)
Authored by: MinePlayersPE
4 years ago
pukkandan 37a3bb66a7
[extractor] Allow `note=False` when extracting manifests 4 years ago
pukkandan 337e0c62f8
[embedthumbnail] Correctly escape filename
Closes #352
The approach in [1] is faulty as can be seen in the test cases
1. bff857a8af
4 years ago
pukkandan 885cc0b75c
[embedthumbnail] Embed if any thumbnail was downloaded, not just the best 4 years ago
pukkandan 46953e7e6e
[youtube:playlist] fix bug 4 years ago
pukkandan ae8f99e648
Remove `None` values from `info.json` 4 years ago
pukkandan 077c476276
[zee5] Fix m3u8 formats extension 4 years ago
pukkandan 835a1478b4
Write messages to `stderr` when both `quiet` and `verbose` 4 years ago
pukkandan 120fe5134a
Pre-check archive and filters during playlist extraction
This makes `--break-on-existing` much faster.
It also helps `--break-on-reject` if the playlist extractor can extract the relevant fields
4 years ago
pukkandan 56a8fb4f77
Refactor `__process_playlist` using `LazyList` 4 years ago
pukkandan 55575225b4
[utils] Add `__getitem__` for `PagedList` 4 years ago
pukkandan 483336e79e
[utils] Add `LazyList` 4 years ago
pukkandan c77495e3a4
[cleanup] `_match_entry` 4 years ago
rhsmachine 65af1839c6
[patreon] Support vimeo embeds (#349)
Authored by: rhsmachine
4 years ago
pukkandan 177877c544
[extractor] Always prefer native hls downloader by default
When the manifest is not downloadable by native downloader, it already is able to detect it and switch to `ffmpeg`. So there doesn't seem to be a reason anymore to use ffmpeg as the preferred downloader
4 years ago
pukkandan b25522ba52
[update] Replace self without launching a subprocess in windows
Closes: #335, https://github.com/ytdl-org/youtube-dl/issues/28488, https://github.com/ytdl-org/youtube-dl/issues/5810, https://github.com/ytdl-org/youtube-dl/issues/5994

In windows, a running executable cannot be replaced. So, the old updater worked by launching a batch script and then exiting, so that the batch script can replace the executable. However, this caused the above-mentioned issues.

The new method takes advantage of the fact that while the executable cannot be replaced or deleted, it can still be renamed. The current update process on windows is as follows:
1. Delete `yt-dlp.exe.old` if it exists
2. Download the new version as `yt-dlp.exe.new`
3. Rename the running exe to `yt-dlp.exe.old`
4. Rename `yt-dlp.exe.new` to `yt-dlp.exe`
5. Open a shell that deletes `yt-dlp.exe.old` and terminate

While we still use a subprocess, the actual update is already done before the app terminates and the batch script does not print anything to stdout/stderr. So this solves all the above issues
4 years ago
pukkandan c19bc311cb
[cleanup] Refactor updater
The updater now uses `.update.run_update` and not `.update.update_self`.
Although I don't expect anyone to be using the updater via API, a wrapper `update_self` is provided for compatibility just in case
4 years ago
Hubert Hirtz 5435dcf96e
Handle Basic Auth `user:pass` in URLs
Fixes https://github.com/ytdl-org/youtube-dl/issues/20258, https://github.com/ytdl-org/youtube-dl/issues/26211
Authored by: hhirtz, pukkandan
4 years ago
Oliver Freyermuth f17c702270
[ard] Allow URLs without `-` before id
https://github.com/ytdl-org/youtube-dl/pull/29091

Authored by: olifre
4 years ago
pukkandan 3907333c5d
[extractor] Skip subtitles without URI in m3u8 manifests
Closes #339

Authored by: hheimbuerger
4 years ago
pukkandan acdecdfaef
[embedthumbnail] Embed in `mp4`/`m4a` using mutagen
Code from: https://github.com/ytdl-org/youtube-dl/pull/23525
Co-authored by: tripulse , pukkandan
4 years ago
Ashish 09d18ad07e
[Sonyliv] Add subtitle support (#342)
Authored by: Ashish0804
4 years ago
pukkandan bc516a3f3c
Sanitize and sort playlist thumbnails
Closes #341
4 years ago
Ashish 9572eaaa11
[ShemarooMe] Add extractor (#332)
Closes #307
Co-authored-by: Ashish0804, pukkandan
4 years ago
pukkandan 18e674b4f6
[ffmpeg] Download and merge in a single step if possible 4 years ago
pukkandan 8d68ab98a7
[youtube] Fix bug where not all hls formats were extracted
Bug introduced in 9297939ec3
4 years ago
Ashish 135e6b93f4
[SonyLIV] Add SonyLIVSeriesIE (#331)
Authored by: Ashish0804
4 years ago
king-millez 13a49340ed
[telemundo] add extractor (#327)
Closes #284
Authored by: king-millez
4 years ago
pukkandan 81a23040eb
[cleanup] Refactor ffmpeg convertors 4 years ago
pukkandan 857f63136d
[videoconvertor] Generalize with remuxer and allow conditional recoding 4 years ago
louie-github a927acb1ec
[ThumbnailsConvertor] Support conversion to `png` and make it the default (#333)
PNG, being a lossless format, should be a better default here compared to JPG since we won't be compressing to a lossy format and losing some of the original image data
PNG is also supported for embedding in all the formats similar to JPEG

Authored by: louie-github
4 years ago
pukkandan 09f1580e2d
[youtube] `/live` URLs should raise error if channel is not live
Fixes: https://github.com/ytdl-org/youtube-dl/issues/29090
4 years ago
pukkandan cd59e22191
[version] update
:ci skip all
4 years ago
pukkandan b73612a254
Update to ytdl-commit-dfbbe29
[redbulltv] fix embed data extraction
dfbbe2902f
4 years ago
king-millez 5014558ab9
[parlview] Add extractor (#322)
Authored by: king-millez
4 years ago
pukkandan 28b0eb0f65
[cleanup] See desc
* Remove struct from `embedthumbnail`
* Use bullet lists in readme where numbered list don't make sense
* Fix error introduced in 9c2b75b561 when `ie_result` is `None`
4 years ago
pukkandan 95131b2176
[embedthumbnail] Add `flac` support and refactor `mutagen` code
https://github.com/ytdl-org/youtube-dl/pull/28894, https://github.com/ytdl-org/youtube-dl/pull/24310
Authored by: tripulse
4 years ago
pukkandan 2305e2e5c9
[options] Alias `--write-comments`, `--no-write-comments`
Closes: #264
4 years ago
coletdjnz 00ae27690d
[youtube] Add `html5=1` param to `get_video_info` page requests (#329)
Workaround for #319, https://github.com/ytdl-org/youtube-dl/issues/29086
Authored by: colethedj
4 years ago
pukkandan 9d5d4d64f8
[youtube] Better message when login required 4 years ago
king-millez 98784ef8d6
[audius:artist] Add extractor (#323)
Authored by: king-millez
4 years ago
pukkandan d3fc8074a4
[youtube] Sort audio-only formats correctly
Closes #317
4 years ago
pukkandan 9c2b75b561
Field `additional_urls` to download additional videos from metadata 4 years ago
pukkandan 856bb8f99d
[downloader] Fix `write_debug` 4 years ago
pukkandan 4ec82a72bb
Ensure `post_extract` and `pre_process` only run once
Previously, they ran once for each format requested
4 years ago
pukkandan 07cce701de
[cleanup] linter, code formatting and readme 4 years ago
king-millez 74e001af1d
[tenplay] Fix extractor (#314)
Authored by: king-millez
4 years ago
pukkandan ff2751ac9c
[youtube] Always extract `maxresdefault` thumbnail
Fixes: https://github.com/ytdl-org/youtube-dl/issues/29049
4 years ago
pukkandan abcdd12b26
[youtube:tab] Support youtube music `MP` pages 4 years ago
pukkandan 18db754858
[youtube:tab] Redirect `UC` channels that doesn't have a `videos` tab
Many topic URLs don't have a videos tab, but has an equivalent `UU` playlist.
If there is no playlist, fallback to using channel page
4 years ago
pukkandan fe03a6cdc8
[youtube:tab] Support youtube music `VL` and `browse` pages 4 years ago
pukkandan cd684175ad
[youtube:tab] Support channel search
Fixes: https://github.com/ytdl-org/youtube-dl/issues/29071
4 years ago
pukkandan da692b7920
[cleanup] youtube tests 4 years ago
pukkandan 95c01b6c16
[youtube:tab] Show alerts only from the final webpage 4 years ago
pukkandan 5112f26a60
Add `pl_thumbnail` outtmpl key for playlist thumbnails
This should have been implemented in 681de68e9d, but I forgot
4 years ago
pukkandan a06916d98e
[extractor] Add `write_debug` and `get_param` 4 years ago
pukkandan 681de68e9d
Write thumbnail of playlist
Related: https://github.com/ytdl-org/youtube-dl/pull/28872, https://github.com/ytdl-org/youtube-dl/pull/28860
This is slightly different from the above PRs in that this downloads the playlist's thumbnail instead of the uploader's profile picture. But for youtube channel URLs these are the same
4 years ago
pukkandan 7aee40c13c
Fix bug in listing subtitles
Bug introduced by: 2412044c90
4 years ago
coletdjnz 9297939ec3
[Youtube] Extract more formats for `music.youtube` URLs (#311)
Based on: https://github.com/ytdl-org/youtube-dl/pull/28778, https://github.com/ytdl-org/youtube-dl/pull/26160

Co-authored-by: craftingmod, colethedj, pukkandan
4 years ago
pukkandan 774d79cc4c
[youtube] Add language names
Co-authored by: nixxo, tpikonen
Based on: https://github.com/ytdl-org/youtube-dl/pull/26112
Closes: #310
4 years ago
pukkandan 2412044c90
Add field `name` for subtitles
Co-authored by: pukkandan, tpikonen

Based on: #310, https://github.com/ytdl-org/youtube-dl/pull/26112
4 years ago
pukkandan 120916dac2
[youtube] multiple subtitles in same language
Fixes: https://github.com/ytdl-org/youtube-dl/issues/21164
Related: #310, https://github.com/ytdl-org/youtube-dl/pull/26112
4 years ago
pukkandan fe346461ff
Fix `--check-formats` when there is network error 4 years ago
pukkandan d2a1fad968
[compat] Fix py2 4 years ago
pukkandan 0fb983f62d
[youtube] Extract audio language 4 years ago
pukkandan 53c18592d3
Add option `--print`
Deprecates: `--get-description`, `--get-duration`, `--get-filename`, `--get-format`, `--get-id`, `--get-thumbnail`, `--get-title`, `--get-url`
Closes #295
4 years ago
pukkandan e632bce2e4
[options] Refactor callbacks 4 years ago
pukkandan 0760b0a7e2
Standardize `write_debug` 4 years ago
pukkandan d908aa636a
[cleanup] Fix typos 4 years ago
pukkandan 3d89341b47
[common] bugfix for when `compat_opts` is not given 4 years ago
pukkandan d8ec40b39f
[rmcdecouverte] Generalize `_VALID_URL`
Closes #291
4 years ago
pukkandan 4171221823
Add compat-option `no-attach-infojson` 4 years ago
pukkandan eaeca38fc4
[version] update :ci skip all 4 years ago
pukkandan fac988053f
Release 2021.05.11
* and some documentation improvements
4 years ago
pukkandan 61241abbb0
[generic] Respect the encoding in manifest 4 years ago
pukkandan 53ed7066ab
Option `--compat-options` to revert some of yt-dlp's changes
* Deprecates `--list-formats-as-table`, `--list-formats-old`
4 years ago
pukkandan a61f4b287b
Deprecate support for python versions < 3.6
Closes #267
4 years ago
pukkandan 486fb17975
Remove `-l`, `-t`, `-A` completely and disable `--auto-number`, `--title`, `--literal`, `--id` 4 years ago
pukkandan 2f567473c6
[Plugins] Prioritize plugins over standard extractors
and prevent plugins from overwriting the standard extractor classes

Closes #304
4 years ago
pukkandan 000ee7ef34
[fragment] Make sure first segment is not skipped 4 years ago
pukkandan 41d1cca328
Update to ytdl-commit-a726009
[blinkx] Remove extractor
a726009987
4 years ago
pukkandan 717297545b
Fix `playlist_index` and add `playlist_autonumber` (#302)
Now `playlist_index` is always the position of the video in the actual playlist and `playlist_autonumber` is the position of the item in the playlist queue
4 years ago
pukkandan e8e738406a
Add experimental option `--check-formats` to test the URLs before format selection 4 years ago
pukkandan e625be0d10
Improve output template internal formatting
* Allow slicing lists/strings using `field.start🔚step`
* A field can also be used as offset like `field1+num+field2`
* A default value can be given using `field|default`
* Capture all format strings and set it to `None` if invalid. This prevents invalid fields from causing errors
4 years ago
pukkandan 12e73423f1
[plutotv] Fix format extraction for some urls
* And fallback to the first urls if ad-free urls can't be found
Closes #299
4 years ago
pukkandan 7700b37f39
[plutotv] Extract subtitles from manifests 4 years ago