New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[Youtube] 8k VR180 SBS videos no longer available #9903
Comments
This is a side-effect of #9554. VR180 formats are only available via the Android client(s). It's not possible for yt-dlp to get Android client formats anymore. It's possible that the VR formats may be served to another client in the future, such as the upcoming client for VisionOS. |
Thanks for this information. But why can the official youtube app on meta quest get the 8k format? Is it using some other protocol? |
Meta's VR gear uses the Android client |
(this is not a real fix but I hope this may help in some use cases) if someone still need the android client for specific format, you may:
Removing the 'params' will generate a valid download link which will expire after ~30 seconds. NOTE: After 12d8ea8 (in nightly/master), you no longer need to modify the source to remove these params. You only need to pass For example, the video mentioned in this post: >python -m yt_dlp "https://www.youtube.com/watch?v=W51jdIrSsgk" --extractor-args "youtube:player_client=android" -f 571+140 [youtube] Extracting URL: https://www.youtube.com/watch?v=W51jdIrSsgk [youtube] W51jdIrSsgk: Downloading webpage [youtube] W51jdIrSsgk: Downloading android player API JSON [info] W51jdIrSsgk: Downloading 1 format(s): 571+140 [download] Destination: NIS FORTRESS Archaeological site and modern Jazz Museum SERBIA 8K 4K VR180 3D Travel [W51jdIrSsgk].f571.mp4 [download] 64.0% of 532.55MiB at 13.26MiB/s ETA 00:14ERROR: unable to download video data: HTTP Error 403: Forbidden >python -m yt_dlp "https://www.youtube.com/watch?v=W51jdIrSsgk" --extractor-args "youtube:player_client=android" -f 571+140 [youtube] Extracting URL: https://www.youtube.com/watch?v=W51jdIrSsgk [youtube] W51jdIrSsgk: Downloading webpage [youtube] W51jdIrSsgk: Downloading android player API JSON [info] W51jdIrSsgk: Downloading 1 format(s): 571+140 [download] Resuming download at byte 357378580 [download] Destination: NIS FORTRESS Archaeological site and modern Jazz Museum SERBIA 8K 4K VR180 3D Travel [W51jdIrSsgk].f571.mp4 [download] 100% of 532.55MiB in 00:00:17 at 31.31MiB/s [download] Destination: NIS FORTRESS Archaeological site and modern Jazz Museum SERBIA 8K 4K VR180 3D Travel [W51jdIrSsgk].f140.m4a [download] 100% of 2.54MiB in 00:00:00 at 9.66MiB/s [Merger] Merging formats into "NIS FORTRESS Archaeological site and modern Jazz Museum SERBIA 8K 4K VR180 3D Travel [W51jdIrSsgk].mp4" Deleting original file NIS FORTRESS Archaeological site and modern Jazz Museum SERBIA 8K 4K VR180 3D Travel [W51jdIrSsgk].f140.m4a (pass -k to keep) Deleting original file NIS FORTRESS Archaeological site and modern Jazz Museum SERBIA 8K 4K VR180 3D Travel [W51jdIrSsgk].f571.mp4 (pass -k to keep) You can automate it with a script, e.g. a simple example for Windows: @echo off set arg=%1 for %%i in (%*) do call :concat %%i set argc=%arg:"=% set resume=0 python -m yt_dlp %arg% :resume if %ERRORLEVEL%==0 (goto :eof) else ( if %resume%==5 (goto :eof) else ( if "%argc:--extractor-args youtube:player_client=%" neq "%argc:"=%" if "%argc:android=%" neq "%argc:"=%" ( python -m yt_dlp %arg% set /a "resume=%resume%+1" ) else goto :eof ) ) goto :resume :concat set arg=%arg% %1 goto :eof use it as follow: C:\yt-dlp>ex.bat "https://www.youtube.com/watch?v=W51jdIrSsgk" --extractor-args "youtube:player_client=android" -f 571+140 This script will stop downloading if it resumes more than 5 times. Change the number if needed. |
@coletdjnz What do you think about removing the params from code and returning android formats with lower |
Now implemented in #9553 |
DO NOT REMOVE OR SKIP THE ISSUE TEMPLATE
Checklist
Region
germany
Provide a description that is worded well enough to be understood
New 8k VR180 SBS videos on YouTube are not longer downloadable, because the 8k format is not seen in the API JSON by yt-dlp as available format. This is since some weeks. The 8k format (2x4k SBS) is working for this video with YouTube App on Meta Quest 3, so it must be definitly there. But yt-dlp sees only the 4k (2x2k SBS) format. The 8k format is hidden somewhere.
Provide verbose output that clearly demonstrates the problem
yt-dlp -vU <your command line>
)'verbose': True
toYoutubeDL
params instead[debug] Command-line config
) and insert it belowComplete Verbose Output
The text was updated successfully, but these errors were encountered: