forked from ytdl-org/youtube-dl
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathChangeLog
6547 lines (5374 loc) · 229 KB
/
ChangeLog
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
version 2024.07.25
Core
* Provide additional target youtube-dl-py3
version 2024.07.23.1
Extractor
* [youtube] Some test commit for changelog
version 2024.07.23
Core
* Implement release workflow
* [jsinterp] Support functionality for player `b22ef6e7`
* [jsinterp] Further improve expression parsing (fix fd8242e) Passes tests from yt-dlp
* [jsinterp] Re-align JSInterp and tests (esp.) with yt-dlp Thx: various yt-dlp authors
* [core] Address gaps in allowed extensions
* [core] Fix PR #32830 for fixed extensionless output template
* [core,utils] Support unpublicised `--no-check-extensions`
* [core,utils] Implement unsafe file extension mitigation
* [utils] Back-port Namespace and MEDIA_EXTENSIONS from yt-dlp Thx pukkandan
* [jsinterp] Various tweaks
* [jsinterp] Fix and improve expression parsing
* [jsinterp] Add Debugger from yt-dlp
* [utils] Save `orig_msg` in `ExtractorError`
* [test] Improve download test
* [core] Re-factor with `_fill_common_fields()` as used in yt-dlp
* [core] Safer handling of nested playlist data
* [InfoExtractor] Misc yt-dlp back-ports, etc
* [compat] Avoid type comparison in `compat_ord` NB This isn't actually a compat fn; it should be utils.int_from_int_or_char
* [utils] Split out traversal.py dummy and traversal tests
* [compat] Improve compat_etree_iterfind for Py2.6 Adapted from https://raw.githubusercontent.com/python/cpython/2.7/Lib/xml/etree/ElementPath.py
* [utils] Update traverse_obj() from yt-dlp
* [workflows/ci.yml] Temporary workaround for Python 3.5 _pip_ failures
* [test/test_download] Support 'playlist_maxcount:count' expected value
* [postprocessor/ffmpeg] Fix finding ffprobe (bug in 21792b8) Fixes https://github.com/ytdl-org/youtube-dl/commit/21792b88b791b16e3ab0a0fb2e26e5bb8a4e2ff3#commitcomment-140705274, thx: vonProteus
* [utils] Fix crash in _report_ignoring_subs from c58b655 (#32762)
* [external/FFmpeg] Fix and improve --ffmpeg-location handling
* [downloader/external] Fix "Resource Warning" in downloader test
* [compat] Simplify/fix compat_html_parser_HTMLParseError
* [utils] Apply compat_contextlib_suppress
* [compat] Add compat_contextlib_suppress
* [InfoExtractor] Rework and improve JWPlayer extraction
* [InfoExtractor] Add `_search_json()`
* [utils] Let int_or_none() accept a base, like int()
* [utils] Handle user:pass in URLs (#28801)
* [caffeine.tv] Add new extractor (#32514)
* [downloader/external] Fix WgetFD proxy (rev 2)
* [InfoExtractor] Correctly resolve BaseURL in DASH manifest Specs:
* [InfoExtractor] Support byte range for DASH
* [downloader/dash] Support `range` in fragment (format f'{start}-{end}')
* [InfoExtractor] Support DASH subtitle extraction (yt-dlp back-port)
* [InfoExtractor] Support some warning and `._downloader` shortcut methods from yt-dlp
* [compat] Rework compat for `method` parameter of `compat_urllib_request.Request` constructor
* [core] Fix format string injection for metadata JSON filename message.
* [Epidemic Sound] Add new extractor (#32628)
* [utils] Make restricted filenames ignore characters in Unicode categories Mark, Other
* [workflows/ci.yml] Use setup-python for now released Python 3.12
* [workflows/ci.yml] Actually use default values for push and pull_request
* [workflows/ci.yml] Run apt-get update before installing
* [downloader] Fix baa6c5e: show ETA of http download as ETA instead of total d/l time
* [utils] Revert bbd3e7e, updating docstring, test instead
* [utils] Properly handle list values in update_url()
* [test] Remove redundancy from lambda expected value regex
* [ci.yml] Improve conditions for nosetest installations
* [utils] Advertise optional supported `Content-Encoding`s
* [utils] Add and use `filter_dict()` from yt-dlp
* [utils] Revise `isinstance()` tests (especially for str/unicode/bytes) to complete Linter fix
* [utils] Avoid comparing `type(var)`, etc, to pass new Linter rules
* [utils] Rework URL path munging for ., .. components
* [utils] Rework decoding of `Content-Encoding`s
* [workflows/ci.yml] Update to setup-java@v3
* [build] Fix typo in `devscripts/fish-completion.py` (fix 2285605)
* [build] Extend use of `devscripts/utils`
* [compat] Use `compat_open()`
* [build] Add and use `devscripts/utils`
* [utils] Fix update_Request() with empty data (not None)
* [test/test_execution.py] Use `compat_subprocess_get_DEVNULL()`
* [build] Fix various Jython CI and test issues
* [workflows/ci.yml] Build 3.12 with pyenv
* [doc] Update developer guidance
* [workflows/ci.yml] Extend Python versions
* [utils] Remove stray undocumented Host header in redirect (fix 46fde7c)
* [InfoExtractor] Add `_match_valid_url()` class method and refactor
* [utils] Fix broken Py 3.11+ compat in `traverse_obj()`
* [InfoExtractor] Add search methods for Next/Nuxt.js from yt-dlp
* [InfoExtractor] Support groups in _`search_regex()`, etc
* [utils] Minor updates (merge_dicts, T)
* [utils] Improve js_to_json, align with yt-dlp
* [utils] Align traverse_obj() with yt-dlp
* [compat] Fix old Pythons broken loading of valueless cookie attributes
* [test] Fixes for old Pythons
* [doc] Warn against setting cookies with --add-header
* [downloader/external] Fix cookie support
* [core] Process header cookies on loading
* [utils] `YoutubeDLCookieJar`: Add `get_cookie_header` and `get_cookies_for_url` methods
* [core] Remove `Cookie` header on redirect to prevent leaks
* [core] Update redirect handling from yt-dlp
* [compat] Add Request and HTTPClient compat for redirect
* [test] Make skipped tests in test_execution work with Py 2.6
* [core] Align error reporting methods with yt-dlp
* [utils] Add {expected_type} and Iterable support to traverse_obj()
* [core] Revert version display from b8a86dc
* [Misc] Fixes for 2.6 compatibility
* [workflows/ci.yml] Fix test support for Py 2.6
* [workflows/ci.yml] Restore test support for Py 3.2
* [workflows/ci.yml] Restore test support for Py 3.3, 3.4, and add 2.6
* [workflows/ci.yml] Replace actions/setup-python for legacy Pythons
* [jsinterp] Don't find unrelated objects
* [jsinterp] Fix test for failed match in extract_object()
* [jsinterp] Fix div bug breaking player 8c7583ff
* [core] Revise 1f7c6f8 to help downstream merger (possibly)
* [compat] Fix casefold import __all__ syntax in a19855f
* [core] Further improve platform debug log
* [jsinterp] Small updates for a85a875
* [core] Improve platform debug log, based on yt-dlp
* [jsinterp] Add short-cut evaluation for common expression
* [jsinterp] Handle NaN in bitwise operators
* [utils] Fix `compiled_regex_type` in 249f2b6
* [jsinterp] Minimally handle arithmetic operator precedence
* [DashSegmentsFD] Correctly detect errors when `fragment_retries` == 0
* [core] Sanitize info dict before dumping JSON (fixes fe7e130) (#32032)
* [core] Add and use sanitize_info() method from yt-dlp
* [core] No longer importing copy
* [core] Avoid deepcopy of ctx dict (fix f35b757) (Pt 2)
* [core] Avoid deepcopy of ctx dict (fix f35b757)
* [options] Add --mtime option, unsets default --no-mtime
* [devscripts] Improve hack to convert command-line options to API options
* [compat] Add and use `compat_open()` like Py3 `open()`
* [FragmentFD] Fix iteration with infinite limit
* [test] Update tests for Ubuntu 20.04
* [utils] Ensure `allow_types` for `variadic()` is a tuple
* [downloader/http] Only check for resumability when actually resuming
* [AENetworksBaseIE] Report missing show data instead of crash
* [devscripts] Add a hack to convert command-line options to API options
* [core] Handle `/../` sequences in HTTP URLs
* [FragmentFD] Respect `--no-continue`
* [downloader] Let _ffmpeg_ handle DASH segments
* [doc] Improve "guidance" on bug reporting
* [doc] Recommend "Get cookies.txt LOCALLY" extension in README.md (#31763)
* [jsinterp] Fix regexp parsing and .replace[All] method
* [jsinterp] Handle `Date` at epoch 0
* [test] Support test-case with volatile ID (eg live show)
* Escape URLs in `sanitized_Request`, not `sanitize_url` d2558234cf5dd12d6896eed5427b7dcdb3ab7b5a added escaping of URLs while sanitizing. However, `sanitize_url` may not always receive an actual URL. Eg: When using `youtube-dl "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.
* [jsinterp] Fix dict comprehension for Py2.6
* [test] Avoid name TestIE which causes a pytest warning
* [InfoExtractor] Handle unquoted values in OpenGraph searches
* [FileMoonIE] Add extractor for filemoon.sx (#31515)
* [feat]: Add support to external downloader aria2p (#31500)
* [compat] Update test_compat
* [utils] Add parse_qs, update_url
* [compat] Systematise compat_ naming
* [test] Fix TestAgeRestriction
* [jsinterp] Nits
* [doc] Fixed typo appearing to promise an example (#31489)
* [jsinterp] Improve parsing
* Support `if` statements
* Added ThisVid.com support (#29187)
* [PeekVids, PlayVids] Add new extractor (#29765)
* [utils] Backport traverse_obj (etc) from yt-dlp (#31156)
* [compat] Work around in case folding for narrow Python build
* [compat] Add test for compat_casefold()
* [compat] Add test for compat_casefold()
* [compat] Reformat casefold.py for easier updating
* [compat] Unify unicode/str compat and move up
* [compat] Add compat_casefold and compat_re_Match, for traverse_obj() port
* [compat] Add Python 2 Unicode casefold using a trivial wrapper around icu/CaseFolding.txt
* [netease] Support urls shared from mobile app (#31304)
* [netease] Impove error handling (#31303)
* Fix ADN extractor (#31275)
* [netease] Get netease music download url through player api (#31235)
* [utils] Sanitize look-alike Unicode glyphs in non-ID filename fields when --restrict-filenames
* [JSInterp] Improve separation logic
* [test] Implement string "lambda x: condition(x)" as an expected value
* [test] Use windows-2019 for tests (At least for now) resolves #31249
* [jsinterp] Workaround operator associativity issue
* [cache] Add cache validation by program version, based on yt-dlp
* [jsinterp] Handle new YT players 113ca41c, c57c113c
* [options] Document that postprocessing is not forced by --postprocessor-args
* [compat] Replace deficient ChainMap class in Py3.3 and earlier
* [compat] Replace deficient ChainMap class in Py3.3 and earlier
* [jsinterp] Improve try/catch/finally support
* [jsinterp] Fix bug in operator precedence
* [core] Avoid processing empty format list after removing bad formats
* [utils] Ensure RFC3986 encoding result is unicode
* [jsinterp] Clean up and pull yt-dlp style
* [jsinterp] Handle regexp literals and throw/catch execution (#31182)
* [jsinterp] Improve JS language support (#31175)
* [postprocessor] Don't replace existing value with null metadata parsed from title
* [jsinterp] Overhaul JSInterp to handle new YT players 4c3f79c5, 324f67b9 (#31170)
* [core] Make `--max-downloads ...` stop immediately on reaching the limit
* [test, etc] Improve download test logs; also clean up some new flake8 issues (#31153)
* [options] Improve be35e53 (--match-/reject-title parameter value)
* [test] Fix linter for 3aa94d7945dfaa0e04acf2700ffe0e43b00db498
* [utils, etc] Kill child processes when yt-dl is killed
* [test] Fix workable subtitle tests (except YT) and mark others as skip, broken
* [test] Skip not _WORKING IE in subtitle tests; use unittest.skipTest throughout
* [utils] Escape URL while sanitizing Closes #31008, #yt-dlp/263
* [Readme] Clarified extractor naming (#29799)
* [utils] Enable ALPN in HTTPS to satisfy broken servers
* Update options.py
* [wat.tv] Add version `pver` to metadata API call
* [doc] Clarify test naming
* Disable blank issues
* Ignore --external-downloader-args if --external-downloader was rejected
* Make default upload_/release_date a compat_str
* Avoid skipping ID when unlisted_hash is numeric
* Fixed groups() call on potentially empty regex search object (#30676)
* add missing __future__ import unicode_literals
* resolve problem with unpacking operator for <py3.5
* do not use f-strings
* avoid traverse_obj function
* revert: use _match_valid_url function
* Remove redundant assigning `format_id`
* Add ArteTVCategoryIE to support category playlists
* Updated Album URL regex
* Support __INITIAL_DATA__ with stringified JSON
* Try for timestamp, description from window.__INITIAL_DATA__ pages
* [test:download] Only extract enough videos for playlist_mincount
* Fix tests for working IEs; disable obsolete WDRMobile
* Fix WDRMaus; extend URL matching for other Maus pages; improve ID extraction
* Update URPlayIE extractor for Next.js page format, with subtitles
* Support more deeply nested ptmd_path with test, update tests
* Additional tweaks: allow any .ndr.de, simplify quote match
* Fix NDR, NJoy tests
* NJoy: improve extraction of NDR id, description, etc with current page formats
* Support Tele5 pages with Discovery Networks format instead of JWPlatform
* Back-port yt-dlp Viki extractor
* Return the item itself if playlist has one entry
* Find TV2DK Kaltura ID in Nuxt.js page format
* Rework 2c2c2bd with an actual Mix page and realistic playlist size
* Avoid crashing if n-sig decode fails
* Support Youtube Shorts URL format
* Implement n-param descrambling using JSInterp
* Refactor JSInterpreter._separate
* Back-port test_youtube_signature.py from yt-dlp and fix JSInterp accordingly
* Fix splice to handle float
* Handle default in switch better
* Back-port JS interpreter upgrade from yt-dlp PR #1437
* Add compat_map/filter and use the former
* Fix test_youtube_flat_playlist_extraction
* Remove obsolete non-working test_youtube_toptracks
* Fix test_youtube_mix
* Remove obsolete test_youtube_course
* Fix test_youtube_playlist_noplaylist
* Fix max_results
* Use `itertools.islice`
* Add back `YoutubeSearchURLIE`
Extractor
* [YouTube] Fix nsig processing for player `b22ef6e7`
* [YandexMusic] Save track version in the title field
* [YandexMusic] Download music in High Quality (320 Kbit/s)
* [PalcoMP3] Conform to new linter rule
* [VidLii] Add 720p support (#30924)
* [ORF] Skip tests with limited availability
* [ORF] Re-factor and update`ORFFM4StoryIE`
* [ORF] Support sound.orf.at, updating `ORFRadioIE`
* [ORF] Support on.orf.at, replacing `ORFTVthekIE`
* [mixcloud] updated mixcloud API server address (#32557)
* [YouPorn] Add playlist extractors
* [YouPorn] Improve extraction
* [YouPorn] Incorporate yt-dlp PR 8827
* [Youtube] Fix unwanted private method __ie_msg in f8b0135850
* [Vimeo] Improve `config` extraction (#32742)
* [Videa] Fix extraction
* [Videa] Align with yt-dlp
* [XFileShare] Update extractor for 2024
* [GBNews]Add new extractor for GB News TV channel (#29432)
* [Vbox7] Improve extraction, adding features from yt-dlp PR #9100
* [Vbox7IE] Sanitise ld+json containing unexpected characters
* [Vbox7IE] Improve extraction
* [YouTube] Fix `like_count` extraction using `likeButtonViewModel`
* [YouTube] Rework n-sig processing, realigning with yt-dlp
* [Imgur] Overhaul extractor module (#32612)
* [telewebion] Fix extraction (#32634)
* [Youtube] Update consent cookie handling to match site
* [S4C] Add thumbnail extraction, extract series as playlist
* [S4C] Add extractor for Sianel Pedwar Cymru
* [Clipchamp] Add new extractor back-ported from yt-dlp
* [DLF] Add site extractors back-ported from yt-dlp
* [Whyp] Add extractor back-ported from yt-dlp
* [GlobalPlayer] Add site extractors back-ported from yt-dlp
* [YouTube] Avoid crash in author extraction
* [YouTube] Improve nsig function name extraction
* [YouTube] Improve fix for ae8ba2c Thx: https://github.com/yt-dlp/yt-dlp/commit/01aba25
* [YouTube] Fix `KeyError QV` in signature extraction failed
* [ITV] Fix UA capitalisation in 384f632
* [YouTube] Support Releases tab
* [YouTube] Simplify signature patterns
* [extractor/youtube] Bypass throttling for `-f17`
* [extractor/youtube] Construct fragment list lazily
* [Youtube] Construct dash formats with `range` query
* [YouTube] Support @owner format in uploader_id etc
* [Vimeo] Fix e19ec52 for tween-age Pythons
* [YouTube] Avoid crash if uploader_id extraction fails
* [StreamsbIE] Add extractor for streamsb.com (viewsb.com) (#31517)
* [KommunetvIE] Add extractor for kommunetv.no (#31516)
* [rbgtum] Add new extractor (#31305)
* [YouTube] Fix tests
* [YouTube] Refresh compat/utils usage
* [YouTube] Add `signatureTimestamp` for age-gate bypass
* [YouTube] Bypass age-gating for certain restricted videos
* [Vimeo] Support /user{video_id}/{slug} URL format
* [Vimeo] Fix `Unable to extract info section` redux
* [IGN] Overhaul extractor to avoid URL redirection loop
* [ITV] Overhaul ITV extractor (#30266)
* [myvideoge] Add new extractor (#31360)
* [xhamster] add support for new domain xhvid.com (#31370)
* [FIFA] Back-port extractor from yt-dlp (#31385)
* [Blerp] Add new extractor (#31398)
* [YouTube] Fix not finding videos listed under a channel's "shorts" subpage. (#31409)
* [Callin] Add new extractor (#31414)
* [pr0gramm] implement InfoExtractor, Resolves #31433 (#31434)
* [cammodels] fix and improve extractor (#31453)
* [americastestkitchen] Add support for downloading entire series (#31493)
* [generic] Improve KVS (etc) extraction
* [generic] Improve KVS (etc) extraction
* [generic] Add KVS player extraction
* [common:jwplayer] Improve jwplayer extraction and parsing (#31000)
* [extractor/ceskatelevize] Back-port extractor from yt-dlp, etc (#30713)
* [Vimeo] Update variable name in hydration JSON pattern
* [BongaCams] Support new .net domain
* [ManyVids] Support new single-page app structure
* [ManyVids] Support new single-page app structure
* [Motherless] Pull from yt-dlp, etc
* [Common:JWPlayer] Fix x1000 scaling error
* [ZDF] Overhaul ZDF extractors
* [motherless] Fixed the broken uploader_id in the extractor (#31243)
* [manyvids] Improve extraction (#31172)
* [NRK] Remove explicit Accept-Encoding header that invites Brotli
* [Telegraaf] Use mobile GraphQL API endpoint
* [YouTube] Improve error check for n-sig processing
* [infoq] Avoid crash if the page has no `mp3Form`
* [uktvplay] Support domain without .uktv
* [aenetworks] Update _THEPLATFORM_KEY and _THEPLATFORM_SECRET (#29749)
* [VVVVID] Support video/dash types (#31060)
* [Mediaset] Support player version number in URL pattern
* [NHK] Use new API URL
* [XHamster] Support xhday.com alias, extract `uploader_id`
* [YouTube] Support JSON3 subtitle format
* [HRFernsehen] Back-port new extractor from yt-dlp Closes #26445, where this was originally proposed.
* [YouPorn] Improve `upload_date` extraction
* [YouTube] Handle player c5a4daa1 with indirect n-function definition
* [NHK] Support alphabetic characters in 7-char NhkVod IDs (#29682)
* [streamcz] Remove empty `'{}'.format()` for Py2.6
* [KTH] Add new extractor for KTH play (#30885)
* [Youtube] Fix "n" descrambling for player fae06c11
* [RAI] Fix extraction of http formats
* [RAI] Extend formats with direct http mp4 link (PR #27990)
* [RAI] Added checks for DRM protected content (PR #27657)
* [extractor/bilibili] Fix path "/audio/auxxxxx" download return 403
* [Alsace20TV] Add new extractors Alsace20TVIE, Alsace20TVEmbedIE
* [CPAC] Add extractor for Canadian Parliament
* [aliexpress] Fix test case
* [bigo] add support for bigo.tv (#30635)
* [rutv] fix vbr for empty string value (#30623)
* [streamcz] test fixes and one additional test
* [streamcz] cherry-pick from yt-dlp
* [extractor/videa] Back-port from yt-dlp PRs 463+1028
* [extractor/videa] fix extraction in Py2
* [BBC] Also allow PID with leading 'l' (live?)
* [Nuvid] Use site JSON for video details (#29332)
* [ARD] Back-port subtitle extraction from yt-dlp PR 2409
* [extractor/audiomack] Updated URL regex, corrected invalid testcases, fixed bug
* [niconico] Implement heartbeat for download
* [niconico] Back-port extractor from yt-dlp
* [applepodcasts] Extract default thumbnail image
* [applepodcasts] Improve format extraction
* [applepodcasts] Support new AMP-ish page structure
* xvideos: Fix for #30271
* NDR: improve extraction of NDR id, description, etc with current page formats
* [youtube:search] Add tests
* [youtube] Support channel search
* [YouTube] Fix n-sig for player e06dea74 (#30582)
version 2021.12.17
Core
* [postprocessor/ffmpeg] Show ffmpeg output on error (#22680, #29336)
Extractors
* [youtube] Update signature function patterns (#30363, #30366)
* [peertube] Only call description endpoint if necessary (#29383)
* [periscope] Pass referer to HLS requests (#29419)
- [liveleak] Remove extractor (#17625, #24222, #29331)
+ [pornhub] Add support for pornhubthbh7ap3u.onion
* [pornhub] Detect geo restriction
* [pornhub] Dismiss tbr extracted from download URLs (#28927)
* [curiositystream:collection] Extend _VALID_URL (#26326, #29117)
* [youtube] Make get_video_info processing more robust (#29333)
* [youtube] Workaround for get_video_info request (#29333)
* [bilibili] Strip uploader name (#29202)
* [youtube] Update invidious instance list (#29281)
* [umg:de] Update GraphQL API URL (#29304)
* [nrk] Switch psapi URL to https (#29344)
+ [egghead] Add support for app.egghead.io (#28404, #29303)
* [appleconnect] Fix extraction (#29208)
+ [orf:tvthek] Add support for MPD formats (#28672, #29236)
version 2021.06.06
Extractors
* [facebook] Improve login required detection
* [youporn] Fix formats and view count extraction (#29216)
* [orf:tvthek] Fix thumbnails extraction (#29217)
* [formula1] Fix extraction (#29206)
* [ard] Relax URL regular expression and fix video ids (#22724, #29091)
+ [ustream] Detect https embeds (#29133)
* [ted] Prefer own formats over external sources (#29142)
* [twitch:clips] Improve extraction (#29149)
+ [twitch:clips] Add access token query to download URLs (#29136)
* [youtube] Fix get_video_info request (#29086, #29165)
* [vimeo] Fix vimeo pro embed extraction (#29126)
* [redbulltv] Fix embed data extraction (#28770)
* [shahid] Relax URL regular expression (#28772, #28930)
version 2021.05.16
Core
* [options] Fix thumbnail option group name (#29042)
* [YoutubeDL] Improve extract_info doc (#28946)
Extractors
+ [playstuff] Add support for play.stuff.co.nz (#28901, #28931)
* [eroprofile] Fix extraction (#23200, #23626, #29008)
+ [vivo] Add support for vivo.st (#29009)
+ [generic] Add support for og:audio (#28311, #29015)
* [phoenix] Fix extraction (#29057)
+ [generic] Add support for sibnet embeds
+ [vk] Add support for sibnet embeds (#9500)
+ [generic] Add Referer header for direct videojs download URLs (#2879,
#20217, #29053)
* [orf:radio] Switch download URLs to HTTPS (#29012, #29046)
- [blinkx] Remove extractor (#28941)
* [medaltv] Relax URL regular expression (#28884)
+ [funimation] Add support for optional lang code in URLs (#28950)
+ [gdcvault] Add support for HTML5 videos
* [dispeak] Improve FLV extraction (#13513, #28970)
* [kaltura] Improve iframe extraction (#28969)
* [kaltura] Make embed code alternatives actually work
* [cda] Improve extraction (#28709, #28937)
* [twitter] Improve formats extraction from vmap URL (#28909)
* [xtube] Fix formats extraction (#28870)
* [svtplay] Improve extraction (#28507, #28876)
* [tv2dk] Fix extraction (#28888)
version 2021.04.26
Extractors
+ [xfileshare] Add support for wolfstream.tv (#28858)
* [francetvinfo] Improve video id extraction (#28792)
* [medaltv] Fix extraction (#28807)
* [tver] Redirect all downloads to Brightcove (#28849)
* [go] Improve video id extraction (#25207, #25216, #26058)
* [youtube] Fix lazy extractors (#28780)
+ [bbc] Extract description and timestamp from __INITIAL_DATA__ (#28774)
* [cbsnews] Fix extraction for python <3.6 (#23359)
version 2021.04.17
Core
+ [utils] Add support for experimental HTTP response status code
308 Permanent Redirect (#27877, #28768)
Extractors
+ [lbry] Add support for HLS videos (#27877, #28768)
* [youtube] Fix stretched ratio calculation
* [youtube] Improve stretch extraction (#28769)
* [youtube:tab] Improve grid extraction (#28725)
+ [youtube:tab] Detect series playlist on playlists page (#28723)
+ [youtube] Add more invidious instances (#28706)
* [pluralsight] Extend anti-throttling timeout (#28712)
* [youtube] Improve URL to extractor routing (#27572, #28335, #28742)
+ [maoritv] Add support for maoritelevision.com (#24552)
+ [youtube:tab] Pass innertube context and x-goog-visitor-id header along with
continuation requests (#28702)
* [mtv] Fix Viacom A/B Testing Video Player extraction (#28703)
+ [pornhub] Extract DASH and HLS formats from get_media end point (#28698)
* [cbssports] Fix extraction (#28682)
* [jamendo] Fix track extraction (#28686)
* [curiositystream] Fix format extraction (#26845, #28668)
version 2021.04.07
Core
* [extractor/common] Use compat_cookies_SimpleCookie for _get_cookies
+ [compat] Introduce compat_cookies_SimpleCookie
* [extractor/common] Improve JSON-LD author extraction
* [extractor/common] Fix _get_cookies on python 2 (#20673, #23256, #20326,
#28640)
Extractors
* [youtube] Fix extraction of videos with restricted location (#28685)
+ [line] Add support for live.line.me (#17205, #28658)
* [vimeo] Improve extraction (#28591)
* [youku] Update ccode (#17852, #28447, #28460, #28648)
* [youtube] Prefer direct entry metadata over entry metadata from playlist
(#28619, #28636)
* [screencastomatic] Fix extraction (#11976, #24489)
+ [palcomp3] Add support for palcomp3.com (#13120)
+ [arnes] Add support for video.arnes.si (#28483)
+ [youtube:tab] Add support for hashtags (#28308)
version 2021.04.01
Extractors
* [youtube] Setup CONSENT cookie when needed (#28604)
* [vimeo] Fix password protected review extraction (#27591)
* [youtube] Improve age-restricted video extraction (#28578)
version 2021.03.31
Extractors
* [vlive] Fix inkey request (#28589)
* [francetvinfo] Improve video id extraction (#28584)
+ [instagram] Extract duration (#28469)
* [instagram] Improve title extraction (#28469)
+ [sbs] Add support for ondemand watch URLs (#28566)
* [youtube] Fix video's channel extraction (#28562)
* [picarto] Fix live stream extraction (#28532)
* [vimeo] Fix unlisted video extraction (#28414)
* [youtube:tab] Fix playlist/community continuation items extraction (#28266)
* [ard] Improve clip id extraction (#22724, #28528)
version 2021.03.25
Extractors
+ [zoom] Add support for zoom.us (#16597, #27002, #28531)
* [bbc] Fix BBC IPlayer Episodes/Group extraction (#28360)
* [youtube] Fix default value for youtube_include_dash_manifest (#28523)
* [zingmp3] Fix extraction (#11589, #16409, #16968, #27205)
+ [vgtv] Add support for new tv.aftonbladet.se URL schema (#28514)
+ [tiktok] Detect private videos (#28453)
* [vimeo:album] Fix extraction for albums with number of videos multiple
to page size (#28486)
* [vvvvid] Fix kenc format extraction (#28473)
* [mlb] Fix video extraction (#21241)
* [svtplay] Improve extraction (#28448)
* [applepodcasts] Fix extraction (#28445)
* [rtve] Improve extraction
+ Extract all formats
* Fix RTVE Infantil extraction (#24851)
+ Extract is_live and series
version 2021.03.14
Core
+ Introduce release_timestamp meta field (#28386)
Extractors
+ [southpark] Add support for southparkstudios.com (#28413)
* [southpark] Fix extraction (#26763, #28413)
* [sportdeutschland] Fix extraction (#21856, #28425)
* [pinterest] Reduce the number of HLS format requests
* [peertube] Improve thumbnail extraction (#28419)
* [tver] Improve title extraction (#28418)
* [fujitv] Fix HLS formats extension (#28416)
* [shahid] Fix format extraction (#28383)
+ [lbry] Add support for channel filters (#28385)
+ [bandcamp] Extract release timestamp
+ [lbry] Extract release timestamp (#28386)
* [pornhub] Detect flagged videos
+ [pornhub] Extract formats from get_media end point (#28395)
* [bilibili] Fix video info extraction (#28341)
+ [cbs] Add support for Paramount+ (#28342)
+ [trovo] Add Origin header to VOD formats (#28346)
* [voxmedia] Fix volume embed extraction (#28338)
version 2021.03.03
Extractors
* [youtube:tab] Switch continuation to browse API (#28289, #28327)
* [9c9media] Fix extraction for videos with multiple ContentPackages (#28309)
+ [bbc] Add support for BBC Reel videos (#21870, #23660, #28268)
version 2021.03.02
Extractors
* [zdf] Rework extractors (#11606, #13473, #17354, #21185, #26711, #27068,
#27930, #28198, #28199, #28274)
* Generalize cross-extractor video ids for zdf based extractors
* Improve extraction
* Fix 3sat and phoenix
* [stretchinternet] Fix extraction (#28297)
* [urplay] Fix episode data extraction (#28292)
+ [bandaichannel] Add support for b-ch.com (#21404)
* [srgssr] Improve extraction (#14717, #14725, #27231, #28238)
+ Extract subtitle
* Fix extraction for new videos
* Update srf download domains
* [vvvvid] Reduce season request payload size
+ [vvvvid] Extract series sublists playlist title (#27601, #27618)
+ [dplay] Extract Ad-Free uplynk URLs (#28160)
+ [wat] Detect DRM protected videos (#27958)
* [tf1] Improve extraction (#27980, #28040)
* [tmz] Fix and improve extraction (#24603, #24687, 28211)
+ [gedidigital] Add support for Gedi group sites (#7347, #26946)
* [youtube] Fix get_video_info request
version 2021.02.22
Core
+ [postprocessor/embedthumbnail] Recognize atomicparsley binary in lowercase
(#28112)
Extractors
* [apa] Fix and improve extraction (#27750)
+ [youporn] Extract duration (#28019)
+ [peertube] Add support for canard.tube (#28190)
* [youtube] Fixup m4a_dash formats (#28165)
+ [samplefocus] Add support for samplefocus.com (#27763)
+ [vimeo] Add support for unlisted video source format extraction
* [viki] Improve extraction (#26522, #28203)
* Extract uploader URL and episode number
* Report login required error
+ Extract 480p formats
* Fix API v4 calls
* [ninegag] Unescape title (#28201)
* [youtube] Improve URL regular expression (#28193)
+ [youtube] Add support for redirect.invidious.io (#28193)
+ [dplay] Add support for de.hgtv.com (#28182)
+ [dplay] Add support for discoveryplus.com (#24698)
+ [simplecast] Add support for simplecast.com (#24107)
* [youtube] Fix uploader extraction in flat playlist mode (#28045)
* [yandexmusic:playlist] Request missing tracks in chunks (#27355, #28184)
+ [storyfire] Add support for storyfire.com (#25628, #26349)
+ [zhihu] Add support for zhihu.com (#28177)
* [youtube] Fix controversial videos when authenticated with cookies (#28174)
* [ccma] Fix timestamp parsing in python 2
+ [videopress] Add support for video.wordpress.com
* [kakao] Improve info extraction and detect geo restriction (#26577)
* [xboxclips] Fix extraction (#27151)
* [ard] Improve formats extraction (#28155)
+ [canvas] Add support for dagelijksekost.een.be (#28119)
version 2021.02.10
Extractors
* [youtube:tab] Improve grid continuation extraction (#28130)
* [ign] Fix extraction (#24771)
+ [xhamster] Extract format filesize
+ [xhamster] Extract formats from xplayer settings (#28114)
+ [youtube] Add support phone/tablet JS player (#26424)
* [archiveorg] Fix and improve extraction (#21330, #23586, #25277, #26780,
#27109, #27236, #28063)
+ [cda] Detect geo restricted videos (#28106)
* [urplay] Fix extraction (#28073, #28074)
* [youtube] Fix release date extraction (#28094)
+ [youtube] Extract abr and vbr (#28100)
* [youtube] Skip OTF formats (#28070)
version 2021.02.04.1
Extractors
* [youtube] Prefer DASH formats (#28070)
* [azmedien] Fix extraction (#28064)
version 2021.02.04
Extractors
* [pornhub] Implement lazy playlist extraction
* [svtplay] Fix video id extraction (#28058)
+ [pornhub] Add support for authentication (#18797, #21416, #24294)
* [pornhub:user] Improve paging
+ [pornhub:user] Add support for URLs unavailable via /videos page (#27853)
+ [bravotv] Add support for oxygen.com (#13357, #22500)
+ [youtube] Pass embed URL to get_video_info request
* [ccma] Improve metadata extraction (#27994)
+ Extract age limit, alt title, categories, series and episode number
* Fix timestamp multiple subtitles extraction
* [egghead] Update API domain (#28038)
- [vidzi] Remove extractor (#12629)
* [vidio] Improve metadata extraction
* [youtube] Improve subtitles extraction
* [youtube] Fix chapter extraction fallback
* [youtube] Rewrite extractor
* Improve format sorting
* Remove unused code
* Fix series metadata extraction
* Fix trailer video extraction
* Improve error reporting
+ Extract video location
+ [vvvvid] Add support for youtube embeds (#27825)
* [googledrive] Report download page errors (#28005)
* [vlive] Fix error message decoding for python 2 (#28004)
* [youtube] Improve DASH formats file size extraction
* [cda] Improve birth validation detection (#14022, #27929)
+ [awaan] Extract uploader id (#27963)
+ [medialaan] Add support DPG Media MyChannels based websites (#14871, #15597,
#16106, #16489)
* [abcnews] Fix extraction (#12394, #27920)
* [AMP] Fix upload date and timestamp extraction (#27970)
* [tv4] Relax URL regular expression (#27964)
+ [tv2] Add support for mtvuutiset.fi (#27744)
* [adn] Improve login warning reporting
* [zype] Fix uplynk id extraction (#27956)
+ [adn] Add support for authentication (#17091, #27841, #27937)
version 2021.01.24.1
Core
* Introduce --output-na-placeholder (#27896)
Extractors
* [franceculture] Make thumbnail optional (#18807)
* [franceculture] Fix extraction (#27891, #27903)
* [njpwworld] Fix extraction (#27890)
* [comedycentral] Fix extraction (#27905)
* [wat] Fix format extraction (#27901)
+ [americastestkitchen:season] Add support for seasons (#27861)
+ [trovo] Add support for trovo.live (#26125)
+ [aol] Add support for yahoo videos (#26650)
* [yahoo] Fix single video extraction
* [lbry] Unescape lbry URI (#27872)
* [9gag] Fix and improve extraction (#23022)
* [americastestkitchen] Improve metadata extraction for ATK episodes (#27860)
* [aljazeera] Fix extraction (#20911, #27779)
+ [minds] Add support for minds.com (#17934)
* [ard] Fix title and description extraction (#27761)
+ [spotify] Add support for Spotify Podcasts (#27443)
version 2021.01.16
Core
* [YoutubeDL] Protect from infinite recursion due to recursively nested
playlists (#27833)
* [YoutubeDL] Ignore failure to create existing directory (#27811)
* [YoutubeDL] Raise syntax error for format selection expressions with multiple
+ operators (#27803)
Extractors
+ [animeondemand] Add support for lazy playlist extraction (#27829)
* [youporn] Restrict fallback download URL (#27822)
* [youporn] Improve height and tbr extraction (#20425, #23659)
* [youporn] Fix extraction (#27822)
+ [twitter] Add support for unified cards (#27826)
+ [twitch] Add Authorization header with OAuth token for GraphQL requests
(#27790)
* [mixcloud:playlist:base] Extract video id in flat playlist mode (#27787)
* [cspan] Improve info extraction (#27791)
* [adn] Improve info extraction
* [adn] Fix extraction (#26963, #27732)
* [youtube:search] Extract from all sections (#27604)
* [youtube:search] fix viewcount and try to extract all video sections (#27604)
* [twitch] Improve login error extraction
* [twitch] Fix authentication (#27743)
* [3qsdn] Improve extraction (#21058)
* [peertube] Extract formats from streamingPlaylists (#26002, #27586, #27728)
* [khanacademy] Fix extraction (#2887, #26803)
* [spike] Update Paramount Network feed URL (#27715)
version 2021.01.08
Core
* [downloader/hls] Disable decryption in tests (#27660)
+ [utils] Add a function to clean podcast URLs
Extractors
* [rai] Improve subtitles extraction (#27698, #27705)
* [canvas] Match only supported VRT NU URLs (#27707)
+ [bibeltv] Add support for bibeltv.de (#14361)
+ [bfmtv] Add support for bfmtv.com (#16053, #26615)
+ [sbs] Add support for ondemand play and news embed URLs (#17650, #27629)
* [twitch] Drop legacy kraken API v5 code altogether and refactor
* [twitch:vod] Switch to GraphQL for video metadata
* [canvas] Fix VRT NU extraction (#26957, #27053)
* [twitch] Switch access token to GraphQL and refactor (#27646)
+ [rai] Detect ContentItem in iframe (#12652, #27673)
* [ketnet] Fix extraction (#27662)
+ [dplay] Add suport Discovery+ domains (#27680)
* [motherless] Improve extraction (#26495, #27450)
* [motherless] Fix recent videos upload date extraction (#27661)
* [nrk] Fix extraction for videos without a legalAge rating
- [googleplus] Remove extractor (#4955, #7400)
+ [applepodcasts] Add support for podcasts.apple.com (#25918)
+ [googlepodcasts] Add support for podcasts.google.com
+ [iheart] Add support for iheart.com (#27037)
* [acast] Clean podcast URLs
* [stitcher] Clean podcast URLs
+ [xfileshare] Add support for aparat.cam (#27651)
+ [twitter] Add support for summary card (#25121)
* [twitter] Try to use a Generic fallback for unknown twitter cards (#25982)
+ [stitcher] Add support for shows and show metadata extraction (#20510)
* [stv] Improve episode id extraction (#23083)
version 2021.01.03
Extractors
* [nrk] Improve series metadata extraction (#27473)
+ [nrk] Extract subtitles
* [nrk] Fix age limit extraction
* [nrk] Improve video id extraction
+ [nrk] Add support for podcasts (#27634, #27635)
* [nrk] Generalize and delegate all item extractors to nrk
+ [nrk] Add support for mp3 formats
* [nrktv] Switch to playback endpoint
* [vvvvid] Fix season metadata extraction (#18130)
* [stitcher] Fix extraction (#20811, #27606)
* [acast] Fix extraction (#21444, #27612, #27613)
+ [arcpublishing] Add support for arcpublishing.com (#2298, #9340, #17200)
+ [sky] Add support for Sports News articles and Brighcove videos (#13054)
+ [vvvvid] Extract akamai formats
* [vvvvid] Skip unplayable episodes (#27599)
* [yandexvideo] Fix extraction for Python 3.4
version 2020.12.31
Core
* [utils] Accept only supported protocols in url_or_none
* [YoutubeDL] Allow format filtering using audio language (#16209)
Extractors
+ [redditr] Extract all thumbnails (#27503)
* [vvvvid] Improve info extraction
+ [vvvvid] Add support for playlists (#18130, #27574)
+ [yandexdisk] Extract info from webpage
* [yandexdisk] Fix extraction (#17861, #27131)
* [yandexvideo] Use old API call as fallback
* [yandexvideo] Fix extraction (#25000)
- [nbc] Remove CSNNE extractor
* [nbc] Fix NBCSport VPlayer URL extraction (#16640)
+ [aenetworks] Add support for biography.com (#3863)
* [uktvplay] Match new video URLs (#17909)
* [sevenplay] Detect API errors
* [tenplay] Fix format extraction (#26653)
* [brightcove] Raise error for DRM protected videos (#23467, #27568)
version 2020.12.29
Extractors
* [youtube] Improve yt initial data extraction (#27524)
* [youtube:tab] Improve URL matching #27559)
* [youtube:tab] Restore retry on browse requests (#27313, #27564)
* [aparat] Fix extraction (#22285, #22611, #23348, #24354, #24591, #24904,
#25418, #26070, #26350, #26738, #27563)
- [brightcove] Remove sonyliv specific code
* [piksel] Improve format extraction
+ [zype] Add support for uplynk videos
+ [toggle] Add support for live.mewatch.sg (#27555)
+ [go] Add support for fxnow.fxnetworks.com (#13972, #22467, #23754, #26826)
* [teachable] Improve embed detection (#26923)
* [mitele] Fix free video extraction (#24624, #25827, #26757)
* [telecinco] Fix extraction
* [youtube] Update invidious.snopyta.org (#22667)
* [amcnetworks] Improve auth only video detection (#27548)
+ [generic] Add support for VHX Embeds (#27546)
version 2020.12.26
Extractors
* [instagram] Fix comment count extraction
+ [instagram] Add support for reel URLs (#26234, #26250)
* [bbc] Switch to media selector v6 (#23232, #23933, #26303, #26432, #26821,
#27538)
* [instagram] Improve thumbnail extraction
* [instagram] Fix extraction when authenticated (#22880, #26377, #26981,
#27422)
* [spankbang:playlist] Fix extraction (#24087)
+ [spankbang] Add support for playlist videos
* [pornhub] Improve like and dislike count extraction (#27356)
* [pornhub] Fix lq formats extraction (#27386, #27393)
+ [bongacams] Add support for bongacams.com (#27440)
* [youtube:tab] Extend URL regular expression (#27501)
* [theweatherchannel] Fix extraction (#25930, #26051)
+ [sprout] Add support for Universal Kids (#22518)
* [theplatform] Allow passing geo bypass countries from other extractors
+ [wistia] Add support for playlists (#27533)
+ [ctv] Add support for ctv.ca (#27525)
* [9c9media] Improve info extraction
* [youtube] Fix automatic captions extraction (#27162, #27388)
* [sonyliv] Fix title for movies
* [sonyliv] Fix extraction (#25667)
* [streetvoice] Fix extraction (#27455, #27492)
+ [facebook] Add support for watchparty pages (#27507)
* [cbslocal] Fix video extraction
+ [brightcove] Add another method to extract policyKey
* [mewatch] Relax URL regular expression (#27506)
version 2020.12.22
Core
* [common] Remove unwanted query params from unsigned akamai manifest URLs
Extractors
- [tastytrade] Remove extractor (#25716)
* [niconico] Fix playlist extraction (#27428)
- [everyonesmixtape] Remove extractor
- [kanalplay] Remove extractor
* [arkena] Fix extraction
* [nba] Rewrite extractor
* [turner] Improve info extraction
* [youtube] Improve xsrf token extraction (#27442)
* [generic] Improve RSS age limit extraction
* [generic] Fix RSS itunes thumbnail extraction (#27405)
+ [redditr] Extract duration (#27426)
- [zaq1] Remove extractor
+ [asiancrush] Add support for retrocrush.tv
* [asiancrush] Fix extraction
- [noco] Remove extractor (#10864)
* [nfl] Fix extraction (#22245)
* [skysports] Relax URL regular expression (#27435)
+ [tv5unis] Add support for tv5unis.ca (#22399, #24890)
+ [videomore] Add support for more.tv (#27088)
+ [yandexmusic] Add support for music.yandex.com (#27425)
+ [nhk:program] Add support for audio programs and program clips
+ [nhk] Add support for NHK video programs (#27230)
version 2020.12.14
Core
* [extractor/common] Improve JSON-LD interaction statistic extraction (#23306)
* [downloader/hls] Delegate manifests with media initialization to ffmpeg
+ [extractor/common] Document duration meta field for playlists
Extractors
* [mdr] Bypass geo restriction
* [mdr] Improve extraction (#24346, #26873)
* [yandexmusic:album] Improve album title extraction (#27418)
* [eporner] Fix view count extraction and make optional (#23306)
+ [eporner] Extend URL regular expression
* [eporner] Fix hash extraction and extend _VALID_URL (#27396)
* [slideslive] Use m3u8 entry protocol for m3u8 formats (#27400)
* [twitcasting] Fix format extraction and improve info extraction (#24868)
* [linuxacademy] Fix authentication and extraction (#21129, #26223, #27402)
* [itv] Clean description from HTML tags (#27399)
* [vlive] Sort live formats (#27404)
* [hotstart] Fix and improve extraction
* Fix format extraction (#26690)
+ Extract thumbnail URL (#16079, #20412)
+ Add support for country specific playlist URLs (#23496)
* Select the last id in video URL (#26412)
+ [youtube] Add some invidious instances (#27373)
version 2020.12.12
Core
* [YoutubeDL] Improve thumbnail filename deducing (#26010, #27244)
Extractors
+ [ruutu] Extract more metadata
+ [ruutu] Detect non-free videos (#21154)
* [ruutu] Authenticate format URLs (#21031, #26782)
+ [ruutu] Add support for static.nelonenmedia.fi (#25412)
+ [ruutu] Extend URL regular expression (#24839)
+ [facebook] Add support archived live video URLs (#15859)
* [wdr] Improve overall extraction
+ [wdr] Extend subtitles extraction (#22672, #22723)
+ [facebook] Add support for videos attached to Relay based story pages
(#10795)
+ [wdr:page] Add support for kinder.wdr.de (#27350)
+ [facebook] Add another regular expression for handleServerJS
* [facebook] Fix embed page extraction
+ [facebook] Add support for Relay post pages (#26935)
+ [facebook] Add support for watch videos (#22795, #27062)
+ [facebook] Add support for group posts with multiple videos (#19131)
* [itv] Fix series metadata extraction (#26897)
- [itv] Remove old extraction method (#23177)
* [facebook] Redirect mobile URLs to desktop URLs (#24831, #25624)
+ [facebook] Add support for Relay based pages (#26823)
* [facebook] Try to reduce unnecessary tahoe requests
- [facebook] Remove hardcoded Chrome User-Agent (#18974, #25411, #26958,
#27329)
- [smotri] Remove extractor (#27358)
- [beampro] Remove extractor (#17290, #22871, #23020, #23061, #26099)
version 2020.12.09
Core
* [extractor/common] Fix inline HTML5 media tags processing (#27345)