New to 3D/VR but not to programming. I picked up an Oculus Quest and a consumer 360/180 3D camera out of interest.
Are there any examples of playing VR180 videos? Are there resolution limits in Babylon.js video playback? The VR180 video I have is 5.7K. Substituting in a VR180 video in place of a 360 video hasn’t worked, even when I change the mode to side by side.
I realize the format’s relatively new (2017) but it seems great for a few use cases, such as training.
When I try them locally (with videoDome.videoMode = BABYLON.VideoDome.MODE_SIDEBYSIDE;)
in Firefox the 4K video will play but it looks like it only shows the right eye camera video, IE will play both resolutions but only the left eye video, both converted to 360.
In Firefox, trying to play the 5.7K video gives a clear error indicating it’s using H.264 to try to decode it:
Details: mozilla::MediaResult __thiscall mozilla::WMFVideoMFTManager::ValidateVideoInfo(void): Can’t decode H.264 stream because its resolution is out of the maximum limitation
(Probably a Firefox issue instead of a Babylon one)
Back when I was young, we had a 180 cinema in one of our theme parks, which was amazing, but then came the 360 movie cinema, and no one looked back! Seems like the case here
It seems like the video is being converted to 360 (so, double the size, but 50% less information), and is being displayed this way. I will see how we can make 180 work, so far the texture creation only supports 360.
Just a small hack to get it to work - https://www.babylonjs-playground.com/#SQ5UC1#25 (make sure you use the right URL ), but this is not the solution for the 5.7K, and not the real solution for general users. I will see how I manage to integrate it in the framework.
The other problem is the browser support, which we very sadly cannot help with. Chrome would not even display it, firefox told me the file is corrupt. Gonna love web standards!
So true! Now we’re in the situation where “good enough” 180-degree 3D cameras are USD 400, while similar quality 360-degree 3D cameras are multiple thousands. For some training, 180 makes more sense as the trainee just needs to see a limited area.
I think the chrome team can be more helpful, especially if it doesn’t work on all chrome-based browsers. At the beginning I thought it was an issue with the headers, but then I noticed chrome is actually loading the right length, which means it does read the video data correctly.
If anyone else has an idea what could be the problem - speak now and don’t hold your peace.
I pulled down Master, built it and used the preview code. I am seeing the half dome now, but:
Edge: only shows the left camera view and black half dome
Firefox: only shows the right camera view and black half dome
Chrome: No video but does show the black half dome
Oculus: white screen (?)
Is there something I need to do differently with
videoDome.videoMode = BABYLON.VideoDome.MODE_SIDEBYSIDE;
?
I’m pretty sure the results were the same with or without this line.
I’m happy to record some better footage and give it to MS if it would help.
Which video are you using? The 4k you provided? That would be the answer to the last two. About the first two - you mean that in VR both eyes are the same?
Yes, I’m using the 4k provided. I guess I was hoping for too much improvement on Chrome’s part.
Yes, in VR both eyes are the same, if you look at the extreme right in Edge you can see the other camera, as you can if you look at the extreme left in Firefox.
I’ll check what happened, it actually uses the same texture manipulation as the 360. It’s hard to differentiate between right and left in the movie you provided, do you happen to have a movie where it’s prominent?
Found the differences, I am on it. Seems like something weird is happening on our side. Sorry for the delay