I am developing android application. To run my application I created emulator with the following configuration settings(I want to set webcam as front camera).
Configures Camera facing front : webcam0,
Device Ram Size: 512,
...
...
But when I checked if front camera available,
PackageManager pm = getPackageManager();
frontCam = pm.hasSystemFeature("android.hardware.camera.front");
rearCam = pm.hasSystemFeature(PackageManager.FEATURE_CAMERA);
I am getting frontCam value as false and rearCam value as true.
AVD screenshot is given below. How can I use webcam as front camera?
have you Configured your AVD to Configures Camera Facing Front
if not then Edit your AVD OR Create new
Add Configures Camera Facing Front
Set your Desired option
And Run your project.
Hope this Helps.
Happy coding. Thanks.
Related
I'm on a project using Unity 2019 LTS and some unity SDK / package:
Mapbox SDK
DreamWorld SDK (the SDK of my AR headset)
some other default AR packages (Foundation, Subsystem)
I would like to reused the Mapbox World-scale AR example in order to implement the possibility to move the scene according my AR headset position.
To do so, I removed the default main camera of the example (in AR Root) and added instead a the camera for my headset, as explained in the headset's docs (DW Developer Kit SDK).
Here are some pictures of what I've done:
No here's my problem: when I run the project in the editor with the player mode, all works perfectly fine and I see the camera rotation following the position of my AR headset.
Therefore, if I try to build the project, I cannot the see the "view" of the camera. I know that the project run because I still can see the overlay menu provides by the Mapbox World-scale example but not my camera.
Editor :
Build :
I searched online to find some solution to my issue but I only found some answer about building to Android and iPhone while I trying to build on my laptop.
The fact I see a black screen (and the overlay) seems to me that Unity cannot find a camera to show me the scene.
I just started using Unity, so it is possible that I missed an obvious thing but I don't know what.
If someone as any idea of what my problem is...
In case the suggestion from the comments with the In-Game logs does not work, you can check the external log file.
According to https://docs.unity3d.com/Manual/LogFiles.html
it is found under "C:\Users\YOUR_USERNAME\AppData\LocalLow\CompanyName\ProductName\Player.log"
CompanyName and ProductName are two names you can project somewhere in the unity project settings but there are default values.
I've built the app and compiled it with VR enabled and cardboard selected as my VR device. I can install and run it on my phone (Samsung S8) BUT the in game camera is stuck in portrait mode and the yew is inverted (turning my head left turns the camera right). I have scoured the internet but still can't find a way to fix this.
I've enabled VR in playersettings and added google cardboard as my VR.
I've also disabled portrait views under orientation.
I've set the camera as both a child and parent object.
I've built the app with both cardboard and daydream selected as the VR (and each individually) but still the same issue.
I've tried forcing different higher levels of API requirement
I have added and removed GvrEditorEmulator from the project and the GvrControllerMain and no luck.
I've even flipped the camera manually by a 180 degrees and this made the view be in landscape but in this case the pitch was inverted (when I look up the camera looks down) and I haven't found a way to resolve this.
In the editor view the screen looks fine, but every time I run it on my Android phone it force starts in portrait mode and the pitch or yew is inverted.
Is there a hidden option I need to switch, does anybody have more suggestions that I could try?
You can see what the app looks like when I hold the phone i portrait mode on the link bellow (the image breaks when I try to add it to the post for some reason).
https://imgur.com/a/o80NRe4
Its worth mentioning that I'm working with Unity version 2019 2.0b2 because any other version I tried would not detect my installed Android SDK and would not let me build the project. I've tried on multiple machines and always had that problem so I'm afraid of attempting an upgrade to a newer version would break my build ability.
This seems to be a known and reported issue for Google VR SDK for unity. Its been reported on their github page.
The only possible fix is reverting back to Unity 2018.3.14f1. I did this by exporting my v2019 project, then creating a new 2018.3.14f1 version project and importing the original into it. This rebuilds the project and should avoid conflicts if you're lucky.
I want to use the camera in one of my projects. So I'm using the camera of my emulator device but the problem is when the camera is on its show's some weird animation i.e a box is moving all over the screen. What is the solution for this?
Thanks
This is not a problem. This is the default behavior of the Emulator's Camera.
I suggest using any real device to achieve this since there is no way to "simulate camera in the Android emulator using the webcam" except by extensively modifying the Android firmware.
Source
Yes, Emulator camera cannot be used if there is no access to webcam. I have downloaded GenyMotion emulator which solved my problem.
Thank you for your support.
I'd say the value I have to change is the stereoMultiplier of the StereoController script attached to the main camera. Anyway I think I have changed every single value of GvrViewer, MainCamera and StereoController. Nothing seems to change the separation of the left and right cameras when compiled to the Android smartphone.
I can see a correct separation in the Unity Game View, but when I compile it to the smartphone, the cameras are too separated (see image below).
I think this issue has happened after updating the Smartphone to Android 6.0 Marshmallow (CyanogenMod 13.0), on Samsung S4.
UPDATE: I have updated to GoogleVR 1.0.1. The same problem is still happening.
Changing scale to 0.007 (which is a very similar scale to the objects in the provided demo scene of GoogleVR: 0.003) seems to fix the problem.
Note: discussed here: https://github.com/googlevr/gvr-unity-sdk/issues/351
UPDATE: in the previous link, somebody wrote:
Android app:
/sdcard/Cardboard/current_device_params
all gvr(cardboard) app will use this file --- "current_device_params".
maybe you should go the url to setup your device profile https://vr.google.com/cardboard/viewerprofilegenerator/
in addiation, you can also do this:
How to change Field of View in Google VR SDK for Unity
I'm using HTC sensation for testing.
the version of Android is 2.3.4.
and there are two cameras on this device.
I could open camera separated (do preview NOT at same time).
BUT, once, if I try to open camera at same time.
I'll got a RuntimeException - Fail to connect to camera service for front-facing camera.
does anyone have idea ??
According to Android Camera Api,
Your application should only have one Camera object active at a time
for a particular hardware camera.
So I guess it should not be possible.