yt-dlp 2026.1.27.233257.dev0__tar.gz → 2026.1.29__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (1258) hide show
  1. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/Changelog.md +13 -3
  2. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/PKG-INFO +8 -8
  3. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/README.md +4 -4
  4. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/README.txt +12 -11
  5. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/completions/fish/yt-dlp.fish +1 -1
  6. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/devscripts/changelog_override.json +12 -0
  7. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/pyproject.toml +3 -4
  8. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/test/test_jsc/test_ejs_integration.py +15 -0
  9. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt-dlp.1 +11 -10
  10. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/YoutubeDL.py +14 -10
  11. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/tarangplus.py +2 -1
  12. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/vimeo.py +16 -1
  13. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/whyp.py +15 -11
  14. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/youtube/_base.py +32 -26
  15. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/youtube/_video.py +15 -5
  16. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/youtube/jsc/_builtin/vendor/_info.py +3 -3
  17. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/youtube/jsc/_builtin/vendor/yt.solver.core.js +66 -13
  18. yt_dlp-2026.1.29/yt_dlp/version.py +15 -0
  19. yt_dlp-2026.1.27.233257.dev0/yt_dlp/version.py +0 -15
  20. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/.gitignore +0 -0
  21. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/AUTHORS +0 -0
  22. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/LICENSE +0 -0
  23. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/completions/bash/yt-dlp +0 -0
  24. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/completions/zsh/_yt-dlp +0 -0
  25. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/devscripts/__init__.py +0 -0
  26. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/devscripts/bash-completion.in +0 -0
  27. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/devscripts/bash-completion.py +0 -0
  28. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/devscripts/changelog_override.schema.json +0 -0
  29. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/devscripts/check-porn.py +0 -0
  30. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/devscripts/cli_to_api.py +0 -0
  31. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/devscripts/fish-completion.in +0 -0
  32. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/devscripts/fish-completion.py +0 -0
  33. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/devscripts/generate_aes_testdata.py +0 -0
  34. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/devscripts/generate_third_party_licenses.py +0 -0
  35. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/devscripts/install_deps.py +0 -0
  36. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/devscripts/lazy_load_template.py +0 -0
  37. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/devscripts/logo.ico +0 -0
  38. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/devscripts/make_changelog.py +0 -0
  39. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/devscripts/make_contributing.py +0 -0
  40. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/devscripts/make_issue_template.py +0 -0
  41. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/devscripts/make_lazy_extractors.py +0 -0
  42. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/devscripts/make_readme.py +0 -0
  43. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/devscripts/make_supportedsites.py +0 -0
  44. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/devscripts/prepare_manpage.py +0 -0
  45. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/devscripts/run_tests.py +0 -0
  46. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/devscripts/set-variant.py +0 -0
  47. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/devscripts/setup_variables.py +0 -0
  48. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/devscripts/setup_variables_tests.py +0 -0
  49. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/devscripts/tomlparse.py +0 -0
  50. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/devscripts/update-version.py +0 -0
  51. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/devscripts/update_changelog.py +0 -0
  52. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/devscripts/update_ejs.py +0 -0
  53. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/devscripts/utils.py +0 -0
  54. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/devscripts/zsh-completion.in +0 -0
  55. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/devscripts/zsh-completion.py +0 -0
  56. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/supportedsites.md +0 -0
  57. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/test/__init__.py +0 -0
  58. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/test/conftest.py +0 -0
  59. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/test/helper.py +0 -0
  60. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/test/parameters.json +0 -0
  61. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/test/test_InfoExtractor.py +0 -0
  62. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/test/test_YoutubeDL.py +0 -0
  63. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/test/test_YoutubeDLCookieJar.py +0 -0
  64. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/test/test_aes.py +0 -0
  65. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/test/test_age_restriction.py +0 -0
  66. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/test/test_all_urls.py +0 -0
  67. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/test/test_cache.py +0 -0
  68. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/test/test_compat.py +0 -0
  69. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/test/test_config.py +0 -0
  70. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/test/test_cookies.py +0 -0
  71. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/test/test_devalue.py +0 -0
  72. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/test/test_download.py +0 -0
  73. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/test/test_downloader_external.py +0 -0
  74. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/test/test_downloader_http.py +0 -0
  75. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/test/test_execution.py +0 -0
  76. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/test/test_http_proxy.py +0 -0
  77. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/test/test_jsc/conftest.py +0 -0
  78. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/test/test_jsc/test_provider.py +0 -0
  79. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/test/test_jsinterp.py +0 -0
  80. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/test/test_netrc.py +0 -0
  81. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/test/test_networking.py +0 -0
  82. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/test/test_networking_utils.py +0 -0
  83. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/test/test_overwrites.py +0 -0
  84. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/test/test_plugins.py +0 -0
  85. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/test/test_post_hooks.py +0 -0
  86. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/test/test_postprocessors.py +0 -0
  87. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/test/test_pot/conftest.py +0 -0
  88. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/test/test_pot/test_pot_builtin_memorycache.py +0 -0
  89. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/test/test_pot/test_pot_builtin_utils.py +0 -0
  90. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/test/test_pot/test_pot_builtin_webpospec.py +0 -0
  91. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/test/test_pot/test_pot_director.py +0 -0
  92. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/test/test_pot/test_pot_framework.py +0 -0
  93. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/test/test_socks.py +0 -0
  94. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/test/test_subtitles.py +0 -0
  95. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/test/test_traversal.py +0 -0
  96. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/test/test_update.py +0 -0
  97. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/test/test_utils.py +0 -0
  98. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/test/test_verbose_output.py +0 -0
  99. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/test/test_websockets.py +0 -0
  100. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/test/test_youtube_lists.py +0 -0
  101. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/test/test_youtube_misc.py +0 -0
  102. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/test/testcert.pem +0 -0
  103. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/test/testdata/certificate/ca.crt +0 -0
  104. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/test/testdata/certificate/ca.key +0 -0
  105. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/test/testdata/certificate/ca.srl +0 -0
  106. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/test/testdata/certificate/client.crt +0 -0
  107. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/test/testdata/certificate/client.csr +0 -0
  108. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/test/testdata/certificate/client.key +0 -0
  109. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/test/testdata/certificate/clientencrypted.key +0 -0
  110. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/test/testdata/certificate/clientwithencryptedkey.crt +0 -0
  111. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/test/testdata/certificate/clientwithkey.crt +0 -0
  112. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/test/testdata/certificate/instructions.md +0 -0
  113. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/test/testdata/cookies/httponly_cookies.txt +0 -0
  114. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/test/testdata/cookies/malformed_cookies.txt +0 -0
  115. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/test/testdata/cookies/session_cookies.txt +0 -0
  116. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/test/testdata/f4m/custom_base_url.f4m +0 -0
  117. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/test/testdata/ism/ec-3_test.Manifest +0 -0
  118. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/test/testdata/ism/sintel.Manifest +0 -0
  119. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/test/testdata/m3u8/bipbop_16x9.m3u8 +0 -0
  120. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/test/testdata/m3u8/img_bipbop_adv_example_fmp4.m3u8 +0 -0
  121. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/test/testdata/mpd/float_duration.mpd +0 -0
  122. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/test/testdata/mpd/subtitles.mpd +0 -0
  123. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/test/testdata/mpd/unfragmented.mpd +0 -0
  124. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/test/testdata/mpd/urls_only.mpd +0 -0
  125. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/test/testdata/netrc/netrc +0 -0
  126. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/test/testdata/netrc/print_netrc.py +0 -0
  127. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/test/testdata/plugin_packages/testpackage/yt_dlp_plugins/extractor/package.py +0 -0
  128. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/test/testdata/reload_plugins/yt_dlp_plugins/extractor/normal.py +0 -0
  129. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/test/testdata/reload_plugins/yt_dlp_plugins/postprocessor/normal.py +0 -0
  130. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/test/testdata/thumbnails/foo %d bar/placeholder +0 -0
  131. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/test/testdata/xspf/foo_xspf.xspf +0 -0
  132. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/test/testdata/yt_dlp_plugins/extractor/_ignore.py +0 -0
  133. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/test/testdata/yt_dlp_plugins/extractor/ignore.py +0 -0
  134. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/test/testdata/yt_dlp_plugins/extractor/normal.py +0 -0
  135. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/test/testdata/yt_dlp_plugins/extractor/override.py +0 -0
  136. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/test/testdata/yt_dlp_plugins/extractor/overridetwo.py +0 -0
  137. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/test/testdata/yt_dlp_plugins/postprocessor/normal.py +0 -0
  138. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/test/testdata/zipped_plugins/yt_dlp_plugins/extractor/zipped.py +0 -0
  139. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/test/testdata/zipped_plugins/yt_dlp_plugins/postprocessor/zipped.py +0 -0
  140. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/__init__.py +0 -0
  141. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/__main__.py +0 -0
  142. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/__pyinstaller/__init__.py +0 -0
  143. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/__pyinstaller/hook-yt_dlp.py +0 -0
  144. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/aes.py +0 -0
  145. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/cache.py +0 -0
  146. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/compat/__init__.py +0 -0
  147. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/compat/_deprecated.py +0 -0
  148. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/compat/_legacy.py +0 -0
  149. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/compat/compat_utils.py +0 -0
  150. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/compat/imghdr.py +0 -0
  151. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/compat/shutil.py +0 -0
  152. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/compat/urllib/__init__.py +0 -0
  153. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/compat/urllib/request.py +0 -0
  154. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/cookies.py +0 -0
  155. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/dependencies/Cryptodome.py +0 -0
  156. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/dependencies/__init__.py +0 -0
  157. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/downloader/__init__.py +0 -0
  158. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/downloader/bunnycdn.py +0 -0
  159. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/downloader/common.py +0 -0
  160. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/downloader/dash.py +0 -0
  161. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/downloader/external.py +0 -0
  162. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/downloader/f4m.py +0 -0
  163. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/downloader/fc2.py +0 -0
  164. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/downloader/fragment.py +0 -0
  165. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/downloader/hls.py +0 -0
  166. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/downloader/http.py +0 -0
  167. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/downloader/ism.py +0 -0
  168. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/downloader/mhtml.py +0 -0
  169. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/downloader/niconico.py +0 -0
  170. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/downloader/rtmp.py +0 -0
  171. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/downloader/rtsp.py +0 -0
  172. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/downloader/websocket.py +0 -0
  173. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/downloader/youtube_live_chat.py +0 -0
  174. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/__init__.py +0 -0
  175. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/_extractors.py +0 -0
  176. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/abc.py +0 -0
  177. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/abcnews.py +0 -0
  178. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/abcotvs.py +0 -0
  179. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/abematv.py +0 -0
  180. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/academicearth.py +0 -0
  181. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/acast.py +0 -0
  182. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/acfun.py +0 -0
  183. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/adn.py +0 -0
  184. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/adobeconnect.py +0 -0
  185. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/adobepass.py +0 -0
  186. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/adobetv.py +0 -0
  187. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/adultswim.py +0 -0
  188. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/aenetworks.py +0 -0
  189. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/aeonco.py +0 -0
  190. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/afreecatv.py +0 -0
  191. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/agalega.py +0 -0
  192. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/agora.py +0 -0
  193. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/airtv.py +0 -0
  194. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/aitube.py +0 -0
  195. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/alibaba.py +0 -0
  196. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/aliexpress.py +0 -0
  197. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/aljazeera.py +0 -0
  198. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/allocine.py +0 -0
  199. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/allstar.py +0 -0
  200. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/alphaporno.py +0 -0
  201. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/alsace20tv.py +0 -0
  202. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/altcensored.py +0 -0
  203. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/alura.py +0 -0
  204. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/amadeustv.py +0 -0
  205. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/amara.py +0 -0
  206. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/amazon.py +0 -0
  207. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/amazonminitv.py +0 -0
  208. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/amcnetworks.py +0 -0
  209. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/americastestkitchen.py +0 -0
  210. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/amp.py +0 -0
  211. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/anchorfm.py +0 -0
  212. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/angel.py +0 -0
  213. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/antenna.py +0 -0
  214. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/anvato.py +0 -0
  215. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/aol.py +0 -0
  216. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/apa.py +0 -0
  217. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/aparat.py +0 -0
  218. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/appleconnect.py +0 -0
  219. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/applepodcasts.py +0 -0
  220. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/appletrailers.py +0 -0
  221. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/archiveorg.py +0 -0
  222. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/arcpublishing.py +0 -0
  223. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/ard.py +0 -0
  224. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/arnes.py +0 -0
  225. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/art19.py +0 -0
  226. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/arte.py +0 -0
  227. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/asobichannel.py +0 -0
  228. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/asobistage.py +0 -0
  229. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/atresplayer.py +0 -0
  230. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/atscaleconf.py +0 -0
  231. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/atvat.py +0 -0
  232. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/audimedia.py +0 -0
  233. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/audioboom.py +0 -0
  234. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/audiodraft.py +0 -0
  235. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/audiomack.py +0 -0
  236. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/audius.py +0 -0
  237. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/awaan.py +0 -0
  238. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/aws.py +0 -0
  239. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/axs.py +0 -0
  240. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/azmedien.py +0 -0
  241. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/baidu.py +0 -0
  242. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/banbye.py +0 -0
  243. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/bandcamp.py +0 -0
  244. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/bandlab.py +0 -0
  245. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/bannedvideo.py +0 -0
  246. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/bbc.py +0 -0
  247. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/beacon.py +0 -0
  248. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/beatbump.py +0 -0
  249. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/beatport.py +0 -0
  250. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/beeg.py +0 -0
  251. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/behindkink.py +0 -0
  252. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/berufetv.py +0 -0
  253. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/bet.py +0 -0
  254. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/bfi.py +0 -0
  255. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/bfmtv.py +0 -0
  256. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/bibeltv.py +0 -0
  257. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/bigflix.py +0 -0
  258. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/bigo.py +0 -0
  259. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/bild.py +0 -0
  260. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/bilibili.py +0 -0
  261. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/biobiochiletv.py +0 -0
  262. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/bitchute.py +0 -0
  263. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/bitmovin.py +0 -0
  264. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/blackboardcollaborate.py +0 -0
  265. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/bleacherreport.py +0 -0
  266. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/blerp.py +0 -0
  267. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/blogger.py +0 -0
  268. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/bloomberg.py +0 -0
  269. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/bluesky.py +0 -0
  270. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/bokecc.py +0 -0
  271. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/bongacams.py +0 -0
  272. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/boosty.py +0 -0
  273. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/bostonglobe.py +0 -0
  274. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/box.py +0 -0
  275. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/boxcast.py +0 -0
  276. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/bpb.py +0 -0
  277. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/br.py +0 -0
  278. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/brainpop.py +0 -0
  279. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/breitbart.py +0 -0
  280. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/brightcove.py +0 -0
  281. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/brilliantpala.py +0 -0
  282. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/btvplus.py +0 -0
  283. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/bundesliga.py +0 -0
  284. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/bundestag.py +0 -0
  285. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/bunnycdn.py +0 -0
  286. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/businessinsider.py +0 -0
  287. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/buzzfeed.py +0 -0
  288. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/byutv.py +0 -0
  289. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/c56.py +0 -0
  290. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/caffeinetv.py +0 -0
  291. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/callin.py +0 -0
  292. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/caltrans.py +0 -0
  293. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/cam4.py +0 -0
  294. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/camdemy.py +0 -0
  295. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/camfm.py +0 -0
  296. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/cammodels.py +0 -0
  297. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/camsoda.py +0 -0
  298. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/camtasia.py +0 -0
  299. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/canal1.py +0 -0
  300. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/canalalpha.py +0 -0
  301. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/canalc2.py +0 -0
  302. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/canalplus.py +0 -0
  303. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/canalsurmas.py +0 -0
  304. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/caracoltv.py +0 -0
  305. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/cbc.py +0 -0
  306. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/cbs.py +0 -0
  307. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/cbsnews.py +0 -0
  308. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/cbssports.py +0 -0
  309. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/ccc.py +0 -0
  310. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/ccma.py +0 -0
  311. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/cctv.py +0 -0
  312. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/cda.py +0 -0
  313. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/cellebrite.py +0 -0
  314. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/ceskatelevize.py +0 -0
  315. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/cgtn.py +0 -0
  316. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/charlierose.py +0 -0
  317. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/chaturbate.py +0 -0
  318. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/chilloutzone.py +0 -0
  319. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/chzzk.py +0 -0
  320. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/cinemax.py +0 -0
  321. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/cinetecamilano.py +0 -0
  322. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/cineverse.py +0 -0
  323. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/ciscolive.py +0 -0
  324. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/ciscowebex.py +0 -0
  325. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/cjsw.py +0 -0
  326. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/clipchamp.py +0 -0
  327. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/clippit.py +0 -0
  328. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/cliprs.py +0 -0
  329. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/closertotruth.py +0 -0
  330. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/cloudflarestream.py +0 -0
  331. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/cloudycdn.py +0 -0
  332. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/clubic.py +0 -0
  333. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/clyp.py +0 -0
  334. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/cnbc.py +0 -0
  335. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/cnn.py +0 -0
  336. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/comedycentral.py +0 -0
  337. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/common.py +0 -0
  338. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/commonmistakes.py +0 -0
  339. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/commonprotocols.py +0 -0
  340. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/condenast.py +0 -0
  341. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/contv.py +0 -0
  342. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/corus.py +0 -0
  343. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/coub.py +0 -0
  344. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/cozytv.py +0 -0
  345. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/cpac.py +0 -0
  346. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/cracked.py +0 -0
  347. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/craftsy.py +0 -0
  348. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/croatianfilm.py +0 -0
  349. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/crooksandliars.py +0 -0
  350. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/crowdbunker.py +0 -0
  351. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/crtvg.py +0 -0
  352. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/cspan.py +0 -0
  353. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/ctsnews.py +0 -0
  354. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/ctvnews.py +0 -0
  355. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/cultureunplugged.py +0 -0
  356. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/curiositystream.py +0 -0
  357. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/cybrary.py +0 -0
  358. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/dacast.py +0 -0
  359. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/dailymail.py +0 -0
  360. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/dailymotion.py +0 -0
  361. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/dailywire.py +0 -0
  362. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/damtomo.py +0 -0
  363. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/dangalplay.py +0 -0
  364. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/daum.py +0 -0
  365. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/daystar.py +0 -0
  366. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/dbtv.py +0 -0
  367. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/dctp.py +0 -0
  368. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/democracynow.py +0 -0
  369. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/detik.py +0 -0
  370. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/deuxm.py +0 -0
  371. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/dfb.py +0 -0
  372. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/dhm.py +0 -0
  373. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/digitalconcerthall.py +0 -0
  374. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/digiteka.py +0 -0
  375. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/digiview.py +0 -0
  376. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/discogs.py +0 -0
  377. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/disney.py +0 -0
  378. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/dispeak.py +0 -0
  379. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/dlf.py +0 -0
  380. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/dlive.py +0 -0
  381. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/douyutv.py +0 -0
  382. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/dplay.py +0 -0
  383. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/drbonanza.py +0 -0
  384. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/dreisat.py +0 -0
  385. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/drooble.py +0 -0
  386. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/dropbox.py +0 -0
  387. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/dropout.py +0 -0
  388. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/drtalks.py +0 -0
  389. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/drtuber.py +0 -0
  390. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/drtv.py +0 -0
  391. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/dtube.py +0 -0
  392. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/duboku.py +0 -0
  393. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/dumpert.py +0 -0
  394. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/duoplay.py +0 -0
  395. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/dvtv.py +0 -0
  396. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/dw.py +0 -0
  397. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/ebaumsworld.py +0 -0
  398. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/ebay.py +0 -0
  399. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/egghead.py +0 -0
  400. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/eggs.py +0 -0
  401. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/eighttracks.py +0 -0
  402. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/eitb.py +0 -0
  403. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/elementorembed.py +0 -0
  404. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/elonet.py +0 -0
  405. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/elpais.py +0 -0
  406. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/eltrecetv.py +0 -0
  407. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/embedly.py +0 -0
  408. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/epicon.py +0 -0
  409. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/epidemicsound.py +0 -0
  410. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/eplus.py +0 -0
  411. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/epoch.py +0 -0
  412. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/eporner.py +0 -0
  413. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/erocast.py +0 -0
  414. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/eroprofile.py +0 -0
  415. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/err.py +0 -0
  416. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/ertgr.py +0 -0
  417. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/espn.py +0 -0
  418. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/ettutv.py +0 -0
  419. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/europa.py +0 -0
  420. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/europeantour.py +0 -0
  421. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/eurosport.py +0 -0
  422. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/euscreen.py +0 -0
  423. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/expressen.py +0 -0
  424. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/extractors.py +0 -0
  425. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/eyedotv.py +0 -0
  426. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/facebook.py +0 -0
  427. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/fancode.py +0 -0
  428. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/fathom.py +0 -0
  429. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/faulio.py +0 -0
  430. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/faz.py +0 -0
  431. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/fc2.py +0 -0
  432. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/fczenit.py +0 -0
  433. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/fifa.py +0 -0
  434. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/filmarchiv.py +0 -0
  435. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/filmon.py +0 -0
  436. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/filmweb.py +0 -0
  437. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/firsttv.py +0 -0
  438. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/fivetv.py +0 -0
  439. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/flextv.py +0 -0
  440. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/flickr.py +0 -0
  441. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/floatplane.py +0 -0
  442. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/folketinget.py +0 -0
  443. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/footyroom.py +0 -0
  444. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/formula1.py +0 -0
  445. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/fourtube.py +0 -0
  446. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/fox.py +0 -0
  447. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/fox9.py +0 -0
  448. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/foxnews.py +0 -0
  449. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/foxsports.py +0 -0
  450. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/fptplay.py +0 -0
  451. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/francaisfacile.py +0 -0
  452. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/franceinter.py +0 -0
  453. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/francetv.py +0 -0
  454. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/freesound.py +0 -0
  455. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/freespeech.py +0 -0
  456. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/freetv.py +0 -0
  457. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/frontendmasters.py +0 -0
  458. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/frontro.py +0 -0
  459. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/fujitv.py +0 -0
  460. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/funk.py +0 -0
  461. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/funker530.py +0 -0
  462. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/fuyintv.py +0 -0
  463. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/gab.py +0 -0
  464. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/gaia.py +0 -0
  465. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/gamedevtv.py +0 -0
  466. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/gamejolt.py +0 -0
  467. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/gamespot.py +0 -0
  468. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/gamestar.py +0 -0
  469. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/gaskrank.py +0 -0
  470. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/gazeta.py +0 -0
  471. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/gbnews.py +0 -0
  472. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/gdcvault.py +0 -0
  473. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/gedidigital.py +0 -0
  474. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/generic.py +0 -0
  475. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/genericembeds.py +0 -0
  476. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/genius.py +0 -0
  477. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/germanupa.py +0 -0
  478. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/getcourseru.py +0 -0
  479. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/gettr.py +0 -0
  480. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/giantbomb.py +0 -0
  481. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/glide.py +0 -0
  482. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/globalplayer.py +0 -0
  483. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/globo.py +0 -0
  484. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/glomex.py +0 -0
  485. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/gmanetwork.py +0 -0
  486. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/go.py +0 -0
  487. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/godresource.py +0 -0
  488. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/godtube.py +0 -0
  489. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/gofile.py +0 -0
  490. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/golem.py +0 -0
  491. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/goodgame.py +0 -0
  492. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/googledrive.py +0 -0
  493. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/googlepodcasts.py +0 -0
  494. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/googlesearch.py +0 -0
  495. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/goplay.py +0 -0
  496. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/gopro.py +0 -0
  497. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/goshgay.py +0 -0
  498. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/gotostage.py +0 -0
  499. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/gputechconf.py +0 -0
  500. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/graspop.py +0 -0
  501. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/gronkh.py +0 -0
  502. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/groupon.py +0 -0
  503. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/harpodeon.py +0 -0
  504. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/hbo.py +0 -0
  505. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/hearthisat.py +0 -0
  506. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/heise.py +0 -0
  507. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/hellporno.py +0 -0
  508. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/hgtv.py +0 -0
  509. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/hidive.py +0 -0
  510. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/historicfilms.py +0 -0
  511. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/hitrecord.py +0 -0
  512. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/hketv.py +0 -0
  513. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/hollywoodreporter.py +0 -0
  514. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/holodex.py +0 -0
  515. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/hotnewhiphop.py +0 -0
  516. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/hotstar.py +0 -0
  517. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/hrefli.py +0 -0
  518. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/hrfensehen.py +0 -0
  519. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/hrti.py +0 -0
  520. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/hse.py +0 -0
  521. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/huajiao.py +0 -0
  522. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/huffpost.py +0 -0
  523. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/hungama.py +0 -0
  524. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/huya.py +0 -0
  525. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/hypem.py +0 -0
  526. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/hypergryph.py +0 -0
  527. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/hytale.py +0 -0
  528. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/icareus.py +0 -0
  529. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/ichinanalive.py +0 -0
  530. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/idagio.py +0 -0
  531. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/idolplus.py +0 -0
  532. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/ign.py +0 -0
  533. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/iheart.py +0 -0
  534. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/ilpost.py +0 -0
  535. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/iltalehti.py +0 -0
  536. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/imdb.py +0 -0
  537. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/imggaming.py +0 -0
  538. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/imgur.py +0 -0
  539. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/ina.py +0 -0
  540. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/inc.py +0 -0
  541. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/indavideo.py +0 -0
  542. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/infoq.py +0 -0
  543. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/instagram.py +0 -0
  544. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/internazionale.py +0 -0
  545. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/internetvideoarchive.py +0 -0
  546. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/iprima.py +0 -0
  547. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/iqiyi.py +0 -0
  548. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/islamchannel.py +0 -0
  549. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/israelnationalnews.py +0 -0
  550. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/itprotv.py +0 -0
  551. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/itv.py +0 -0
  552. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/ivi.py +0 -0
  553. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/ivideon.py +0 -0
  554. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/ivoox.py +0 -0
  555. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/iwara.py +0 -0
  556. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/ixigua.py +0 -0
  557. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/izlesene.py +0 -0
  558. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/jamendo.py +0 -0
  559. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/japandiet.py +0 -0
  560. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/jeuxvideo.py +0 -0
  561. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/jiosaavn.py +0 -0
  562. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/jixie.py +0 -0
  563. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/joj.py +0 -0
  564. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/jove.py +0 -0
  565. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/jstream.py +0 -0
  566. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/jtbc.py +0 -0
  567. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/jwplatform.py +0 -0
  568. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/kakao.py +0 -0
  569. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/kaltura.py +0 -0
  570. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/kankanews.py +0 -0
  571. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/karaoketv.py +0 -0
  572. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/kelbyone.py +0 -0
  573. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/kenh14.py +0 -0
  574. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/khanacademy.py +0 -0
  575. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/kick.py +0 -0
  576. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/kicker.py +0 -0
  577. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/kickstarter.py +0 -0
  578. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/kika.py +0 -0
  579. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/kinja.py +0 -0
  580. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/kinopoisk.py +0 -0
  581. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/kommunetv.py +0 -0
  582. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/kompas.py +0 -0
  583. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/koo.py +0 -0
  584. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/krasview.py +0 -0
  585. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/kth.py +0 -0
  586. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/ku6.py +0 -0
  587. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/kukululive.py +0 -0
  588. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/kuwo.py +0 -0
  589. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/la7.py +0 -0
  590. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/laracasts.py +0 -0
  591. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/lastfm.py +0 -0
  592. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/laxarxames.py +0 -0
  593. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/lazy_extractors.py +0 -0
  594. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/lbry.py +0 -0
  595. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/lci.py +0 -0
  596. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/lcp.py +0 -0
  597. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/learningonscreen.py +0 -0
  598. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/lecture2go.py +0 -0
  599. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/lecturio.py +0 -0
  600. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/leeco.py +0 -0
  601. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/lefigaro.py +0 -0
  602. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/lego.py +0 -0
  603. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/lemonde.py +0 -0
  604. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/lenta.py +0 -0
  605. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/libraryofcongress.py +0 -0
  606. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/libsyn.py +0 -0
  607. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/lifenews.py +0 -0
  608. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/likee.py +0 -0
  609. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/linkedin.py +0 -0
  610. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/liputan6.py +0 -0
  611. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/listennotes.py +0 -0
  612. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/litv.py +0 -0
  613. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/livejournal.py +0 -0
  614. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/livestream.py +0 -0
  615. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/livestreamfails.py +0 -0
  616. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/lnk.py +0 -0
  617. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/loco.py +0 -0
  618. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/loom.py +0 -0
  619. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/lovehomeporn.py +0 -0
  620. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/lrt.py +0 -0
  621. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/lsm.py +0 -0
  622. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/lumni.py +0 -0
  623. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/lynda.py +0 -0
  624. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/maariv.py +0 -0
  625. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/magellantv.py +0 -0
  626. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/magentamusik.py +0 -0
  627. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/mailru.py +0 -0
  628. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/mainstreaming.py +0 -0
  629. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/mangomolo.py +0 -0
  630. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/manyvids.py +0 -0
  631. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/maoritv.py +0 -0
  632. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/markiza.py +0 -0
  633. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/massengeschmacktv.py +0 -0
  634. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/masters.py +0 -0
  635. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/matchtv.py +0 -0
  636. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/mave.py +0 -0
  637. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/mbn.py +0 -0
  638. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/mdr.py +0 -0
  639. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/medaltv.py +0 -0
  640. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/mediaite.py +0 -0
  641. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/mediaklikk.py +0 -0
  642. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/medialaan.py +0 -0
  643. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/mediaset.py +0 -0
  644. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/mediasite.py +0 -0
  645. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/mediastream.py +0 -0
  646. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/mediaworksnz.py +0 -0
  647. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/medici.py +0 -0
  648. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/megaphone.py +0 -0
  649. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/megatvcom.py +0 -0
  650. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/meipai.py +0 -0
  651. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/melonvod.py +0 -0
  652. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/metacritic.py +0 -0
  653. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/mgtv.py +0 -0
  654. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/microsoftembed.py +0 -0
  655. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/microsoftstream.py +0 -0
  656. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/minds.py +0 -0
  657. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/minoto.py +0 -0
  658. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/mir24tv.py +0 -0
  659. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/mirrativ.py +0 -0
  660. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/mirrorcouk.py +0 -0
  661. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/mit.py +0 -0
  662. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/mixch.py +0 -0
  663. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/mixcloud.py +0 -0
  664. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/mixlr.py +0 -0
  665. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/mlb.py +0 -0
  666. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/mlssoccer.py +0 -0
  667. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/mocha.py +0 -0
  668. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/mojevideo.py +0 -0
  669. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/mojvideo.py +0 -0
  670. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/monstercat.py +0 -0
  671. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/motherless.py +0 -0
  672. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/motorsport.py +0 -0
  673. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/moviepilot.py +0 -0
  674. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/moview.py +0 -0
  675. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/moviezine.py +0 -0
  676. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/movingimage.py +0 -0
  677. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/msn.py +0 -0
  678. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/mtv.py +0 -0
  679. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/muenchentv.py +0 -0
  680. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/murrtube.py +0 -0
  681. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/museai.py +0 -0
  682. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/musescore.py +0 -0
  683. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/musicdex.py +0 -0
  684. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/mux.py +0 -0
  685. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/mx3.py +0 -0
  686. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/mxplayer.py +0 -0
  687. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/myspace.py +0 -0
  688. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/myspass.py +0 -0
  689. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/myvideoge.py +0 -0
  690. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/myvidster.py +0 -0
  691. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/mzaalo.py +0 -0
  692. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/n1.py +0 -0
  693. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/nascar.py +0 -0
  694. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/nate.py +0 -0
  695. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/nationalgeographic.py +0 -0
  696. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/naver.py +0 -0
  697. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/nba.py +0 -0
  698. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/nbc.py +0 -0
  699. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/ndr.py +0 -0
  700. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/ndtv.py +0 -0
  701. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/nebula.py +0 -0
  702. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/nekohacker.py +0 -0
  703. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/nerdcubed.py +0 -0
  704. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/nest.py +0 -0
  705. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/netapp.py +0 -0
  706. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/neteasemusic.py +0 -0
  707. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/netverse.py +0 -0
  708. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/netzkino.py +0 -0
  709. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/newgrounds.py +0 -0
  710. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/newspicks.py +0 -0
  711. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/newsy.py +0 -0
  712. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/nexx.py +0 -0
  713. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/nfb.py +0 -0
  714. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/nfhsnetwork.py +0 -0
  715. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/nfl.py +0 -0
  716. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/nhk.py +0 -0
  717. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/nhl.py +0 -0
  718. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/nick.py +0 -0
  719. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/niconico.py +0 -0
  720. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/niconicochannelplus.py +0 -0
  721. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/ninaprotocol.py +0 -0
  722. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/ninecninemedia.py +0 -0
  723. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/ninegag.py +0 -0
  724. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/ninenews.py +0 -0
  725. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/ninenow.py +0 -0
  726. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/nintendo.py +0 -0
  727. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/nitter.py +0 -0
  728. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/nobelprize.py +0 -0
  729. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/noice.py +0 -0
  730. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/nonktube.py +0 -0
  731. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/noodlemagazine.py +0 -0
  732. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/nosnl.py +0 -0
  733. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/nova.py +0 -0
  734. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/novaplay.py +0 -0
  735. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/nowcanal.py +0 -0
  736. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/nowness.py +0 -0
  737. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/noz.py +0 -0
  738. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/npo.py +0 -0
  739. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/npr.py +0 -0
  740. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/nrk.py +0 -0
  741. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/nrl.py +0 -0
  742. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/nts.py +0 -0
  743. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/ntvcojp.py +0 -0
  744. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/ntvde.py +0 -0
  745. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/ntvru.py +0 -0
  746. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/nubilesporn.py +0 -0
  747. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/nuevo.py +0 -0
  748. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/nuum.py +0 -0
  749. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/nuvid.py +0 -0
  750. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/nytimes.py +0 -0
  751. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/nzherald.py +0 -0
  752. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/nzonscreen.py +0 -0
  753. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/nzz.py +0 -0
  754. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/odkmedia.py +0 -0
  755. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/odnoklassniki.py +0 -0
  756. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/oftv.py +0 -0
  757. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/oktoberfesttv.py +0 -0
  758. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/olympics.py +0 -0
  759. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/on24.py +0 -0
  760. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/ondemandkorea.py +0 -0
  761. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/onefootball.py +0 -0
  762. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/onenewsnz.py +0 -0
  763. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/oneplace.py +0 -0
  764. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/onet.py +0 -0
  765. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/onionstudios.py +0 -0
  766. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/onsen.py +0 -0
  767. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/opencast.py +0 -0
  768. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/openload.py +0 -0
  769. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/openrec.py +0 -0
  770. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/ora.py +0 -0
  771. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/orf.py +0 -0
  772. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/outsidetv.py +0 -0
  773. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/owncloud.py +0 -0
  774. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/packtpub.py +0 -0
  775. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/palcomp3.py +0 -0
  776. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/pandatv.py +0 -0
  777. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/panopto.py +0 -0
  778. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/parler.py +0 -0
  779. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/parlview.py +0 -0
  780. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/parti.py +0 -0
  781. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/patreon.py +0 -0
  782. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/pbs.py +0 -0
  783. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/pearvideo.py +0 -0
  784. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/peekvids.py +0 -0
  785. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/peertube.py +0 -0
  786. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/peertv.py +0 -0
  787. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/peloton.py +0 -0
  788. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/performgroup.py +0 -0
  789. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/periscope.py +0 -0
  790. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/pgatour.py +0 -0
  791. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/philharmoniedeparis.py +0 -0
  792. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/phoenix.py +0 -0
  793. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/photobucket.py +0 -0
  794. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/pialive.py +0 -0
  795. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/piapro.py +0 -0
  796. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/picarto.py +0 -0
  797. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/piksel.py +0 -0
  798. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/pinkbike.py +0 -0
  799. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/pinterest.py +0 -0
  800. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/piramidetv.py +0 -0
  801. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/planetmarathi.py +0 -0
  802. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/platzi.py +0 -0
  803. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/playerfm.py +0 -0
  804. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/playplustv.py +0 -0
  805. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/playsuisse.py +0 -0
  806. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/playtvak.py +0 -0
  807. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/playwire.py +0 -0
  808. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/pluralsight.py +0 -0
  809. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/plutotv.py +0 -0
  810. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/plvideo.py +0 -0
  811. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/plyr.py +0 -0
  812. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/podbayfm.py +0 -0
  813. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/podchaser.py +0 -0
  814. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/podomatic.py +0 -0
  815. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/pokergo.py +0 -0
  816. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/polsatgo.py +0 -0
  817. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/polskieradio.py +0 -0
  818. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/popcorntimes.py +0 -0
  819. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/popcorntv.py +0 -0
  820. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/pornbox.py +0 -0
  821. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/pornflip.py +0 -0
  822. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/pornhub.py +0 -0
  823. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/pornotube.py +0 -0
  824. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/pornovoisines.py +0 -0
  825. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/pornoxo.py +0 -0
  826. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/pr0gramm.py +0 -0
  827. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/prankcast.py +0 -0
  828. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/premiershiprugby.py +0 -0
  829. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/presstv.py +0 -0
  830. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/projectveritas.py +0 -0
  831. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/prosiebensat1.py +0 -0
  832. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/prx.py +0 -0
  833. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/puhutv.py +0 -0
  834. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/puls4.py +0 -0
  835. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/pyvideo.py +0 -0
  836. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/qdance.py +0 -0
  837. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/qingting.py +0 -0
  838. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/qqmusic.py +0 -0
  839. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/r7.py +0 -0
  840. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/radiko.py +0 -0
  841. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/radiocanada.py +0 -0
  842. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/radiocomercial.py +0 -0
  843. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/radiode.py +0 -0
  844. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/radiofrance.py +0 -0
  845. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/radiojavan.py +0 -0
  846. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/radiokapital.py +0 -0
  847. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/radioradicale.py +0 -0
  848. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/radiozet.py +0 -0
  849. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/radlive.py +0 -0
  850. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/rai.py +0 -0
  851. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/raywenderlich.py +0 -0
  852. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/rbgtum.py +0 -0
  853. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/rcs.py +0 -0
  854. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/rcti.py +0 -0
  855. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/rds.py +0 -0
  856. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/redbee.py +0 -0
  857. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/redbulltv.py +0 -0
  858. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/reddit.py +0 -0
  859. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/redge.py +0 -0
  860. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/redgifs.py +0 -0
  861. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/redtube.py +0 -0
  862. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/rentv.py +0 -0
  863. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/restudy.py +0 -0
  864. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/reuters.py +0 -0
  865. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/reverbnation.py +0 -0
  866. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/rheinmaintv.py +0 -0
  867. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/ridehome.py +0 -0
  868. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/rinsefm.py +0 -0
  869. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/rmcdecouverte.py +0 -0
  870. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/rockstargames.py +0 -0
  871. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/rokfin.py +0 -0
  872. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/roosterteeth.py +0 -0
  873. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/rottentomatoes.py +0 -0
  874. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/roya.py +0 -0
  875. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/rozhlas.py +0 -0
  876. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/rte.py +0 -0
  877. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/rtl2.py +0 -0
  878. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/rtlnl.py +0 -0
  879. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/rtnews.py +0 -0
  880. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/rtp.py +0 -0
  881. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/rtrfm.py +0 -0
  882. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/rts.py +0 -0
  883. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/rtvcplay.py +0 -0
  884. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/rtve.py +0 -0
  885. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/rtvs.py +0 -0
  886. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/rtvslo.py +0 -0
  887. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/rudovideo.py +0 -0
  888. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/rule34video.py +0 -0
  889. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/rumble.py +0 -0
  890. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/rutube.py +0 -0
  891. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/ruutu.py +0 -0
  892. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/ruv.py +0 -0
  893. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/s4c.py +0 -0
  894. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/safari.py +0 -0
  895. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/saitosan.py +0 -0
  896. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/samplefocus.py +0 -0
  897. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/sapo.py +0 -0
  898. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/sauceplus.py +0 -0
  899. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/sbs.py +0 -0
  900. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/sbscokr.py +0 -0
  901. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/screen9.py +0 -0
  902. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/screencast.py +0 -0
  903. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/screencastify.py +0 -0
  904. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/screencastomatic.py +0 -0
  905. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/screenrec.py +0 -0
  906. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/scrippsnetworks.py +0 -0
  907. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/scrolller.py +0 -0
  908. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/sejmpl.py +0 -0
  909. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/sen.py +0 -0
  910. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/senalcolombia.py +0 -0
  911. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/senategov.py +0 -0
  912. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/sendtonews.py +0 -0
  913. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/servus.py +0 -0
  914. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/sevenplus.py +0 -0
  915. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/sexu.py +0 -0
  916. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/seznamzpravy.py +0 -0
  917. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/shahid.py +0 -0
  918. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/sharepoint.py +0 -0
  919. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/sharevideos.py +0 -0
  920. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/shemaroome.py +0 -0
  921. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/shiey.py +0 -0
  922. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/showroomlive.py +0 -0
  923. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/sibnet.py +0 -0
  924. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/simplecast.py +0 -0
  925. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/sina.py +0 -0
  926. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/skeb.py +0 -0
  927. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/sky.py +0 -0
  928. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/skyit.py +0 -0
  929. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/skylinewebcams.py +0 -0
  930. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/skynewsarabia.py +0 -0
  931. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/skynewsau.py +0 -0
  932. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/slideshare.py +0 -0
  933. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/slideslive.py +0 -0
  934. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/slutload.py +0 -0
  935. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/smotrim.py +0 -0
  936. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/snapchat.py +0 -0
  937. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/snotr.py +0 -0
  938. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/softwhiteunderbelly.py +0 -0
  939. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/sohu.py +0 -0
  940. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/sonyliv.py +0 -0
  941. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/soundcloud.py +0 -0
  942. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/soundgasm.py +0 -0
  943. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/southpark.py +0 -0
  944. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/sovietscloset.py +0 -0
  945. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/spankbang.py +0 -0
  946. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/spiegel.py +0 -0
  947. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/sport5.py +0 -0
  948. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/sportbox.py +0 -0
  949. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/sportdeutschland.py +0 -0
  950. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/spreaker.py +0 -0
  951. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/springboardplatform.py +0 -0
  952. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/sproutvideo.py +0 -0
  953. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/srgssr.py +0 -0
  954. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/srmediathek.py +0 -0
  955. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/stacommu.py +0 -0
  956. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/stageplus.py +0 -0
  957. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/stanfordoc.py +0 -0
  958. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/startrek.py +0 -0
  959. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/startv.py +0 -0
  960. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/steam.py +0 -0
  961. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/stitcher.py +0 -0
  962. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/storyfire.py +0 -0
  963. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/streaks.py +0 -0
  964. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/streamable.py +0 -0
  965. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/streamcz.py +0 -0
  966. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/streetvoice.py +0 -0
  967. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/stretchinternet.py +0 -0
  968. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/stripchat.py +0 -0
  969. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/stv.py +0 -0
  970. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/subsplash.py +0 -0
  971. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/substack.py +0 -0
  972. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/sunporno.py +0 -0
  973. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/sverigesradio.py +0 -0
  974. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/svt.py +0 -0
  975. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/swearnet.py +0 -0
  976. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/syvdk.py +0 -0
  977. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/sztvhu.py +0 -0
  978. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/tagesschau.py +0 -0
  979. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/taptap.py +0 -0
  980. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/tass.py +0 -0
  981. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/tbs.py +0 -0
  982. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/tbsjp.py +0 -0
  983. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/teachable.py +0 -0
  984. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/teachertube.py +0 -0
  985. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/teachingchannel.py +0 -0
  986. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/teamcoco.py +0 -0
  987. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/teamtreehouse.py +0 -0
  988. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/ted.py +0 -0
  989. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/tele13.py +0 -0
  990. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/tele5.py +0 -0
  991. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/telebruxelles.py +0 -0
  992. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/telecaribe.py +0 -0
  993. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/telecinco.py +0 -0
  994. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/telegraaf.py +0 -0
  995. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/telegram.py +0 -0
  996. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/telemb.py +0 -0
  997. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/telemundo.py +0 -0
  998. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/telequebec.py +0 -0
  999. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/teletask.py +0 -0
  1000. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/telewebion.py +0 -0
  1001. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/tempo.py +0 -0
  1002. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/tencent.py +0 -0
  1003. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/tennistv.py +0 -0
  1004. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/tenplay.py +0 -0
  1005. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/testurl.py +0 -0
  1006. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/tf1.py +0 -0
  1007. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/tfo.py +0 -0
  1008. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/theguardian.py +0 -0
  1009. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/thehighwire.py +0 -0
  1010. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/theholetv.py +0 -0
  1011. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/theintercept.py +0 -0
  1012. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/theplatform.py +0 -0
  1013. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/thestar.py +0 -0
  1014. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/thesun.py +0 -0
  1015. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/theweatherchannel.py +0 -0
  1016. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/thisamericanlife.py +0 -0
  1017. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/thisoldhouse.py +0 -0
  1018. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/thisvid.py +0 -0
  1019. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/threeqsdn.py +0 -0
  1020. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/threespeak.py +0 -0
  1021. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/tiktok.py +0 -0
  1022. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/tmz.py +0 -0
  1023. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/tnaflix.py +0 -0
  1024. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/toggle.py +0 -0
  1025. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/toggo.py +0 -0
  1026. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/tonline.py +0 -0
  1027. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/toongoggles.py +0 -0
  1028. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/toutiao.py +0 -0
  1029. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/toutv.py +0 -0
  1030. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/toypics.py +0 -0
  1031. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/traileraddict.py +0 -0
  1032. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/triller.py +0 -0
  1033. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/trovo.py +0 -0
  1034. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/trtcocuk.py +0 -0
  1035. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/trtworld.py +0 -0
  1036. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/trueid.py +0 -0
  1037. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/trunews.py +0 -0
  1038. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/truth.py +0 -0
  1039. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/tube8.py +0 -0
  1040. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/tubetugraz.py +0 -0
  1041. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/tubitv.py +0 -0
  1042. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/tumblr.py +0 -0
  1043. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/tunein.py +0 -0
  1044. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/turner.py +0 -0
  1045. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/tv2.py +0 -0
  1046. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/tv24ua.py +0 -0
  1047. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/tv2dk.py +0 -0
  1048. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/tv2hu.py +0 -0
  1049. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/tv4.py +0 -0
  1050. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/tv5mondeplus.py +0 -0
  1051. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/tv5unis.py +0 -0
  1052. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/tva.py +0 -0
  1053. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/tvanouvelles.py +0 -0
  1054. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/tvc.py +0 -0
  1055. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/tver.py +0 -0
  1056. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/tvigle.py +0 -0
  1057. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/tviplayer.py +0 -0
  1058. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/tvn24.py +0 -0
  1059. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/tvnoe.py +0 -0
  1060. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/tvopengr.py +0 -0
  1061. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/tvp.py +0 -0
  1062. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/tvplay.py +0 -0
  1063. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/tvplayer.py +0 -0
  1064. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/tvw.py +0 -0
  1065. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/tweakers.py +0 -0
  1066. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/twentymin.py +0 -0
  1067. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/twentythreevideo.py +0 -0
  1068. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/twitcasting.py +0 -0
  1069. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/twitch.py +0 -0
  1070. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/twitter.py +0 -0
  1071. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/txxx.py +0 -0
  1072. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/udemy.py +0 -0
  1073. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/udn.py +0 -0
  1074. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/ufctv.py +0 -0
  1075. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/ukcolumn.py +0 -0
  1076. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/uktvplay.py +0 -0
  1077. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/uliza.py +0 -0
  1078. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/umg.py +0 -0
  1079. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/unistra.py +0 -0
  1080. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/unitednations.py +0 -0
  1081. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/unity.py +0 -0
  1082. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/unsupported.py +0 -0
  1083. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/uol.py +0 -0
  1084. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/uplynk.py +0 -0
  1085. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/urort.py +0 -0
  1086. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/urplay.py +0 -0
  1087. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/usanetwork.py +0 -0
  1088. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/usatoday.py +0 -0
  1089. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/ustream.py +0 -0
  1090. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/ustudio.py +0 -0
  1091. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/utreon.py +0 -0
  1092. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/varzesh3.py +0 -0
  1093. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/vbox7.py +0 -0
  1094. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/veo.py +0 -0
  1095. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/vevo.py +0 -0
  1096. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/vgtv.py +0 -0
  1097. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/vh1.py +0 -0
  1098. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/vice.py +0 -0
  1099. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/viddler.py +0 -0
  1100. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/videa.py +0 -0
  1101. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/videocampus_sachsen.py +0 -0
  1102. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/videodetective.py +0 -0
  1103. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/videofyme.py +0 -0
  1104. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/videoken.py +0 -0
  1105. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/videomore.py +0 -0
  1106. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/videopress.py +0 -0
  1107. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/vidflex.py +0 -0
  1108. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/vidio.py +0 -0
  1109. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/vidlii.py +0 -0
  1110. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/vidly.py +0 -0
  1111. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/vidyard.py +0 -0
  1112. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/viewlift.py +0 -0
  1113. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/viidea.py +0 -0
  1114. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/vimm.py +0 -0
  1115. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/viously.py +0 -0
  1116. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/viqeo.py +0 -0
  1117. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/viu.py +0 -0
  1118. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/vk.py +0 -0
  1119. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/vocaroo.py +0 -0
  1120. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/vodpl.py +0 -0
  1121. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/vodplatform.py +0 -0
  1122. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/voicy.py +0 -0
  1123. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/volejtv.py +0 -0
  1124. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/voxmedia.py +0 -0
  1125. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/vrsquare.py +0 -0
  1126. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/vrt.py +0 -0
  1127. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/vtm.py +0 -0
  1128. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/vtv.py +0 -0
  1129. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/vuclip.py +0 -0
  1130. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/vvvvid.py +0 -0
  1131. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/walla.py +0 -0
  1132. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/washingtonpost.py +0 -0
  1133. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/wat.py +0 -0
  1134. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/wdr.py +0 -0
  1135. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/webcamerapl.py +0 -0
  1136. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/webcaster.py +0 -0
  1137. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/webofstories.py +0 -0
  1138. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/weibo.py +0 -0
  1139. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/weiqitv.py +0 -0
  1140. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/weverse.py +0 -0
  1141. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/wevidi.py +0 -0
  1142. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/weyyak.py +0 -0
  1143. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/whowatch.py +0 -0
  1144. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/wikimedia.py +0 -0
  1145. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/wimbledon.py +0 -0
  1146. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/wimtv.py +0 -0
  1147. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/wistia.py +0 -0
  1148. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/wordpress.py +0 -0
  1149. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/worldstarhiphop.py +0 -0
  1150. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/wppilot.py +0 -0
  1151. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/wrestleuniverse.py +0 -0
  1152. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/wsj.py +0 -0
  1153. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/wwe.py +0 -0
  1154. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/wykop.py +0 -0
  1155. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/xboxclips.py +0 -0
  1156. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/xhamster.py +0 -0
  1157. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/xiaohongshu.py +0 -0
  1158. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/ximalaya.py +0 -0
  1159. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/xinpianchang.py +0 -0
  1160. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/xminus.py +0 -0
  1161. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/xnxx.py +0 -0
  1162. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/xstream.py +0 -0
  1163. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/xvideos.py +0 -0
  1164. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/xxxymovies.py +0 -0
  1165. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/yahoo.py +0 -0
  1166. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/yandexdisk.py +0 -0
  1167. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/yandexmusic.py +0 -0
  1168. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/yandexvideo.py +0 -0
  1169. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/yapfiles.py +0 -0
  1170. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/yappy.py +0 -0
  1171. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/yfanefa.py +0 -0
  1172. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/yle_areena.py +0 -0
  1173. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/youjizz.py +0 -0
  1174. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/youku.py +0 -0
  1175. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/younow.py +0 -0
  1176. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/youporn.py +0 -0
  1177. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/youtube/__init__.py +0 -0
  1178. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/youtube/_clip.py +0 -0
  1179. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/youtube/_mistakes.py +0 -0
  1180. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/youtube/_notifications.py +0 -0
  1181. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/youtube/_redirect.py +0 -0
  1182. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/youtube/_search.py +0 -0
  1183. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/youtube/_tab.py +0 -0
  1184. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/youtube/jsc/README.md +0 -0
  1185. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/youtube/jsc/__init__.py +0 -0
  1186. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/youtube/jsc/_builtin/__init__.py +0 -0
  1187. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/youtube/jsc/_builtin/bun.py +0 -0
  1188. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/youtube/jsc/_builtin/deno.py +0 -0
  1189. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/youtube/jsc/_builtin/ejs.py +0 -0
  1190. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/youtube/jsc/_builtin/node.py +0 -0
  1191. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/youtube/jsc/_builtin/quickjs.py +0 -0
  1192. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/youtube/jsc/_builtin/vendor/__init__.py +0 -0
  1193. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/youtube/jsc/_builtin/vendor/yt.solver.bun.lib.js +0 -0
  1194. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/youtube/jsc/_builtin/vendor/yt.solver.deno.lib.js +0 -0
  1195. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/youtube/jsc/_director.py +0 -0
  1196. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/youtube/jsc/_registry.py +0 -0
  1197. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/youtube/jsc/provider.py +0 -0
  1198. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/youtube/pot/README.md +0 -0
  1199. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/youtube/pot/__init__.py +0 -0
  1200. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/youtube/pot/_builtin/__init__.py +0 -0
  1201. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/youtube/pot/_builtin/memory_cache.py +0 -0
  1202. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/youtube/pot/_builtin/webpo_cachespec.py +0 -0
  1203. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/youtube/pot/_director.py +0 -0
  1204. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/youtube/pot/_provider.py +0 -0
  1205. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/youtube/pot/_registry.py +0 -0
  1206. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/youtube/pot/cache.py +0 -0
  1207. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/youtube/pot/provider.py +0 -0
  1208. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/youtube/pot/utils.py +0 -0
  1209. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/zaiko.py +0 -0
  1210. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/zapiks.py +0 -0
  1211. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/zattoo.py +0 -0
  1212. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/zdf.py +0 -0
  1213. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/zee5.py +0 -0
  1214. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/zeenews.py +0 -0
  1215. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/zenporn.py +0 -0
  1216. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/zetland.py +0 -0
  1217. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/zhihu.py +0 -0
  1218. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/zingmp3.py +0 -0
  1219. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/zoom.py +0 -0
  1220. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/extractor/zype.py +0 -0
  1221. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/globals.py +0 -0
  1222. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/jsinterp.py +0 -0
  1223. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/minicurses.py +0 -0
  1224. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/networking/__init__.py +0 -0
  1225. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/networking/_curlcffi.py +0 -0
  1226. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/networking/_helper.py +0 -0
  1227. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/networking/_requests.py +0 -0
  1228. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/networking/_urllib.py +0 -0
  1229. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/networking/_websockets.py +0 -0
  1230. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/networking/common.py +0 -0
  1231. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/networking/exceptions.py +0 -0
  1232. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/networking/impersonate.py +0 -0
  1233. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/networking/websocket.py +0 -0
  1234. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/options.py +0 -0
  1235. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/plugins.py +0 -0
  1236. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/postprocessor/__init__.py +0 -0
  1237. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/postprocessor/common.py +0 -0
  1238. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/postprocessor/embedthumbnail.py +0 -0
  1239. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/postprocessor/exec.py +0 -0
  1240. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/postprocessor/ffmpeg.py +0 -0
  1241. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/postprocessor/metadataparser.py +0 -0
  1242. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/postprocessor/modify_chapters.py +0 -0
  1243. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/postprocessor/movefilesafterdownload.py +0 -0
  1244. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/postprocessor/sponsorblock.py +0 -0
  1245. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/postprocessor/xattrpp.py +0 -0
  1246. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/socks.py +0 -0
  1247. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/update.py +0 -0
  1248. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/utils/__init__.py +0 -0
  1249. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/utils/_deprecated.py +0 -0
  1250. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/utils/_jsruntime.py +0 -0
  1251. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/utils/_legacy.py +0 -0
  1252. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/utils/_utils.py +0 -0
  1253. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/utils/jslib/__init__.py +0 -0
  1254. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/utils/jslib/devalue.py +0 -0
  1255. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/utils/networking.py +0 -0
  1256. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/utils/progress.py +0 -0
  1257. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/utils/traversal.py +0 -0
  1258. {yt_dlp-2026.1.27.233257.dev0 → yt_dlp-2026.1.29}/yt_dlp/webvtt.py +0 -0
@@ -4,7 +4,7 @@
4
4
  # To create a release, dispatch the https://github.com/yt-dlp/yt-dlp/actions/workflows/release.yml workflow on master
5
5
  -->
6
6
 
7
- ### 2026.01.27.233257
7
+ ### 2026.01.29
8
8
 
9
9
  #### Core changes
10
10
  - [Accept float values for `--sleep-subtitles`](https://github.com/yt-dlp/yt-dlp/commit/f6dc7d5279bcb7f29839c700d54ac148b332d208) ([#15282](https://github.com/yt-dlp/yt-dlp/issues/15282)) by [0xvd](https://github.com/0xvd)
@@ -12,6 +12,8 @@
12
12
  - [Add `--format-sort-reset` option](https://github.com/yt-dlp/yt-dlp/commit/b16b06378a0805430699131ca6b786f971ae05b5) ([#13809](https://github.com/yt-dlp/yt-dlp/issues/13809)) by [nihil-admirari](https://github.com/nihil-admirari)
13
13
  - [Bypass interactive format selection if no formats are found](https://github.com/yt-dlp/yt-dlp/commit/e0bb4777328a7d1eb96f2d0256fa33ae06b5930d) ([#15278](https://github.com/yt-dlp/yt-dlp/issues/15278)) by [bashonly](https://github.com/bashonly)
14
14
  - [Fix `--parse-metadata` when `TO` is a single field name](https://github.com/yt-dlp/yt-dlp/commit/cec1f1df792fe521fff2d5ca54b5c70094b3d96a) ([#14577](https://github.com/yt-dlp/yt-dlp/issues/14577)) by [bashonly](https://github.com/bashonly), [clayote](https://github.com/clayote)
15
+ - [Fix concurrent formats downloading to stdout](https://github.com/yt-dlp/yt-dlp/commit/5bf91072bcfbb26e6618d668a0b3379a3a862f8c) ([#15617](https://github.com/yt-dlp/yt-dlp/issues/15617)) by [grqz](https://github.com/grqz)
16
+ - [Fix interactive format/video selection when downloading to stdout](https://github.com/yt-dlp/yt-dlp/commit/1829a53a543e63bf0391da572cefcd2526c0a806) ([#15626](https://github.com/yt-dlp/yt-dlp/issues/15626)) by [grqz](https://github.com/grqz)
15
17
  - [Support Deno installed via Python package](https://github.com/yt-dlp/yt-dlp/commit/dde5eab3b3a356449b5c8c09506553b1c2842953) ([#15614](https://github.com/yt-dlp/yt-dlp/issues/15614)) by [bashonly](https://github.com/bashonly), [zahlman](https://github.com/zahlman)
16
18
  - **utils**
17
19
  - `decode_packed_codes`: [Fix missing key handling](https://github.com/yt-dlp/yt-dlp/commit/f24b9ac0c94aff3311ab0b935ce8103b5a3faeb1) ([#15440](https://github.com/yt-dlp/yt-dlp/issues/15440)) by [cesbar](https://github.com/cesbar)
@@ -22,6 +24,7 @@
22
24
  - `unified_timestamp`: [Add `tz_offset` parameter](https://github.com/yt-dlp/yt-dlp/commit/15263d049cb3f47e921b414782490052feca3def) ([#15357](https://github.com/yt-dlp/yt-dlp/issues/15357)) by [doe1080](https://github.com/doe1080)
23
25
 
24
26
  #### Extractor changes
27
+ - [Fix prioritization of Youtube URL matching](https://github.com/yt-dlp/yt-dlp/commit/e2ea6bd6ab639f910b99e55add18856974ff4c3a) ([#15596](https://github.com/yt-dlp/yt-dlp/issues/15596)) by [Grub4K](https://github.com/Grub4K)
25
28
  - **archive.org**: [Fix metadata extraction](https://github.com/yt-dlp/yt-dlp/commit/5f37f67d37b54bf9bd6fe7fa3083492d42f7a20a) ([#15286](https://github.com/yt-dlp/yt-dlp/issues/15286)) by [bashonly](https://github.com/bashonly)
26
29
  - **bandcamp**: weekly: [Fix extractor](https://github.com/yt-dlp/yt-dlp/commit/e9d4b22b9b09a30f31b557df740b01b09a8aefe8) ([#15208](https://github.com/yt-dlp/yt-dlp/issues/15208)) by [0xvd](https://github.com/0xvd), [bashonly](https://github.com/bashonly)
27
30
  - **bigo**: [Support `--wait-for-video`](https://github.com/yt-dlp/yt-dlp/commit/5026548d65276732ec290751d97994e23bdecc20) ([#15463](https://github.com/yt-dlp/yt-dlp/issues/15463)) by [olipfei](https://github.com/olipfei)
@@ -75,15 +78,18 @@
75
78
  - **twitter**
76
79
  - [Do not extract non-video posts from `unified_card`s](https://github.com/yt-dlp/yt-dlp/commit/ce9a3591f8292aeb93ffdad10028bfcddda3976b) ([#15431](https://github.com/yt-dlp/yt-dlp/issues/15431)) by [bashonly](https://github.com/bashonly)
77
80
  - [Remove broken login support](https://github.com/yt-dlp/yt-dlp/commit/a6ba7140051dbe1d63a1da4de263bb9c886c0a32) ([#15432](https://github.com/yt-dlp/yt-dlp/issues/15432)) by [bashonly](https://github.com/bashonly)
81
+ - **vimeo**: [Add `macos` client](https://github.com/yt-dlp/yt-dlp/commit/ba5e2227c8c49fa76d9d30332aad2416774ddb31) ([#15746](https://github.com/yt-dlp/yt-dlp/issues/15746)) by [bashonly](https://github.com/bashonly), [gamer191](https://github.com/gamer191)
78
82
  - **volejtv**: [Fix and add extractors](https://github.com/yt-dlp/yt-dlp/commit/1effa06dbf4dfd2e307b445a55a465d897205213) ([#13226](https://github.com/yt-dlp/yt-dlp/issues/13226)) by [subrat-lima](https://github.com/subrat-lima)
79
83
  - **wat.tv**: [Improve DRM detection](https://github.com/yt-dlp/yt-dlp/commit/bc6ff877dd371d405b11f0ab16634c4d4b5d645e) ([#15659](https://github.com/yt-dlp/yt-dlp/issues/15659)) by [wesson09](https://github.com/wesson09)
84
+ - **whyp**: [Fix extractor](https://github.com/yt-dlp/yt-dlp/commit/f70ebf97ea7ef3b00c3e9213acf40d1b004c31d9) ([#15721](https://github.com/yt-dlp/yt-dlp/issues/15721)) by [bashonly](https://github.com/bashonly)
80
85
  - **yahoo**: [Fix extractor](https://github.com/yt-dlp/yt-dlp/commit/97fb78a5b95a98a698f77281ea0c101bf090ed4c) ([#15314](https://github.com/yt-dlp/yt-dlp/issues/15314)) by [0xvd](https://github.com/0xvd), [bashonly](https://github.com/bashonly)
81
86
  - **youtube**
82
87
  - [Adjust default clients](https://github.com/yt-dlp/yt-dlp/commit/23b846506378a6a9c9a0958382d37f943f7cfa51) ([#15601](https://github.com/yt-dlp/yt-dlp/issues/15601)) by [bashonly](https://github.com/bashonly)
83
- - [Fix `skip_player=js` extractor-arg](https://github.com/yt-dlp/yt-dlp/commit/abf29e3e72e8a4dcae61e2ceaf37ce8405af61ab) ([#15428](https://github.com/yt-dlp/yt-dlp/issues/15428)) by [bashonly](https://github.com/bashonly)
84
- - [Fix priorization of youtube URL matching](https://github.com/yt-dlp/yt-dlp/commit/e2ea6bd6ab639f910b99e55add18856974ff4c3a) ([#15596](https://github.com/yt-dlp/yt-dlp/issues/15596)) by [Grub4K](https://github.com/Grub4K)
88
+ - [Fix `player_skip=js` extractor-arg](https://github.com/yt-dlp/yt-dlp/commit/abf29e3e72e8a4dcae61e2ceaf37ce8405af61ab) ([#15428](https://github.com/yt-dlp/yt-dlp/issues/15428)) by [bashonly](https://github.com/bashonly)
89
+ - [Fix default player clients](https://github.com/yt-dlp/yt-dlp/commit/309b03f2ad09fcfcf4ce81e757f8d3796bb56add) ([#15726](https://github.com/yt-dlp/yt-dlp/issues/15726)) by [bashonly](https://github.com/bashonly)
85
90
  - [Solve n challenges for manifest formats](https://github.com/yt-dlp/yt-dlp/commit/d20f58d721fe45fe873e3389a0d17a72352aecec) ([#15602](https://github.com/yt-dlp/yt-dlp/issues/15602)) by [bashonly](https://github.com/bashonly)
86
91
  - [Support comment subthreads](https://github.com/yt-dlp/yt-dlp/commit/d22436e5dc7c6808d931e27cbb967b1b2a33c17c) ([#15419](https://github.com/yt-dlp/yt-dlp/issues/15419)) by [bashonly](https://github.com/bashonly) (With fixes in [76c31a7](https://github.com/yt-dlp/yt-dlp/commit/76c31a7a216a3894884381c7775f838b811fde06), [468aa6a](https://github.com/yt-dlp/yt-dlp/commit/468aa6a9b431194949ede9eaad8f33e314a288d6))
92
+ - [Update ejs to 0.4.0](https://github.com/yt-dlp/yt-dlp/commit/88b35ff911a999e0b479417237010c305114ba08) ([#15747](https://github.com/yt-dlp/yt-dlp/issues/15747)) by [bashonly](https://github.com/bashonly)
87
93
  - tab: [Fix flat thumbnails extraction for shorts](https://github.com/yt-dlp/yt-dlp/commit/ff61bef041d1f69fec1044f783fb938c005128af) ([#15331](https://github.com/yt-dlp/yt-dlp/issues/15331)) by [bashonly](https://github.com/bashonly)
88
94
  - **zdf**: [Support sister sites URLs](https://github.com/yt-dlp/yt-dlp/commit/48b845a29623cbc814ad6c6b2ef285e3f3c0fe91) ([#15370](https://github.com/yt-dlp/yt-dlp/issues/15370)) by [InvalidUsernameException](https://github.com/InvalidUsernameException)
89
95
  - **zoom**: [Extract recordings with start times](https://github.com/yt-dlp/yt-dlp/commit/0066de5b7e146a96e4cb4352f65dc3f1e283af4a) ([#15475](https://github.com/yt-dlp/yt-dlp/issues/15475)) by [JV-Fernandes](https://github.com/JV-Fernandes)
@@ -97,6 +103,10 @@
97
103
  - [Harden CI/CD pipeline](https://github.com/yt-dlp/yt-dlp/commit/ab3ff2d5dd220aa35805dadb6fae66ae9a0e2553) ([#15387](https://github.com/yt-dlp/yt-dlp/issues/15387)) by [bashonly](https://github.com/bashonly)
98
104
  - [Improve nightly release check](https://github.com/yt-dlp/yt-dlp/commit/3763d0d4ab8bdbe433ce08e45e21f36ebdeb5db3) ([#15455](https://github.com/yt-dlp/yt-dlp/issues/15455)) by [bashonly](https://github.com/bashonly) (With fixes in [0b08b83](https://github.com/yt-dlp/yt-dlp/commit/0b08b833bfca6a0882f4741bb8fa46c1698c77e5))
99
105
  - **ci**: [Explicitly declare permissions and limit credentials](https://github.com/yt-dlp/yt-dlp/commit/a6a8f6b6d6775caa031e5016b79db28c6aaadfcb) ([#15324](https://github.com/yt-dlp/yt-dlp/issues/15324)) by [bashonly](https://github.com/bashonly)
106
+ - **cleanup**
107
+ - Miscellaneous
108
+ - [a653494](https://github.com/yt-dlp/yt-dlp/commit/a65349443b959b8ab6bdec8e573777006d29b827) by [bashonly](https://github.com/bashonly), [Grub4K](https://github.com/Grub4K), [seproDev](https://github.com/seproDev)
109
+ - [8b27553](https://github.com/yt-dlp/yt-dlp/commit/8b275536d945c4b3d07b6c520677922c67a7c10f) by [bashonly](https://github.com/bashonly)
100
110
 
101
111
  ### 2025.12.08
102
112
 
@@ -1,13 +1,13 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: yt-dlp
3
- Version: 2026.1.27.233257.dev0
3
+ Version: 2026.1.29
4
4
  Summary: A feature-rich command-line audio/video downloader
5
5
  Project-URL: Documentation, https://github.com/yt-dlp/yt-dlp#readme
6
6
  Project-URL: Repository, https://github.com/yt-dlp/yt-dlp
7
7
  Project-URL: Tracker, https://github.com/yt-dlp/yt-dlp/issues
8
8
  Project-URL: Funding, https://github.com/yt-dlp/yt-dlp/blob/master/Maintainers.md#maintainers
9
9
  Author-email: pukkandan <pukkandan.ytdlp@gmail.com>
10
- Maintainer-email: maintainers@yt-dlp.org, Grub4K <contact@grub4k.xyz>, bashonly <bashonly@protonmail.com>, coletdjnz <coletdjnz@protonmail.com>, sepro <sepro@sepr0.com>
10
+ Maintainer-email: maintainers@yt-dlp.org, Grub4K <contact@grub4k.dev>, bashonly <bashonly@protonmail.com>, coletdjnz <coletdjnz@protonmail.com>
11
11
  License-Expression: Unlicense
12
12
  License-File: LICENSE
13
13
  Keywords: cli,downloader,sponsorblock,youtube-dl,youtube-downloader,yt-dlp
@@ -46,9 +46,9 @@ Requires-Dist: pycryptodomex; extra == 'default'
46
46
  Requires-Dist: requests<3,>=2.32.2; extra == 'default'
47
47
  Requires-Dist: urllib3<3,>=2.0.2; extra == 'default'
48
48
  Requires-Dist: websockets>=13.0; extra == 'default'
49
- Requires-Dist: yt-dlp-ejs==0.3.2; extra == 'default'
49
+ Requires-Dist: yt-dlp-ejs==0.4.0; extra == 'default'
50
50
  Provides-Extra: deno
51
- Requires-Dist: deno>=2.6.5; extra == 'deno'
51
+ Requires-Dist: deno>=2.6.6; extra == 'deno'
52
52
  Provides-Extra: dev
53
53
  Requires-Dist: autopep8~=2.0; extra == 'dev'
54
54
  Requires-Dist: pre-commit; extra == 'dev'
@@ -287,7 +287,7 @@ While all the other dependencies are optional, `ffmpeg`, `ffprobe`, `yt-dlp-ejs`
287
287
 
288
288
  **Important**: What you need is ffmpeg *binary*, **NOT** [the Python package of the same name](https://pypi.org/project/ffmpeg)
289
289
 
290
- * [**yt-dlp-ejs**](https://github.com/yt-dlp/ejs) - Required for deciphering YouTube n/sig values. Licensed under [Unlicense](https://github.com/yt-dlp/ejs/blob/main/LICENSE), bundles [MIT](https://github.com/davidbonnet/astring/blob/main/LICENSE) and [ISC](https://github.com/meriyah/meriyah/blob/main/LICENSE.md) components.
290
+ * [**yt-dlp-ejs**](https://github.com/yt-dlp/ejs) - Required for full YouTube support. Licensed under [Unlicense](https://github.com/yt-dlp/ejs/blob/main/LICENSE), bundles [MIT](https://github.com/davidbonnet/astring/blob/main/LICENSE) and [ISC](https://github.com/meriyah/meriyah/blob/main/LICENSE.md) components.
291
291
 
292
292
  A JavaScript runtime/engine like [**deno**](https://deno.land) (recommended), [**node.js**](https://nodejs.org), [**bun**](https://bun.sh), or [**QuickJS**](https://bellard.org/quickjs/) is also required to run yt-dlp-ejs. See [the wiki](https://github.com/yt-dlp/yt-dlp/wiki/EJS).
293
293
 
@@ -388,7 +388,7 @@ Tip: Use `CTRL`+`F` (or `Command`+`F`) to search by keywords
388
388
  --no-update Do not check for updates (default)
389
389
  --update-to [CHANNEL]@[TAG] Upgrade/downgrade to a specific version.
390
390
  CHANNEL can be a repository as well. CHANNEL
391
- and TAG default to "nightly" and "latest"
391
+ and TAG default to "stable" and "latest"
392
392
  respectively if omitted; See "UPDATE" for
393
393
  details. Supported channels: stable,
394
394
  nightly, master
@@ -1934,7 +1934,7 @@ The following extractors use this feature:
1934
1934
  #### youtube
1935
1935
  * `lang`: Prefer translated metadata (`title`, `description` etc) of this language code (case-sensitive). By default, the video primary language metadata is preferred, with a fallback to `en` translated. See [youtube/_base.py](https://github.com/yt-dlp/yt-dlp/blob/415b4c9f955b1a0391204bd24a7132590e7b3bdb/yt_dlp/extractor/youtube/_base.py#L402-L409) for the list of supported content language codes
1936
1936
  * `skip`: One or more of `hls`, `dash` or `translated_subs` to skip extraction of the m3u8 manifests, dash manifests and [auto-translated subtitles](https://github.com/yt-dlp/yt-dlp/issues/4090#issuecomment-1158102032) respectively
1937
- * `player_client`: Clients to extract video data from. The currently available clients are `web`, `web_safari`, `web_embedded`, `web_music`, `web_creator`, `mweb`, `ios`, `android`, `android_sdkless`, `android_vr`, `tv`, `tv_simply`, `tv_downgraded`, and `tv_embedded`. By default, `android_sdkless,web,web_safari` is used. If no JavaScript runtime/engine is available, then only `android_sdkless` is used. If logged-in cookies are passed to yt-dlp, then `tv_downgraded,web,web_safari` is used for free accounts and `tv_downgraded,web_creator,web` is used for premium accounts. The `web_music` client is added for `music.youtube.com` URLs when logged-in cookies are used. The `web_embedded` client is added for age-restricted videos but only works if the video is embeddable. The `tv_embedded` and `web_creator` clients are added for age-restricted videos if account age-verification is required. Some clients, such as `web` and `web_music`, require a `po_token` for their formats to be downloadable. Some clients, such as `web_creator`, will only work with authentication. Not all clients support authentication via cookies. You can use `default` for the default clients, or you can use `all` for all clients (not recommended). You can prefix a client with `-` to exclude it, e.g. `youtube:player_client=default,-ios`
1937
+ * `player_client`: Clients to extract video data from. The currently available clients are `web`, `web_safari`, `web_embedded`, `web_music`, `web_creator`, `mweb`, `ios`, `ios_downgraded`, `android`, `android_vr`, `tv`, `tv_simply`, `tv_downgraded`, and `tv_embedded`. By default, `android_vr,ios_downgraded,web,web_safari` is used. If no JavaScript runtime/engine is available, then `android_vr,ios_downgraded` is used. If logged-in cookies are passed to yt-dlp, then `tv_downgraded,web,web_safari` is used for free accounts and `tv_downgraded,web_creator,web` is used for premium accounts. The `web_music` client is added for `music.youtube.com` URLs when logged-in cookies are used. The `web_embedded` client is added for age-restricted videos but only works if the video is embeddable. The `tv_embedded` and `web_creator` clients are added for age-restricted videos if account age-verification is required. Some clients, such as `web` and `web_music`, require a `po_token` for their formats to be downloadable. Some clients, such as `web_creator`, will only work with authentication. Not all clients support authentication via cookies. You can use `default` for the default clients, or you can use `all` for all clients (not recommended). You can prefix a client with `-` to exclude it, e.g. `youtube:player_client=default,-ios`
1938
1938
  * `player_skip`: Skip some network requests that are generally needed for robust extraction. One or more of `configs` (skip client configs), `webpage` (skip initial webpage), `js` (skip js player), `initial_data` (skip initial data/next ep request). While these options can help reduce the number of requests needed or avoid some rate-limiting, they could cause issues such as missing formats or metadata. See [#860](https://github.com/yt-dlp/yt-dlp/pull/860) and [#12826](https://github.com/yt-dlp/yt-dlp/issues/12826) for more details
1939
1939
  * `webpage_skip`: Skip extraction of embedded webpage data. One or both of `player_response`, `initial_data`. These options are for testing purposes and don't skip any network requests
1940
1940
  * `player_params`: YouTube player parameters to use for player requests. Will overwrite any default ones set by yt-dlp.
@@ -2046,7 +2046,7 @@ The following extractors use this feature:
2046
2046
  * `backend`: Backend API to use for extraction - one of `streaks` (default) or `brightcove` (deprecated)
2047
2047
 
2048
2048
  #### vimeo
2049
- * `client`: Client to extract video data from. The currently available clients are `android`, `ios`, and `web`. Only one client can be used. The `web` client is used by default. The `web` client only works with account cookies or login credentials. The `android` and `ios` clients only work with previously cached OAuth tokens
2049
+ * `client`: Client to extract video data from. The currently available clients are `android`, `ios`, `macos` and `web`. Only one client can be used. The `macos` client is used by default, but the `web` client is used when logged-in. The `web` client only works with account cookies or login credentials. The `android` and `ios` clients only work with previously cached OAuth tokens
2050
2050
  * `original_format_policy`: Policy for when to try extracting original formats. One of `always`, `never`, or `auto`. The default `auto` policy tries to avoid exceeding the web client's API rate-limit by only making an extra request when Vimeo publicizes the video's downloadability
2051
2051
 
2052
2052
  **Note**: These options may be changed/removed in the future without concern for backward compatibility
@@ -217,7 +217,7 @@ While all the other dependencies are optional, `ffmpeg`, `ffprobe`, `yt-dlp-ejs`
217
217
 
218
218
  **Important**: What you need is ffmpeg *binary*, **NOT** [the Python package of the same name](https://pypi.org/project/ffmpeg)
219
219
 
220
- * [**yt-dlp-ejs**](https://github.com/yt-dlp/ejs) - Required for deciphering YouTube n/sig values. Licensed under [Unlicense](https://github.com/yt-dlp/ejs/blob/main/LICENSE), bundles [MIT](https://github.com/davidbonnet/astring/blob/main/LICENSE) and [ISC](https://github.com/meriyah/meriyah/blob/main/LICENSE.md) components.
220
+ * [**yt-dlp-ejs**](https://github.com/yt-dlp/ejs) - Required for full YouTube support. Licensed under [Unlicense](https://github.com/yt-dlp/ejs/blob/main/LICENSE), bundles [MIT](https://github.com/davidbonnet/astring/blob/main/LICENSE) and [ISC](https://github.com/meriyah/meriyah/blob/main/LICENSE.md) components.
221
221
 
222
222
  A JavaScript runtime/engine like [**deno**](https://deno.land) (recommended), [**node.js**](https://nodejs.org), [**bun**](https://bun.sh), or [**QuickJS**](https://bellard.org/quickjs/) is also required to run yt-dlp-ejs. See [the wiki](https://github.com/yt-dlp/yt-dlp/wiki/EJS).
223
223
 
@@ -318,7 +318,7 @@ Tip: Use `CTRL`+`F` (or `Command`+`F`) to search by keywords
318
318
  --no-update Do not check for updates (default)
319
319
  --update-to [CHANNEL]@[TAG] Upgrade/downgrade to a specific version.
320
320
  CHANNEL can be a repository as well. CHANNEL
321
- and TAG default to "nightly" and "latest"
321
+ and TAG default to "stable" and "latest"
322
322
  respectively if omitted; See "UPDATE" for
323
323
  details. Supported channels: stable,
324
324
  nightly, master
@@ -1864,7 +1864,7 @@ The following extractors use this feature:
1864
1864
  #### youtube
1865
1865
  * `lang`: Prefer translated metadata (`title`, `description` etc) of this language code (case-sensitive). By default, the video primary language metadata is preferred, with a fallback to `en` translated. See [youtube/_base.py](https://github.com/yt-dlp/yt-dlp/blob/415b4c9f955b1a0391204bd24a7132590e7b3bdb/yt_dlp/extractor/youtube/_base.py#L402-L409) for the list of supported content language codes
1866
1866
  * `skip`: One or more of `hls`, `dash` or `translated_subs` to skip extraction of the m3u8 manifests, dash manifests and [auto-translated subtitles](https://github.com/yt-dlp/yt-dlp/issues/4090#issuecomment-1158102032) respectively
1867
- * `player_client`: Clients to extract video data from. The currently available clients are `web`, `web_safari`, `web_embedded`, `web_music`, `web_creator`, `mweb`, `ios`, `android`, `android_sdkless`, `android_vr`, `tv`, `tv_simply`, `tv_downgraded`, and `tv_embedded`. By default, `android_sdkless,web,web_safari` is used. If no JavaScript runtime/engine is available, then only `android_sdkless` is used. If logged-in cookies are passed to yt-dlp, then `tv_downgraded,web,web_safari` is used for free accounts and `tv_downgraded,web_creator,web` is used for premium accounts. The `web_music` client is added for `music.youtube.com` URLs when logged-in cookies are used. The `web_embedded` client is added for age-restricted videos but only works if the video is embeddable. The `tv_embedded` and `web_creator` clients are added for age-restricted videos if account age-verification is required. Some clients, such as `web` and `web_music`, require a `po_token` for their formats to be downloadable. Some clients, such as `web_creator`, will only work with authentication. Not all clients support authentication via cookies. You can use `default` for the default clients, or you can use `all` for all clients (not recommended). You can prefix a client with `-` to exclude it, e.g. `youtube:player_client=default,-ios`
1867
+ * `player_client`: Clients to extract video data from. The currently available clients are `web`, `web_safari`, `web_embedded`, `web_music`, `web_creator`, `mweb`, `ios`, `ios_downgraded`, `android`, `android_vr`, `tv`, `tv_simply`, `tv_downgraded`, and `tv_embedded`. By default, `android_vr,ios_downgraded,web,web_safari` is used. If no JavaScript runtime/engine is available, then `android_vr,ios_downgraded` is used. If logged-in cookies are passed to yt-dlp, then `tv_downgraded,web,web_safari` is used for free accounts and `tv_downgraded,web_creator,web` is used for premium accounts. The `web_music` client is added for `music.youtube.com` URLs when logged-in cookies are used. The `web_embedded` client is added for age-restricted videos but only works if the video is embeddable. The `tv_embedded` and `web_creator` clients are added for age-restricted videos if account age-verification is required. Some clients, such as `web` and `web_music`, require a `po_token` for their formats to be downloadable. Some clients, such as `web_creator`, will only work with authentication. Not all clients support authentication via cookies. You can use `default` for the default clients, or you can use `all` for all clients (not recommended). You can prefix a client with `-` to exclude it, e.g. `youtube:player_client=default,-ios`
1868
1868
  * `player_skip`: Skip some network requests that are generally needed for robust extraction. One or more of `configs` (skip client configs), `webpage` (skip initial webpage), `js` (skip js player), `initial_data` (skip initial data/next ep request). While these options can help reduce the number of requests needed or avoid some rate-limiting, they could cause issues such as missing formats or metadata. See [#860](https://github.com/yt-dlp/yt-dlp/pull/860) and [#12826](https://github.com/yt-dlp/yt-dlp/issues/12826) for more details
1869
1869
  * `webpage_skip`: Skip extraction of embedded webpage data. One or both of `player_response`, `initial_data`. These options are for testing purposes and don't skip any network requests
1870
1870
  * `player_params`: YouTube player parameters to use for player requests. Will overwrite any default ones set by yt-dlp.
@@ -1976,7 +1976,7 @@ The following extractors use this feature:
1976
1976
  * `backend`: Backend API to use for extraction - one of `streaks` (default) or `brightcove` (deprecated)
1977
1977
 
1978
1978
  #### vimeo
1979
- * `client`: Client to extract video data from. The currently available clients are `android`, `ios`, and `web`. Only one client can be used. The `web` client is used by default. The `web` client only works with account cookies or login credentials. The `android` and `ios` clients only work with previously cached OAuth tokens
1979
+ * `client`: Client to extract video data from. The currently available clients are `android`, `ios`, `macos` and `web`. Only one client can be used. The `macos` client is used by default, but the `web` client is used when logged-in. The `web` client only works with account cookies or login credentials. The `android` and `ios` clients only work with previously cached OAuth tokens
1980
1980
  * `original_format_policy`: Policy for when to try extracting original formats. One of `always`, `never`, or `auto`. The default `auto` policy tries to avoid exceeding the web client's API rate-limit by only making an extra request when Vimeo publicizes the video's downloadability
1981
1981
 
1982
1982
  **Note**: These options may be changed/removed in the future without concern for backward compatibility
@@ -265,8 +265,8 @@ Strongly recommended
265
265
  Important: What you need is ffmpeg binary, NOT the Python package of
266
266
  the same name
267
267
 
268
- - yt-dlp-ejs - Required for deciphering YouTube n/sig values. Licensed
269
- under Unlicense, bundles MIT and ISC components.
268
+ - yt-dlp-ejs - Required for full YouTube support. Licensed under
269
+ Unlicense, bundles MIT and ISC components.
270
270
 
271
271
  A JavaScript runtime/engine like deno (recommended), node.js, bun,
272
272
  or QuickJS is also required to run yt-dlp-ejs. See the wiki.
@@ -409,7 +409,7 @@ General Options:
409
409
  --no-update Do not check for updates (default)
410
410
  --update-to [CHANNEL]@[TAG] Upgrade/downgrade to a specific version.
411
411
  CHANNEL can be a repository as well. CHANNEL
412
- and TAG default to "nightly" and "latest"
412
+ and TAG default to "stable" and "latest"
413
413
  respectively if omitted; See "UPDATE" for
414
414
  details. Supported channels: stable,
415
415
  nightly, master
@@ -2312,11 +2312,11 @@ youtube
2312
2312
  respectively
2313
2313
  - player_client: Clients to extract video data from. The currently
2314
2314
  available clients are web, web_safari, web_embedded, web_music,
2315
- web_creator, mweb, ios, android, android_sdkless, android_vr, tv,
2315
+ web_creator, mweb, ios, ios_downgraded, android, android_vr, tv,
2316
2316
  tv_simply, tv_downgraded, and tv_embedded. By default,
2317
- android_sdkless,web,web_safari is used. If no JavaScript
2318
- runtime/engine is available, then only android_sdkless is used. If
2319
- logged-in cookies are passed to yt-dlp, then
2317
+ android_vr,ios_downgraded,web,web_safari is used. If no JavaScript
2318
+ runtime/engine is available, then android_vr,ios_downgraded is used.
2319
+ If logged-in cookies are passed to yt-dlp, then
2320
2320
  tv_downgraded,web,web_safari is used for free accounts and
2321
2321
  tv_downgraded,web_creator,web is used for premium accounts. The
2322
2322
  web_music client is added for music.youtube.com URLs when logged-in
@@ -2591,10 +2591,11 @@ tver
2591
2591
  vimeo
2592
2592
 
2593
2593
  - client: Client to extract video data from. The currently available
2594
- clients are android, ios, and web. Only one client can be used. The
2595
- web client is used by default. The web client only works with
2596
- account cookies or login credentials. The android and ios clients
2597
- only work with previously cached OAuth tokens
2594
+ clients are android, ios, macos and web. Only one client can be
2595
+ used. The macos client is used by default, but the web client is
2596
+ used when logged-in. The web client only works with account cookies
2597
+ or login credentials. The android and ios clients only work with
2598
+ previously cached OAuth tokens
2598
2599
  - original_format_policy: Policy for when to try extracting original
2599
2600
  formats. One of always, never, or auto. The default auto policy
2600
2601
  tries to avoid exceeding the web client's API rate-limit by only
@@ -3,7 +3,7 @@ complete --command yt-dlp --long-option help --short-option h --description 'Pri
3
3
  complete --command yt-dlp --long-option version --description 'Print program version and exit'
4
4
  complete --command yt-dlp --long-option update --short-option U --description 'Check if updates are available. You installed yt-dlp from a manual build or with a package manager; Use that to update'
5
5
  complete --command yt-dlp --long-option no-update --description 'Do not check for updates (default)'
6
- complete --command yt-dlp --long-option update-to --description 'Upgrade/downgrade to a specific version. CHANNEL can be a repository as well. CHANNEL and TAG default to "nightly" and "latest" respectively if omitted; See "UPDATE" for details. Supported channels: stable, nightly, master'
6
+ complete --command yt-dlp --long-option update-to --description 'Upgrade/downgrade to a specific version. CHANNEL can be a repository as well. CHANNEL and TAG default to "stable" and "latest" respectively if omitted; See "UPDATE" for details. Supported channels: stable, nightly, master'
7
7
  complete --command yt-dlp --long-option ignore-errors --short-option i --description 'Ignore download and postprocessing errors. The download will be considered successful even if the postprocessing fails'
8
8
  complete --command yt-dlp --long-option no-abort-on-error --description 'Continue with next video on download errors; e.g. to skip unavailable videos in a playlist (default)'
9
9
  complete --command yt-dlp --long-option abort-on-error --description 'Abort downloading of further videos if an error occurs (Alias: --no-ignore-errors)'
@@ -325,5 +325,17 @@
325
325
  "when": "c63b4e2a2b81cc78397c8709ef53ffd29bada213",
326
326
  "short": "[cleanup] Misc (#14767)",
327
327
  "authors": ["bashonly", "seproDev", "matyb08"]
328
+ },
329
+ {
330
+ "action": "change",
331
+ "when": "abf29e3e72e8a4dcae61e2ceaf37ce8405af61ab",
332
+ "short": "[ie/youtube] Fix `player_skip=js` extractor-arg (#15428)",
333
+ "authors": ["bashonly"]
334
+ },
335
+ {
336
+ "action": "change",
337
+ "when": "e2ea6bd6ab639f910b99e55add18856974ff4c3a",
338
+ "short": "[ie] Fix prioritization of Youtube URL matching (#15596)",
339
+ "authors": ["Grub4K"]
328
340
  }
329
341
  ]
@@ -9,10 +9,9 @@ authors = [
9
9
  ]
10
10
  maintainers = [
11
11
  {email = "maintainers@yt-dlp.org"},
12
- {name = "Grub4K", email = "contact@grub4k.xyz"},
12
+ {name = "Grub4K", email = "contact@grub4k.dev"},
13
13
  {name = "bashonly", email = "bashonly@protonmail.com"},
14
14
  {name = "coletdjnz", email = "coletdjnz@protonmail.com"},
15
- {name = "sepro", email = "sepro@sepr0.com"},
16
15
  ]
17
16
  description = "A feature-rich command-line audio/video downloader"
18
17
  readme = "README.md"
@@ -56,7 +55,7 @@ default = [
56
55
  "requests>=2.32.2,<3",
57
56
  "urllib3>=2.0.2,<3",
58
57
  "websockets>=13.0",
59
- "yt-dlp-ejs==0.3.2",
58
+ "yt-dlp-ejs==0.4.0",
60
59
  ]
61
60
  curl-cffi = [
62
61
  "curl-cffi>=0.5.10,!=0.6.*,!=0.7.*,!=0.8.*,!=0.9.*,<0.15; implementation_name=='cpython'",
@@ -70,7 +69,7 @@ secretstorage = [
70
69
  "secretstorage",
71
70
  ]
72
71
  deno = [
73
- "deno>=2.6.5", # v2.6.5 fixes installation of incompatible binaries
72
+ "deno>=2.6.6", # v2.6.5 fixes compatibility, v2.6.6 adds integrity check
74
73
  ]
75
74
  build = [
76
75
  "build",
@@ -88,6 +88,21 @@ CHALLENGES: list[Challenge] = [
88
88
  'gN7a-hudCuAuPH6fByOk1_GNXN0yNMHShjZXS2VOgsEItAJz0tipeavEOmNdYN-wUtcEqD3bCXjc0iyKfAyZxCBGgIARwsSdQfJ2CJtt':
89
89
  'MhudCuAuP-6fByOk1_GNXN7gNHHShjyXS2VOgsEItAJz0tipeav0OmNdYN-wUtcEqD3bCXjc0iyKfAyZxCBGgIARwsSdQfJ2CJtt',
90
90
  }),
91
+ # c1c87fb0: tce variant broke sig solving; n and main variant are added only for regression testing
92
+ Challenge('c1c87fb0', Variant.main, JsChallengeType.N, {
93
+ 'ZdZIqFPQK-Ty8wId': 'jCHBK5GuAFNa2',
94
+ }),
95
+ Challenge('c1c87fb0', Variant.main, JsChallengeType.SIG, {
96
+ 'gN7a-hudCuAuPH6fByOk1_GNXN0yNMHShjZXS2VOgsEItAJz0tipeavEOmNdYN-wUtcEqD3bCXjc0iyKfAyZxCBGgIARwsSdQfJ2CJtt':
97
+ 'ttJC2JfQdSswRAIgGBCxZyAfKyi0cjXCb3DqEctUw-NYdNmOEvaepit0zJAtIEsgOV2SXZjhSHMNy0NXNGa1kOyBf6HPuAuCduh-_',
98
+ }),
99
+ Challenge('c1c87fb0', Variant.tce, JsChallengeType.N, {
100
+ 'ZdZIqFPQK-Ty8wId': 'jCHBK5GuAFNa2',
101
+ }),
102
+ Challenge('c1c87fb0', Variant.tce, JsChallengeType.SIG, {
103
+ 'gN7a-hudCuAuPH6fByOk1_GNXN0yNMHShjZXS2VOgsEItAJz0tipeavEOmNdYN-wUtcEqD3bCXjc0iyKfAyZxCBGgIARwsSdQfJ2CJtt':
104
+ 'ttJC2JfQdSswRAIgGBCxZyAfKyi0cjXCb3DqEctUw-NYdNmOEvaepit0zJAtIEsgOV2SXZjhSHMNy0NXNGa1kOyBf6HPuAuCduh-_',
105
+ }),
91
106
  ]
92
107
 
93
108
  requests: list[JsChallengeRequest] = []
@@ -48,7 +48,7 @@ Do not check for updates (default)
48
48
  --update-to \f[I][CHANNEL]\[at][TAG]\f[R]
49
49
  Upgrade/downgrade to a specific version.
50
50
  CHANNEL can be a repository as well.
51
- CHANNEL and TAG default to \[dq]nightly\[dq] and \[dq]latest\[dq]
51
+ CHANNEL and TAG default to \[dq]stable\[dq] and \[dq]latest\[dq]
52
52
  respectively if omitted; See \[dq]UPDATE\[dq] for details.
53
53
  Supported channels: stable, nightly, master
54
54
  .TP
@@ -2713,12 +2713,12 @@ respectively
2713
2713
  \f[V]player_client\f[R]: Clients to extract video data from.
2714
2714
  The currently available clients are \f[V]web\f[R], \f[V]web_safari\f[R],
2715
2715
  \f[V]web_embedded\f[R], \f[V]web_music\f[R], \f[V]web_creator\f[R],
2716
- \f[V]mweb\f[R], \f[V]ios\f[R], \f[V]android\f[R],
2717
- \f[V]android_sdkless\f[R], \f[V]android_vr\f[R], \f[V]tv\f[R],
2716
+ \f[V]mweb\f[R], \f[V]ios\f[R], \f[V]ios_downgraded\f[R],
2717
+ \f[V]android\f[R], \f[V]android_vr\f[R], \f[V]tv\f[R],
2718
2718
  \f[V]tv_simply\f[R], \f[V]tv_downgraded\f[R], and \f[V]tv_embedded\f[R].
2719
- By default, \f[V]android_sdkless,web,web_safari\f[R] is used.
2720
- If no JavaScript runtime/engine is available, then only
2721
- \f[V]android_sdkless\f[R] is used.
2719
+ By default, \f[V]android_vr,ios_downgraded,web,web_safari\f[R] is used.
2720
+ If no JavaScript runtime/engine is available, then
2721
+ \f[V]android_vr,ios_downgraded\f[R] is used.
2722
2722
  If logged-in cookies are passed to yt-dlp, then
2723
2723
  \f[V]tv_downgraded,web,web_safari\f[R] is used for free accounts and
2724
2724
  \f[V]tv_downgraded,web_creator,web\f[R] is used for premium accounts.
@@ -3075,9 +3075,10 @@ Default is \f[V]asc\f[R]
3075
3075
  .IP \[bu] 2
3076
3076
  \f[V]client\f[R]: Client to extract video data from.
3077
3077
  The currently available clients are \f[V]android\f[R], \f[V]ios\f[R],
3078
- and \f[V]web\f[R].
3078
+ \f[V]macos\f[R] and \f[V]web\f[R].
3079
3079
  Only one client can be used.
3080
- The \f[V]web\f[R] client is used by default.
3080
+ The \f[V]macos\f[R] client is used by default, but the \f[V]web\f[R]
3081
+ client is used when logged-in.
3081
3082
  The \f[V]web\f[R] client only works with account cookies or login
3082
3083
  credentials.
3083
3084
  The \f[V]android\f[R] and \f[V]ios\f[R] clients only work with
@@ -3215,8 +3216,8 @@ for details on the specific issues solved by these builds
3215
3216
  name (https://pypi.org/project/ffmpeg)
3216
3217
  .RE
3217
3218
  .IP \[bu] 2
3218
- \f[B]yt-dlp-ejs\f[R] (https://github.com/yt-dlp/ejs) - Required for
3219
- deciphering YouTube n/sig values.
3219
+ \f[B]yt-dlp-ejs\f[R] (https://github.com/yt-dlp/ejs) - Required for full
3220
+ YouTube support.
3220
3221
  Licensed under
3221
3222
  Unlicense (https://github.com/yt-dlp/ejs/blob/main/LICENSE), bundles
3222
3223
  MIT (https://github.com/davidbonnet/astring/blob/main/LICENSE) and
@@ -1602,8 +1602,10 @@ class YoutubeDL:
1602
1602
  if ret is NO_DEFAULT:
1603
1603
  while True:
1604
1604
  filename = self._format_screen(self.prepare_filename(info_dict), self.Styles.FILENAME)
1605
- reply = input(self._format_screen(
1606
- f'Download "{filename}"? (Y/n): ', self.Styles.EMPHASIS)).lower().strip()
1605
+ self.to_screen(
1606
+ self._format_screen(f'Download "{filename}"? (Y/n): ', self.Styles.EMPHASIS),
1607
+ skip_eol=True)
1608
+ reply = input().lower().strip()
1607
1609
  if reply in {'y', ''}:
1608
1610
  return None
1609
1611
  elif reply == 'n':
@@ -3030,9 +3032,10 @@ class YoutubeDL:
3030
3032
  # Bypass interactive format selection if no formats & --ignore-no-formats-error
3031
3033
  formats_to_download = None
3032
3034
  break
3033
- req_format = input(self._format_screen('\nEnter format selector ', self.Styles.EMPHASIS)
3034
- + '(Press ENTER for default, or Ctrl+C to quit)'
3035
- + self._format_screen(': ', self.Styles.EMPHASIS))
3035
+ self.to_screen(self._format_screen('\nEnter format selector ', self.Styles.EMPHASIS)
3036
+ + '(Press ENTER for default, or Ctrl+C to quit)'
3037
+ + self._format_screen(': ', self.Styles.EMPHASIS), skip_eol=True)
3038
+ req_format = input()
3036
3039
  try:
3037
3040
  format_selector = self.build_format_selector(req_format) if req_format else None
3038
3041
  except SyntaxError as err:
@@ -3478,11 +3481,12 @@ class YoutubeDL:
3478
3481
  if dl_filename is not None:
3479
3482
  self.report_file_already_downloaded(dl_filename)
3480
3483
  elif fd:
3481
- for f in info_dict['requested_formats'] if fd != FFmpegFD else []:
3482
- f['filepath'] = fname = prepend_extension(
3483
- correct_ext(temp_filename, info_dict['ext']),
3484
- 'f{}'.format(f['format_id']), info_dict['ext'])
3485
- downloaded.append(fname)
3484
+ if fd != FFmpegFD and temp_filename != '-':
3485
+ for f in info_dict['requested_formats']:
3486
+ f['filepath'] = fname = prepend_extension(
3487
+ correct_ext(temp_filename, info_dict['ext']),
3488
+ 'f{}'.format(f['format_id']), info_dict['ext'])
3489
+ downloaded.append(fname)
3486
3490
  info_dict['url'] = '\n'.join(f['url'] for f in info_dict['requested_formats'])
3487
3491
  success, real_download = self.dl(temp_filename, info_dict)
3488
3492
  info_dict['__real_download'] = real_download
@@ -11,6 +11,7 @@ from ..utils import (
11
11
  OnDemandPagedList,
12
12
  clean_html,
13
13
  extract_attributes,
14
+ url_or_none,
14
15
  urljoin,
15
16
  )
16
17
  from ..utils.traversal import (
@@ -128,7 +129,7 @@ class TarangPlusVideoIE(TarangPlusBaseIE):
128
129
  **traverse_obj(metadata, {
129
130
  'id': ('content_id', {str}),
130
131
  'title': ('title', {str}),
131
- 'thumbnail': ('image', {str}),
132
+ 'thumbnail': ('image', {url_or_none}),
132
133
  }),
133
134
  **traverse_obj(hidden_inputs_data, {
134
135
  'id': ('content_id', {str}),
@@ -49,7 +49,7 @@ class VimeoBaseInfoExtractor(InfoExtractor):
49
49
  'Cannot download embed-only video without embedding URL. Please call yt-dlp '
50
50
  'with the URL of the page that embeds this video.')
51
51
 
52
- _DEFAULT_CLIENT = 'web'
52
+ _DEFAULT_CLIENT = 'macos'
53
53
  _DEFAULT_AUTHED_CLIENT = 'web'
54
54
  _CLIENT_HEADERS = {
55
55
  'Accept': 'application/vnd.vimeo.*+json; version=3.4.10',
@@ -87,6 +87,21 @@ class VimeoBaseInfoExtractor(InfoExtractor):
87
87
  'upload', 'transcode', 'is_playable', 'has_audio',
88
88
  ),
89
89
  },
90
+ 'macos': {
91
+ 'CACHE_KEY': 'oauth-token-macos',
92
+ 'CACHE_ONLY': False,
93
+ 'VIEWER_JWT': False,
94
+ 'REQUIRES_AUTH': False,
95
+ 'AUTH': 'NDc1N2JlN2Y5ZjZmMjU3NzE3NTRkZTg1NmY2YzU2MTI0OTFlNjJiYjpwVUNDWUlBZmZqSHhQcndBYWxGMzgyYys2NkN5d1JrREJZZXdPcEdsU05tdjFlVVo2aE1lYk9GcWE3ZW9KVldlYnFlOWh5Vno5UWtpUGJ5empYZFBpYkFwV0FFTnB5VWV4ZEh3aHZnRUNEL0VySnBzTmFraDdNbS9nMXhWanhIcw==',
96
+ 'USER_AGENT': 'Vimeo/1.6.3 (com.vimeo.mac; build:251121.142637.0; macOS 13.7.8) Alamofire/5.9.0 VimeoNetworking/5.0.0',
97
+ 'VIDEOS_FIELDS': (
98
+ 'uri', 'name', 'description', 'type', 'link', 'player_embed_url', 'duration', 'width',
99
+ 'language', 'height', 'embed', 'created_time', 'modified_time', 'release_time', 'content_rating',
100
+ 'content_rating_class', 'rating_mod_locked', 'license', 'privacy', 'pictures', 'tags', 'stats',
101
+ 'categories', 'uploader', 'metadata', 'user', 'files', 'download', 'app', 'play', 'status',
102
+ 'resource_key', 'badge', 'upload', 'transcode', 'is_playable', 'has_audio',
103
+ ),
104
+ },
90
105
  'web': {
91
106
  'CACHE_ONLY': False,
92
107
  'VIEWER_JWT': True,
@@ -1,6 +1,7 @@
1
1
  from .common import InfoExtractor
2
2
  from ..utils import (
3
3
  float_or_none,
4
+ int_or_none,
4
5
  str_or_none,
5
6
  traverse_obj,
6
7
  url_or_none,
@@ -11,17 +12,16 @@ class WhypIE(InfoExtractor):
11
12
  _VALID_URL = r'https?://(?:www\.)?whyp\.it/tracks/(?P<id>\d+)'
12
13
  _TESTS = [{
13
14
  'url': 'https://www.whyp.it/tracks/18337/home-page-example-track-b4kq7',
14
- 'md5': 'c1187b42ebf8605284e3dc92aeb33d16',
15
+ 'md5': '02fd96427acd9547445979bf0496b013',
15
16
  'info_dict': {
16
- 'url': 'https://cdn.whyp.it/50eb17cc-e9ff-4e18-b89b-dc9206a95cb1.mp3',
17
17
  'id': '18337',
18
- 'title': 'Home Page Example Track',
19
- 'description': 'md5:bd758000fb93f3159339c852b5b9133c',
20
- 'ext': 'mp3',
21
- 'duration': 52.82,
18
+ 'title': 'Example Track',
19
+ 'description': 'md5:e0b1bcf1d267dc1a0f15efff09c8f297',
20
+ 'ext': 'flac',
21
+ 'duration': 135.63,
22
22
  'uploader': 'Brad',
23
23
  'uploader_id': '1',
24
- 'thumbnail': 'https://cdn.whyp.it/a537bb36-3373-4c61-96c8-27fc1b2f427a.jpg',
24
+ 'thumbnail': 'https://cdn.whyp.it/6ad0bbd9-577d-42bb-9b61-2a4f57f647eb.jpg',
25
25
  },
26
26
  }, {
27
27
  'url': 'https://www.whyp.it/tracks/18337',
@@ -34,8 +34,15 @@ class WhypIE(InfoExtractor):
34
34
  data = self._search_nuxt_data(webpage, unique_id)['rawTrack']
35
35
 
36
36
  return {
37
- 'url': data['audio_url'],
38
37
  'id': unique_id,
38
+ 'formats': [{
39
+ 'url': data[f'{prefix}_url'],
40
+ 'format_id': prefix,
41
+ 'filesize': int_or_none(data.get(f'{prefix}_size')),
42
+ 'vcodec': 'none',
43
+ 'quality': 10 if prefix == 'lossless' else -1,
44
+ 'http_headers': {'Referer': 'https://whyp.it/'},
45
+ } for prefix in ('audio', 'lossy', 'lossless') if url_or_none(data.get(f'{prefix}_url'))],
39
46
  **traverse_obj(data, {
40
47
  'title': 'title',
41
48
  'description': 'description',
@@ -44,7 +51,4 @@ class WhypIE(InfoExtractor):
44
51
  'uploader_id': ('user', 'id', {str_or_none}),
45
52
  'thumbnail': ('artwork_url', {url_or_none}),
46
53
  }),
47
- 'ext': 'mp3',
48
- 'vcodec': 'none',
49
- 'http_headers': {'Referer': 'https://whyp.it/'},
50
54
  }