ytdl-org / youtube-dl

Command-line program to download videos from YouTube.com and other video sites
http://ytdl-org.github.io/youtube-dl/
The Unlicense
131.56k stars 9.97k forks source link

Can not download VR180 3D Video from youtube #22690

Closed GinosergioZ closed 1 year ago

GinosergioZ commented 4 years ago

Checklist

Verbose log

PASTE VERBOSE LOG HERE

C:\YoutubeDL>youtube-dl -F https://www.youtube.com/watch?v=O2TlGMNdSJk -v [debug] System config: [] [debug] User config: [] [debug] Custom config: [] [debug] Command-line args: ['-F', 'https://www.youtube.com/watch?v=O2TlGMNdSJk', '-v'] [debug] Encodings: locale cp1252, fs mbcs, out cp850, pref cp1252 [debug] youtube-dl version 2019.09.28 [debug] Python version 3.4.4 (CPython) - Windows-10-10.0.17134 [debug] exe versions: ffmpeg 4.2.1, ffprobe 4.2.1 [debug] Proxy map: {} [youtube] O2TlGMNdSJk: Downloading webpage [youtube] O2TlGMNdSJk: Downloading video info webpage [info] Available formats for O2TlGMNdSJk: format code extension resolution note 249 webm audio only tiny 63k , opus @ 50k (48000Hz), 742.73KiB 250 webm audio only tiny 83k , opus @ 70k (48000Hz), 977.04KiB 140 m4a audio only tiny 130k , m4a_dash container, mp4a.40.2@128k (44100Hz), 1.91MiB 251 webm audio only tiny 163k , opus @160k (48000Hz), 1.89MiB 278 webm 256x144 144s 92k , webm container, vp9, 30fps, video only, 1.12MiB 160 mp4 256x144 144s 112k , avc1.4d400c, 30fps, video only, 776.33KiB 242 webm 424x240 240s 194k , vp9, 30fps, video only, 1.70MiB 133 mp4 424x240 240s 245k , avc1.4d4015, 30fps, video only, 1.86MiB 243 webm 640x360 360s 475k , vp9, 30fps, video only, 4.00MiB 134 mp4 640x360 360s 560k , avc1.4d401e, 30fps, video only, 2.94MiB 244 webm 852x480 480s 815k , vp9, 30fps, video only, 6.39MiB 135 mp4 852x480 480s 1033k , avc1.4d401f, 30fps, video only, 5.70MiB 247 webm 1280x720 720s 1581k , vp9, 30fps, video only, 17.16MiB 136 mp4 1280x720 720s 2132k , avc1.4d401f, 30fps, video only, 12.43MiB 248 webm 1920x1080 1080s 2655k , vp9, 30fps, video only, 31.19MiB 137 mp4 1920x1080 1080s 3470k , avc1.640028, 30fps, video only, 32.66MiB 264 mp4 2048x1440 1440s 5776k , avc1.640032, 30fps, video only, 60.93MiB 266 mp4 2048x2048 2160s 6139k , avc1.640032, 30fps, video only, 72.32MiB 271 webm 2048x1440 1440s 6961k , vp9, 30fps, video only, 76.95MiB 313 webm 2048x2048 2160s 9658k , vp9, 30fps, video only, 119.83MiB 43 webm 640x360 360p , vp8.0, vorbis@128k, 9.96MiB 18 mp4 640x360 360p 671k , avc1.42001E, mp4a.40.2@ 96k (44100Hz), 9.91MiB (best)

Description

WRITE DESCRIPTION HERE I am trying to download some demo video from youtube, to use it inside my Oculus GO. Youtube-dl does not report the 3D SBS format in the list of available format. I have found this old issue that now is closed:

[YouTube] [SOLVED] 3D/2D 360° videos - now encoded in a new, proprietary & non-standard format #15267

I tried to use all the suggestions, first of all the user agent=" " but youtube-dl reports even less formats. Also tried other software and plugin but I can not solve the issue.

Obvioulsly THAT video in my Oculus Go, in Youtube VR, is in 3D format. That video is just an example, there are many others.

ANewDawn commented 4 years ago

Noticed this also. Downloaded vr180 videos from the past year to now are in mono and not 3D. Wonder if YouTube changed to a different format for vr180 similar to what they did with 360 eac.

Hopefully someone can find a workaround

cyaoeu commented 4 years ago

Yes it's broken (again), now only 2D versions are displayed in the list (for example 2048x2048 instead of the real 3D 4096x2048)

phantasmx commented 4 years ago

Same problem, started a few weeks ago. All 3D VR180 videos are now downloading in 2D, including old videos, that earlier were downloading in 3D. 3D formats are missing from the list of formats. Same with other downloaders. Youtube VR displays them correctly in 3D. Sample video https://www.youtube.com/watch?v=h3XkeHuy8go

E:\Programs\Media\youtube-dl>youtube-dl -F -v https://www.youtube.com/watch?v=h3XkeHuy8go
[debug] System config: []
[debug] User config: []
[debug] Custom config: []
[debug] Command-line args: ['-F', '-v', 'https://www.youtube.com/watch?v=h3XkeHuy8go']
[debug] Encodings: locale cp932, fs mbcs, out cp932, pref cp932
[debug] youtube-dl version 2019.10.16
[debug] Python version 3.4.4 (CPython) - Windows-10-10.0.14393
[debug] exe versions: ffmpeg N-93944-gd903c09d9a
[debug] Proxy map: {}
[youtube] h3XkeHuy8go: Downloading webpage
[youtube] h3XkeHuy8go: Downloading video info webpage
[info] Available formats for h3XkeHuy8go:
format code  extension  resolution note
249          webm       audio only tiny   45k , opus @ 50k (48000Hz), 116.81KiB
250          webm       audio only tiny   59k , opus @ 70k (48000Hz), 153.44KiB
251          webm       audio only tiny  122k , opus @160k (48000Hz), 311.68KiB
140          m4a        audio only tiny  130k , m4a_dash container, mp4a.40.2@128k (44100Hz), 336.90KiB
160          mp4        256x144    144s   20k , avc1.4d400c, 30fps, video only, 48.06KiB
278          webm       256x144    144s   35k , webm container, vp9, 30fps, video only, 88.85KiB
133          mp4        426x240    240s   47k , avc1.4d4015, 30fps, video only, 108.20KiB
242          webm       426x240    240s   69k , vp9, 30fps, video only, 172.37KiB
134          mp4        640x360    360s   84k , avc1.4d401e, 30fps, video only, 186.89KiB
243          webm       640x360    360s  145k , vp9, 30fps, video only, 345.69KiB
135          mp4        854x480    480s  230k , avc1.4d401f, 30fps, video only, 463.34KiB
244          webm       854x480    480s  284k , vp9, 30fps, video only, 677.68KiB
136          mp4        1280x720   720s  693k , avc1.4d401f, 30fps, video only, 1.27MiB
247          webm       1280x720   720s 1196k , vp9, 30fps, video only, 2.60MiB
248          webm       1920x1080  1080s 2353k , vp9, 30fps, video only, 5.48MiB
137          mp4        1920x1080  1080s 3616k , avc1.640028, 30fps, video only, 6.99MiB
272          webm       2880x2880  2880s 5801k , vp9, 30fps, video only, 14.46MiB
264          mp4        2560x1440  1440s 8172k , avc1.640032, 30fps, video only, 16.99MiB
271          webm       2560x1440  1440s 8606k , vp9, 30fps, video only, 19.61MiB
266          mp4        2880x2160  2160s 9095k , avc1.640033, 30fps, video only, 20.41MiB
313          webm       2880x2160  2160s 13241k , vp9, 30fps, video only, 33.22MiB
138          mp4        2880x2880  2880s 13754k , avc1.640033, 30fps, video only, 29.61MiB
43           webm       640x360    360p , vp8.0, vorbis@128k, 1.48MiB
18           mp4        640x360    360p  358k , avc1.42001E, mp4a.40.2@ 96k (44100Hz), 929.37KiB
22           mp4        1280x720   720p  760k , avc1.64001F, mp4a.40.2@192k (44100Hz) (best)
ronaldeustace commented 4 years ago

Same issue here. I noticed that the Youtube App for smartphones is able to view the 3D SBS format, so I sniffed the youtube app user agent and tried listing formats with that agent, and strangely, I got a "video unavailable" error.

$ youtube-dl --list-formats --user-agent "com.google.ios.youtube/14.41.2 (iPhone11,2; U; CPU iOS 13_1_3 like Mac OS X; en_US)" "https://www.youtube.com/watch?v=xtjs5mUxpFk" --verbose
[debug] System config: []
[debug] User config: []
[debug] Custom config: []
[debug] Command-line args: [u'--list-formats', u'--user-agent', u'com.google.ios.youtube/14.41.2 (iPhone11,2; U; CPU iOS 13_1_3 like Mac OS X; en_US)', u'https://www.youtube.com/watch?v=xtjs5mUxpFk', u'--verbose']
[debug] Encodings: locale UTF-8, fs UTF-8, out UTF-8, pref UTF-8
[debug] youtube-dl version 2019.10.29
[debug] Python version 2.7.15 (CPython) - CYGWIN_NT-6.1-3.0.4-0.338-5-3-x86_64-64bit
[debug] exe versions: ffmpeg N-92065-g476a77128a
[debug] Proxy map: {}
[youtube] xtjs5mUxpFk: Downloading webpage
[youtube] xtjs5mUxpFk: Downloading video info webpage
WARNING: unable to extract description; please report this issue on https://yt-dl.org/bug . Make sure you are using the latest version; type  youtube-dl -U  to update. Be sure to call youtube-dl with the --verbose flag and include its complete output.
ERROR: This video is unavailable.
Traceback (most recent call last):
  File "/usr/local/bin/youtube-dl/youtube_dl/YoutubeDL.py", line 796, in extract_info
    ie_result = ie.extract(url)
  File "/usr/local/bin/youtube-dl/youtube_dl/extractor/common.py", line 530, in extract
    ie_result = self._real_extract(url)
  File "/usr/local/bin/youtube-dl/youtube_dl/extractor/youtube.py", line 2148, in _real_extract
    raise ExtractorError(error_message, expected=True)
ExtractorError: This video is unavailable.

Same video with default user agent shows a list of formats, but the 3D side-by-side format is of course missing.

$ youtube-dl --list-formats "https://www.youtube.com/watch?v=xtjs5mUxpFk"
[youtube] xtjs5mUxpFk: Downloading webpage
[youtube] xtjs5mUxpFk: Downloading video info webpage
[youtube] xtjs5mUxpFk: Downloading js player vflLT_S1E
[youtube] xtjs5mUxpFk: Downloading js player vflLT_S1E
[info] Available formats for xtjs5mUxpFk:
format code  extension  resolution note
249          webm       audio only tiny   54k , opus @ 50k (48000Hz), 585.04KiB
250          webm       audio only tiny   69k , opus @ 70k (48000Hz), 762.38KiB
140          m4a        audio only tiny  130k , m4a_dash container, mp4a.40.2@128k (44100Hz), 1.48MiB
251          webm       audio only tiny  135k , opus @160k (48000Hz), 1.45MiB
278          webm       256x144    144s   98k , webm container, vp9, 30fps, video only, 1.03MiB
160          mp4        256x144    144s  113k , avc1.4d400c, 30fps, video only, 1.01MiB
242          webm       426x240    240s  224k , vp9, 30fps, video only, 2.07MiB
133          mp4        426x240    240s  249k , avc1.4d4015, 30fps, video only, 2.26MiB
243          webm       640x360    360s  411k , vp9, 30fps, video only, 3.98MiB
134          mp4        640x360    360s  633k , avc1.4d401e, 30fps, video only, 3.97MiB
244          webm       854x480    480s  762k , vp9, 30fps, video only, 7.20MiB
135          mp4        854x480    480s 1157k , avc1.4d401f, 30fps, video only, 8.07MiB
247          webm       1280x720   720s 1523k , vp9, 30fps, video only, 15.33MiB
136          mp4        1280x720   720s 2313k , avc1.4d401f, 30fps, video only, 16.70MiB
248          webm       1920x1080  1080s 2681k , vp9, 30fps, video only, 28.51MiB
137          mp4        1920x1080  1080s 4343k , avc1.640028, 30fps, video only, 37.19MiB
271          webm       1920x1440  1440s 6644k , vp9, 30fps, video only, 66.43MiB
264          mp4        1920x1440  1440s 7808k , avc1.640032, 30fps, video only, 64.42MiB
313          webm       1920x2160  2160s 9031k , vp9, 30fps, video only, 99.92MiB
266          mp4        1920x2160  2160s 11599k , avc1.640032, 30fps, video only, 76.89MiB
43           webm       640x360    360p , vp8.0, vorbis@128k, 10.36MiB
18           mp4        640x360    360p  714k , avc1.42001E, mp4a.40.2@ 96k (44100Hz), 8.14MiB
22           mp4        1280x718   720p 2330k , avc1.64001F, mp4a.40.2@192k (44100Hz) (best)
wasolk commented 4 years ago

I found out that some uploaded VR180 videos can still be downloaded in 3D SBS format. But the majority can't. I can't find what triggers which videos are downloadable or not:

Here's examples from same sources:

Can download with SBS: https://www.youtube.com/watch?v=hX_YDNCaiDM

Can not download with SBS: https://www.youtube.com/watch?v=wL4dzGWIi8g

binarize commented 4 years ago

Same issue here, in the last 3 months any new 3D VR180 video is downloading as mono, rather than SBS or UO 3D.

Older videos I've downloaded fine in the past, still download fine.

cyaoeu commented 4 years ago

The one that downloads as mono has vlayout%3Dmono%3A in the link, the other one doesn't.

ecke101 commented 4 years ago

Any news on this? Is there no way to watch 180VR 3D videos on Youtube anymore at all?

wasolk commented 4 years ago

Still no fix on that! Could not find any way to play 180VR 3D videos on Youtube other than by using the broken Youtube App!

the320x200 commented 4 years ago

Setting the user agent and clearing the filesystem cache worked to get SBS 3D formats to be present on the video I was having this issue with. Maybe it will help with your links.

Ex: youtube-dl.exe --rm-cache-dir --cookies cookies.txt --user-agent "Mozilla/5.0 (Linux; Android 7.1.1; Quest) AppleWebKit/537.36 (KHTML, like Gecko) OculusBrowser/9.0.0.2.38.210941660 SamsungBrowser/4.0 Chrome/81.0.4044.117 Mobile VR Safari/537.36" [videoURL]

Note that the SBS 3D formats now showed up with the same format numbers as the 2D formats were using previously. You need to download the format to see if it is actually 3D or 2D, it's not possible to tell from the format list alone.

cyaoeu commented 4 years ago

Setting the user agent and clearing the filesystem cache worked to get SBS 3D formats to be present on the video I was having this issue with. Maybe it will help with your links.

Ex: youtube-dl.exe --rm-cache-dir --cookies cookies.txt --user-agent "Mozilla/5.0 (Linux; Android 7.1.1; Quest) AppleWebKit/537.36 (KHTML, like Gecko) OculusBrowser/9.0.0.2.38.210941660 SamsungBrowser/4.0 Chrome/81.0.4044.117 Mobile VR Safari/537.36" [videoURL]

Note that the SBS 3D formats now showed up with the same format numbers as the 2D formats were using previously. You need to download the format to see if it is actually 3D or 2D, it's not possible to tell from the format list alone.

Doesn't work for 99% of the videos I tested, I think the user agent is wrong and needs to be the youtube VR user agent.

ANewDawn commented 4 years ago

Any update on this?

Setting the user agent to Youtube VR may seem most viable if anyone knows how to do it

ValentineM31 commented 4 years ago

I don't know if it is 100% relevant, but to get not cropped VR180 I used the following command: youtube-dl.exe --user-agent "Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:80.0) Gecko/20100101 Firefox/80.0" -f bestvideo[ext=mp4] [videoURL]

phantasmx commented 4 years ago

This user agent still gets monoscopic VR180 videos for me. Needs mobile Youtube VR user agent most likely.

ValentineM31 commented 4 years ago

Android Youtube app user-agent: youtube-dl.exe --user-agent "com.google.android.youtube Cronet/71.0.3562.0" --list-formats [videoURL] Samsung GearVR Youtube app user-agent: youtube-dl.exe --user-agent "com.google.android.apps.youtube.vr.oculus Cronet/85.0.4181.5" --list-formats [videoURL] Either give NG result "ERROR: [videoCode]: YouTube said: Unable to extract video data" Needs to teach youtube-dl to credibly act as youtube (oculus) app.

Update: https://www.youtube.com/watch?v=cvtZvw83Dmg - this one supports download of a side-by-side VR180 3840x2160@60fps youtube-dl.exe --user-agent "Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:80.0) Gecko/20100101 Firefox/80.0" --list-formats https://www.youtube.com/watch?v=cvtZvw83Dmg

ValentineM31 commented 4 years ago

After downloading of five hundred of VR180-labeled videos with --user-agent "Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:80.0) Gecko/20100101 Firefox/80.0" I have got around 20~30 true 3D stereoscopic side-by-side VR180 videos. Examples: cvtZvw83Dmg 8yl87RD5D2k BC20NnqnlCM X-Du9YIOjJY xgv0STD9NqA C2cUsQ8-774 9jP2LMsTFfA qced9FtIi74 Fd9jiwR1730 ocyGW_4eRtU 5syaLOQsbgw Who can explain why youtube-dl gives different result for VR180 labeled videos - some downloaded as side-by-side, some downloaded as monoscopic?

ecke101 commented 4 years ago

Just because it's VR180 doesn't mean it's 3D.. Should be tagged "3D" as well I think.

princeadam001 commented 4 years ago

After downloading of five hundred of VR180-labeled videos with --user-agent "Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:80.0) Gecko/20100101 Firefox/80.0" I have got around 20~30 true 3D stereoscopic side-by-side VR180 videos. Examples: cvtZvw83Dmg 8yl87RD5D2k BC20NnqnlCM X-Du9YIOjJY xgv0STD9NqA C2cUsQ8-774 9jP2LMsTFfA qced9FtIi74 Fd9jiwR1730 ocyGW_4eRtU 5syaLOQsbgw Who can explain why youtube-dl gives different result for VR180 labeled videos - some downloaded as side-by-side, some downloaded as monoscopic?

Even without setting the user agent, all of the videos you listed can be downloaded as 3D. Most of them were uploaded before October 2019, which was when YouTube made the change. The first one (cvtZvw83Dmg) was uploaded after that, but has DASH video formats unlike most. They can be downloaded as 3D, but the non-DASH formats are 2D.

Just because it's VR180 doesn't mean it's 3D.. Should be tagged "3D" as well I think.

That's true, there are some 2D 180 videos on YouTube (like this one), but almost all of the actual 3D 180 videos uploaded in the last year download as 2D (just the left eye).

the320x200 commented 4 years ago

Just because it's VR180 doesn't mean it's 3D.. Should be tagged "3D" as well I think.

"VR180" is a specific 180-degree stereo video format created by Google, different from saying generally that a video is 180 degrees made for VR. It will always be 3D (assuming you get the real format and not a 2D conversion like we're getting stuck with currently via youtube-dl). It also has other VR metadata in the video such as a stereo mesh to be used to display the video as well as camera movement data.

https://github.com/google/spatial-media/blob/master/docs/vr180.md

ecke101 commented 4 years ago

Ok, that was new to me, thanks for the correction. It's just that I found that some videos are tagged "4K VR180", some "VR180 3D" and some only "VR180". I thought the last one was 2D.

GinosergioZ commented 3 years ago

So, it seems that still there is not a workaround to download ALL 3D-SBS video that I can view on Oculus-Youtube-VR, for viewing offline... even with the suggested user agent. This thing seems so strange.....

Someone knows other tube-sites that have 3D-SBS video, that can be downloaded in 3D-SBS ??

yaomtc commented 3 years ago

Someone knows other tube-sites that have 3D-SBS video, that can be downloaded in 3D-SBS ??

Pornhub (they provide download links though so it's kind of unnecessary)

GinosergioZ commented 3 years ago

Someone knows other tube-sites that have 3D-SBS video, that can be downloaded in 3D-SBS ??

Pornhub (they provide download links though so it's kind of unnecessary)

Nooo, I mean some generic site, not porn !! Like Vimeo but maybe smaller and not so famous....

Grumbel commented 2 years ago

Someone knows other tube-sites that have 3D-SBS video, that can be downloaded in 3D-SBS ??

https://deovr.com/ just started offering VR video hosting. The site works via a simple .json file format documented at https://deovr.com/app/doc

shreddedwhere874 commented 1 year ago

You might be encountering issues with [Age-restricted videos] when trying to download VR180 videos.

Mono :(

These commands show the mono formats (you can substitute youtube-dl for yt-dlp but i didn't try it):

yt-dlp -vF https://www.youtube.com/watch?v=AuNyKWZ37Gg
yt-dlp -vF --user-agent '' https://www.youtube.com/watch?v=AuNyKWZ37Gg 

Returns mono results:

271     webm  2204x1240   30    │   29.58MiB 4408k dash  │ vp9         4408k video only          1080p, webm_dash

3D-SBS :D

However, if you logged into YouTube and viewed the videos already in your browser (this example uses Firefox but you substitute your own browser):

yt-dlp --cookies-from-browser firefox -vF https://www.youtube.com/watch?v=AuNyKWZ37Gg 

Returns the larger stereoscopic SBS files:

271 webm  2560x1440   30    │   33.18MiB  4944k dash  │ vp9          4944k video only          1440s, mesh, webm_dash
313 webm  3840x2160   30    │  112.20MiB 16720k dash  │ vp9         16720k video only          2160s, mesh, webm_dash

You can combine the video (313) and audio (251) into your preferred output file (i used .mkv video):

yt-dlp --cookies-from-browser firefox -f 313+251 --merge-output-format mkv https://www.youtube.com/watch?v=AuNyKWZ37Gg 
dirkf commented 1 year ago

I can confirm the "mono" results with yt-dl.

deovr.com has what would be HTML5 video if the enclosing tags were video rather than deo-video. But these are marked mono, so perhaps not what VR fiends want. For actual support of this site someone should open a site support request.

As the original problem has been answered, from beyond the grave, I'll close this now.