Bart Broere
2ce89a3c87
Add support for videos embedded in articles
2026-03-22 17:27:09 +00:00
Bart Broere
0ed52e0fd3
Merge branch 'master' into fix-npo-support
2026-03-08 19:08:16 +00:00
dirkf
956b8c5855
[YouTube] Bug-fix for c1f5c3274a
2025-11-26 03:02:36 +00:00
dirkf
d5f561166b
[core] Re-work format_note display in format list with abbreviated codec name
2025-11-26 03:02:36 +00:00
dirkf
d0283f5385
[YouTube] Revert forcing player JS by default
...
* still leaving the parameters in place
thx bashonly for confirming this suggestion
2025-11-21 01:52:11 +00:00
dirkf
6315f4b1df
[utils] Support additional codecs and dynamic_range
2025-11-21 01:52:11 +00:00
dirkf
aeb1254fcf
[YouTube] Fix playlist thumbnail extraction
...
Thx seproDev, yt-dlp/yt-dlp#11615
2025-11-21 01:52:11 +00:00
dirkf
25890f2ad1
[YouTube] Improve detection of geo-restriction
...
Thx yt-dlp
2025-11-21 01:52:11 +00:00
dirkf
d65882a022
[YouTube] Improve mark_watched()
...
Thx: Brett824, yt-dlp/yt-dlp#4146
2025-11-21 01:52:11 +00:00
dirkf
39378f7b5c
[YouTube] Fix incorrect chapter extraction
...
* align `_get_text()` with yt-dlp (thx, passim) at last
2025-11-21 01:52:11 +00:00
dirkf
6f5d4c3289
[YouTube] Improve targeting of pre-roll wait
...
Experimental for now.
Thx: yt-dlp/yt-dlp#14646
2025-11-21 01:52:11 +00:00
dirkf
5d445f8c5f
[YouTube] Re-work client selection
...
* use `android_sdkless` by default
* use `web_safari` (HLS only) if logged in
* skip any non-HLS format with n-challenge
2025-11-21 01:52:11 +00:00
dirkf
a1e2c7d90b
[YouTube] Add further InnerTube clients
...
FWIW: android-sdkless, tv_downgraded, web_creator
Thx yt-dlp passim
2025-11-21 01:52:11 +00:00
dirkf
c55ace3c50
[YouTube] Use insertion-order-preserving dict for InnerTube client data
2025-11-21 01:52:11 +00:00
dirkf
43e3121020
[utils] Align parse_duration() behaviour with yt-dlp
...
* handle comma-separated long-form durations
* support : as millisecond separator.
2025-11-21 01:52:11 +00:00
dirkf
7a488f7fae
[utils] Stabilise traversal results using compat_dict
...
In `traverse_obj()`, use `compat_dict` to construct dicts,
ensuring insertion order sort, but`compat_builtin_dict`
to test for dict-iness...
2025-11-21 01:52:11 +00:00
dirkf
5585d76da6
[compat] Add compat_dict
...
A dict that preserves insertion order and otherwise resembles the
dict builtin (if it isn't it) rather than `collections.OrderedDict`.
Also:
* compat_builtins_dict: the built-in definition in case `compat_dict`
was imported as `dict`
* compat_dict_items: use instead of `dict.items` to get items from
a `compat_dict` in insertion order, if you didn't define `dict` as
`compat_dict`.
2025-11-21 01:52:11 +00:00
dirkf
931e15621c
[compat] Add compat_abc_ABC
...
Base class for abstract classes
2025-11-21 01:52:11 +00:00
dirkf
27867cc814
[compat] Add compat_thread
2025-11-21 01:52:11 +00:00
dirkf
70b40dd1ef
[utils] Add subs_list_to_dict() traversal helper
...
Thx: yt-dlp/yt-dlp#10653 , etc
2025-11-21 01:52:11 +00:00
dirkf
a9b4649d92
[utils] Apply partial_application decorator to existing functions
...
Thx: yt-dlp/yt-dlp#10653 (etc)
2025-11-21 01:52:11 +00:00
dirkf
23a848c314
[utils] Add partial_application decorator function
...
Thx: yt-dlp/yt-dlp#10653
2025-11-21 01:52:11 +00:00
dirkf
a96a778750
[core] Fix housekeeping for available_at
2025-11-21 01:52:11 +00:00
dirkf
68fe8c1781
[utils] Support traversal helper functions require, value, unpack
...
Thx: yt-dlp/yt-dlp#10653
2025-11-21 01:52:11 +00:00
dirkf
96419fa706
[utils] Support filter traversal key
...
Thx yt-dlp/yt-dlp#10653
2025-11-21 01:52:11 +00:00
dirkf
cca41c9d2c
[test] Move dict_get() traversal test to its own class
...
Matches yt-dlp/yt-dlp#9426
2025-11-21 01:52:11 +00:00
dirkf
bc39e5e678
[test] Fix test_traversal_morsel for Py 3.14+
...
Thx: yt-dlp/yt-dlp#13471
2025-11-21 01:52:11 +00:00
dirkf
014ae63a11
[test] Support additional args and kwargs in report_warning() mocks
2025-11-21 01:52:11 +00:00
dirkf
1e109aaee1
[workflows/ci] Avoid installing wheel and setuptools with pip
...
Works around dependent wheel installation failure with Py 3.4 from 2025-10
2025-10-18 11:02:28 +01:00
dirkf
efb4011211
[YouTube] Introduce _extract_and_report_alerts() per yt-dlp
...
Fixes #33196 .
Also removing previous `_extract_alerts()` method.
2025-10-18 11:02:28 +01:00
dirkf
c1f5c3274a
[YouTube] Improve some traversals
...
Pending full alignment with yt-dlp ...
2025-10-18 11:02:28 +01:00
dirkf
e21ff28f6f
[YouTube] Misc clean-ups from linter, etc
2025-10-18 11:02:28 +01:00
dirkf
82552faba6
[workflows/ci] Update to windows-2022 runner
...
FFS
2025-09-29 02:15:05 +01:00
dirkf
617d4e6466
[core] Support explicit --no-list-formats option
2025-09-29 02:15:05 +01:00
dirkf
9223fcc48a
[YouTube] Support LOCKUP_CONTENT_TYPE_VIDEO in subscriptions feed extraction
...
From yt-dlp/yt-dlp#13665 ), thx bashonly
2025-09-29 02:15:05 +01:00
dirkf
4222c6d78b
[YouTube] Extract fallback title and description from initial data
...
Based on yt-dlp/yt-dlp#14078 , thx bashonly
2025-09-29 02:15:05 +01:00
dirkf
2735d1bf1d
[YouTube] Extract srt subtitles
...
From yt-dlp/yt-dlp#13411 , thx gamer191
2025-09-29 02:15:05 +01:00
dirkf
f2a774cb9d
[YouTube] Fix subtitles extraction
...
From yt-dlp/yt-dlp#13659 , thx bashonly
2025-09-29 02:15:05 +01:00
dirkf
92680b127f
[YouTube] Handle required preroll waiting period
...
* Based on yt-dlp/yt-dlp#14081 , thx bashonly
* Uses internal `youtube_preroll_sleep` param, default 6s
2025-09-29 02:15:05 +01:00
dirkf
40ab920354
[downloader] Delay download according to available_at format key
2025-09-29 02:15:05 +01:00
dirkf
0739f58f90
[YouTube] Implement player JS override for player 0004de42
...
* based on yt-dlp/yt-dlp#14398, thx seproDev
* adds --youtube-player-js-variant option
* adds --youtube-player-js-version option
* sets defaults to main variant of player `0004de42`
* fixes #33187 , for now
2025-09-29 02:15:05 +01:00
dirkf
aac0148b89
[YouTube] Force WEB user agent for video page download
...
Fixes #33142 , until default UAs work.
2025-09-29 02:15:05 +01:00
dirkf
7f7b3881aa
[YouTube] Handle Web Safari formats
...
From yt-dlp/yt-dlp#14168 , thx bashonly.
2025-09-29 02:15:05 +01:00
dirkf
0c41b03114
[YouTube] Update player client details
2025-09-29 02:15:05 +01:00
dirkf
7c6630bfdd
[YouTube] Miscellaneous clean-ups
2025-09-29 02:15:05 +01:00
Bart Broere
d763512d2c
Fix flake8
2025-05-25 16:50:35 +02:00
Bart Broere
dce0e96038
Don't get a handle if we don't use it
2025-05-19 19:14:21 +02:00
Bart Broere
2f1c1f0f2f
Add new test for BNNVara site if the resource is a simple mp4 URL
2025-05-19 19:06:49 +02:00
Bart Broere
2de603b2dc
Fix test that is no longer available
2025-05-19 18:31:54 +02:00
Bart Broere
0d1fa41564
Fix variable name and add capture group to regex
2025-05-19 18:12:48 +02:00