EasyAR 3.0 black screen on Android (still happens!)

+5 votes
asked Jul 9 by ngc6543 (1,650 points)
edited Jul 9 by ngc6543
Hi, I downloaded the EasyAR 3.0 for Unity and tried it on my target device using the example(HelloAR_ImageTarget / HelloAR_ExternalCamera) in it.

But it doesn't render anything on Android. I tried both Basic and External Camera packages, and both had the same problem.

My target devices are :

1. Odroid XU-4 by Hard Kernel with custom Android OS (Lineage OS, which is equivalent of Android 7.0 Nougat)

2. Shield TV by Nvidia with Android OS 8.0 Oreo

Both device doesn't render camera background images. Odroid also didn't recognize the marker, but Shield TV do recognize it.

Shield TV used to have no problem with EasyAR 2.3, so this is disappointing to see the current status of EasyAR 3.0.

I'm going to implement external camera on my own (if it ever going to work) but the lack of documentation or comments inside scripts makes it really hard to understand how this thing work.

3 Answers

0 votes
answered Jul 9 by ngc6543 (1,650 points)

Hey,

I've changed the Graphics API to OpenGLES2.0 only, and the Shield TV renders video background as expected.

But in this release note, it says that

+ non-OpenGLES2 rendering API support (rendering API neutral except for VideoPlayer and Recorder)

 So I've expected it to work no matter what Graphics API my project is using.

0 votes
answered Jul 9 by juvelez (780 points)
It doesn't work on Motorola G6/G6Plus/One with last Android, nor on ASUS 7" Tablet with 4.4 Kitkat, 2.3 work fine on all of these devices, the only thing I needed was x64 Androids Support, pretty sad... because we must move to an alternative, pretty sad, because 2.3 worked really fine, but it is unusable right now.

Is not working on Windows too, web cams are not recognized, they even doesn't turn on, and black screens is the only view.

PD: the message at the beginning with the EasyAR version is mandatory, it breaks all the UX design
+1 vote
answered Jul 9 by zhnagjian (10,380 points)

Hello,

I have tested the sample of HelloAR-ImageTaget and it render ok on Android. You should fill in the key of 3.0  and the image target is namecard in StreamingAssets. I want to get the result from you test @ngc6543

commented Jul 9 by ngc6543 (1,650 points)
Hey, I did fill the key string into the 'EasyARKey' ScriptableObject.

 I was able to run the sample on my custom Odroid device with following steps as a workaround :

1. I've made another script that creates and starts a webcam texture on start.

 On the device, when the app starts the webcam was properly started and EasyAR began  getting the feed from the camera. And it also could detect the marker properly. My device (Odroid) doesn't have a built-in camera so at first I thought your 'External Camera' package should work, but unfortunately it didn't.

 Also, by applying my workaround, the built app runs ok with the 'Multithreaded Rendering' option enabled (The documentation here(https://easyar.com/doc/EasyAR%20SDK/Getting%20Started/3.0/Setting-up-EasyAR-Unity-Package.html) says that the option should be disabled for Android) ).


 So for conclusion,
it looks like there are some issues regarding connecting cameras inside EasyAR.
commented Jul 9 by ngc6543 (1,650 points)
Also, I'd like to add some feedback for the 3.0 release.
I'll summarize and post it on another post.
Welcome to EasyAR SDK Q&A, where you can ask questions and receive answers from other members of the community.
...