rebane2001 / matterport-dl

A downloader for matterport virtual tours
The Unlicense
336 stars 81 forks source link

VR support? #32

Closed simonjub closed 4 months ago

simonjub commented 2 years ago

Hi,

I successfully used your project to download the matterport virtual visit of my old house and it's awesome to know I'll be able to revisit it anytime just as it was, even if the website goes away!

I noticed that when I host my offline copy and I visit it with my Oculus Quest 2, it does not show the button that offers to go into VR mode like the original website. Is that something that you might be able to look into?

mitchcapper commented 2 years ago

No problem just send over a VR headset will be good to go:) In all seriousness, no VR gear here to test with so likely not. Your best bet would be to watch the server log and see if there are any 404s that look likely.

simonjub commented 2 years ago

Haha I wish I had that kind of money to throw a VR headset your way :)

EDIT: the /inform line below came from another device and can be ignored. /EDIT

Here's the server log: 2022-01-12 22:20:06 INFO Server started up 2022-01-12 22:20:24 WARNING 404 error: /inform may not be downloading everything right 2022-01-12 22:21:43 INFO Redirecting /js/showcase.js => /js/showcase-internal.js as using our internal showcase.js file 2022-01-12 22:21:44 WARNING 404 error: /favicon.ico may not be downloading everything right 2022-01-12 22:21:44 INFO Handling a post request on /api/mp/models/graph: graph of operationName: GetSnapshots we are handling internally 2022-01-12 22:21:45 WARNING 404 error: /api/v1/jsonstore/model/trims/ may not be downloading everything right 2022-01-12 22:21:45 INFO Handling a post request on /api/mp/models/graph: graph of operationName: GetHighlightReel we are handling internally 2022-01-12 22:21:46 INFO Handling a post request on /api/mp/models/graph: graph of operationName: GetLabels we are handling internally 2022-01-12 22:21:46 INFO Handling a post request on /api/mp/models/graph: graph of operationName: GetMattertags we are handling internally 2022-01-12 22:21:46 INFO Handling a post request on /api/mp/models/graph: graph of operationName: GetMeasurements we are handling internally

simonjub commented 2 years ago

So I added f"api/v1/jsonstore/model/trims/{pageid}" to the assets array in the downloadInfo() function, that got rid of that 404 error, but still no luck on getting VR mode going.

mitchcapper commented 2 years ago

Yeah that trims error was the most suspect as I hadn't seen that request before. I was going to suggest exactly what you did but it sounds like it didn't fix it. Assuming no other 404 errors without a debugger attached not much more I can suggest. You can use fiddler or a similar proxy to compare the local requests with the official remote ones for other differences. I assume no messages like graph for operationName: {option_name} we don't know how to handle, but likely could add support, returning empty instead which would indicate it trying to get data for something we don't currently fetch.

simonjub commented 2 years ago

Yeah looks like that's what will need to be done. I'll have to learn how to do that. Python I can deal with but debugging web stuff isn't my field. I'll update this when I have some time to work at it. Thanks for the feedback!

simonjub commented 2 years ago

So I installed fiddler, but I'm having trouble getting the Oculus Quest browser to go through the fiddler proxy for web browsing. I see no way to configure an http proxy on that device. I understand this is not a matterport-dl issue, I just stopped here to say I'm still trying to get more information to figure out what's missing get local VR going. Sadly, no luck so far.

mitchcapper commented 2 years ago

I have never tried them but I am not sure if this about a similar product would apply: https://forums.oculusvr.com/t5/Oculus-Go-Development/Proxy-Settings-for-Wifi-Networks-on-Oculus-Go/td-p/678805 if not you can use most windows laptops as an AP you could connect it to and then as it is just HTTP traffic wireshark or similar to sniff:)

aekramer commented 2 years ago

So I installed fiddler, but I'm having trouble getting the Oculus Quest browser to go through the fiddler proxy for web browsing. I see no way to configure an http proxy on that device. I understand this is not a matterport-dl issue, I just stopped here to say I'm still trying to get more information to figure out what's missing get local VR going. Sadly, no luck so far.

Every progressed beyond this point?

I own a VR headset myself and have some python experience, however not too much experience with VR browser applications.

I do believe though the web page itself needs to implement some kind of webGL option to enable vr in the first place, like other webvr applications it should trigger you with a popup whether you would allow this website to use your VR device or not (this should be a good hint to get us going in what tools/programs will be needed on the website side of things to start)

mitchcapper commented 4 months ago

I still do not have a VR headset but I believe I may have enabled all the VR files to download. You can test master and see if it is resolved. If not the run /serve logs may provide enough info for me to fix w/o actually being able to test:)