Skip to content
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

Camera rotated 90 degrees on Android #93

Open
jgwinner opened this issue Mar 27, 2018 · 11 comments
Open

Camera rotated 90 degrees on Android #93

jgwinner opened this issue Mar 27, 2018 · 11 comments

Comments

@jgwinner
Copy link

Hello:

Nice toolkit!

I tried the samples with a Samsung S8+, with both the Opera and Chrome browsers.

With every sample that used the camera, it was rotated 90 degrees. This was true if I had the camera in landscape or portrait modes. (I thought at first 'ah ha! I need to rotate the phone' and it 'switched' and gave it to me rotated again!).

Samples that used pano's for a background instead of the real time camera view worked fine.

== John ==

@blairmacintyre
Copy link
Contributor

Unfortunately, we didn't get the WebRTC backend for argon.js completely working on my recent versions of Android (an update mid-year last year broke the video orientation). Since nobody was actually using it, it was never fixed (we've been using Argon4 on Android).

If you can figure out how to get it fixed, we'd be happy to accept a PR.

@jgwinner
Copy link
Author

Ok - I downloaded Argon.js and those demos worked fine. I was trying to build a separate download, but hey, if it works, maybe I just have people use that. However, the venu I'm using this in has bad cell connectivity, so I was trying to build a Unity app.

Not sure I know enough to fix it, but I can try to take a look, but only if it's use to others besides myself.

I'm a little intrigued by the "since nobody was actually using it". What ARE people using?

== John ==

@speigg
Copy link
Contributor

speigg commented Mar 31, 2018

@jgwinner argon.js is primarily designed to work with the Argon browser (which exposes advanced computer vision functionality). However, we are in the process of transitioning away from our own custom api towards the use of the WebXR standard (which is still in development). So argon.js may likely be deprecated soon. The next version of the Argon Browser will support the WebXR apis.

@jgwinner
Copy link
Author

Makes sense!

@evaristoc
Copy link

evaristoc commented Jan 16, 2019

Having same problem as @jgwinner.

we are in the process of transitioning away from our own custom api towards the use of the WebXR standard (which is still in development). So argon.js may likely be deprecated soon. The next version of the Argon Browser will support the WebXR apis.

Thanks for the clarification, @speigg. It is a pitty the *.js is to be deprecated that soon though. In my opinion without a transition period the framework might face some adoption resistance from ordinary/amateur developers and even from the general mobile phone user if having to download a dedicated browser as a requirement.

I would like to advocate for more AR between JavaScript (web) developers and I think having a workable framework could help people to get interested.

Unfortunately, we didn't get the WebRTC backend for argon.js completely working on my recent versions of Android (an update mid-year last year broke the video orientation). Since nobody was actually using it, it was never fixed (we've been using Argon4 on Android).

Is there a way to fix this bug? I am not a pro developer but maybe I can help with a fix?

@evaristoc
Copy link

I guess this is the pull that broke the screen orientation?
#85

@evaristoc
Copy link

evaristoc commented Jan 16, 2019

A quick inspection brought me to this update:
d0fb261

where the video plane and camera/canvas Aspects are apparently adjusted. It looks like a candidate. Any suggestions?

@blairmacintyre
Copy link
Contributor

Unfortunately, we have nobody working on this right now (no skilled Android devs in the lab, no funding to hire any) so we can't look into it ...

@evaristoc
Copy link

Sorry to hear that, @blairmacintyre . I really like the initiative and hope you a LOT of success!

@blairmacintyre
Copy link
Contributor

Thanks. We've transitioned our focus to webxr, since it's going to be available in most places this year (I expect). While it will not necessarily support everything Argon does, it will be useful to work on pushing the WebXR community to support what we need. And, of course, we'll likely have a version of Argon that supports webxr with custom extensions for the things we care about, although I don't know what it will take to get an Android version out (Android programmers would be welcome!)

@evaristoc
Copy link

evaristoc commented Jan 16, 2019

@blairmacintyre by the way:

Following some "informed guesses" I found a possible hack for the topic of this issue in case you want to know. It is a common error what I think it happened: the coder confused a "=" for a "===".

In the argon.min.js, it is at:
"portrait"===this.orientation&&(n.rotation.z=1/2*Math.PI)

Apparently, it should be:
"portrait"===this.orientation&&(n.rotation.z===1/2*Math.PI)

The debugging was very partial: I am debugging going through the argon.min.js and committing to my gh-page - although I should have done it using Android Studio?

EDIT: the camera image is in the right position but NOT the coordinates. Sorry, ignore this one! Require in-field testing: apparently is ok??

========================

Thanks @blairmacintyre ! I am VERY new to this field, also consider myself still an amateur despite of the experience.

One of my purposes for this year is to write about this exciting topic and present demos with different projects while researching the area. Not that I am an influencer but I would like to advocate the use of AR within the JS community, focusing on JS/web based alternatives.

As a personal project, I would like to see if I can build a small AR outdoor exhibition - one reason I was so enthusiastic about argon.js.

I don't know much about WebXR but I see listed a couple of projects I have used to build demos! Thanks!

Not really verse in Android even though Google Suite is what interest me now - and Mozilla, of course!!!!. Unfortunately no Java; python and a bit of C++ perhaps? Still please keep it in the loop (testing?, another pair of eyes? some code when applicable?).

Anyway hope this helps!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

4 participants