I am running Unity 5.6 beta on Mac and the GVRVideoPlayer package has been imported. I have built the VideoDemo sample scene for Cardboard on Android. According to the documentation:
"It works as either a Daydream or Cardboard application, depending on the Virtual Reality SDK selected under Player Settings."
Ref: https://developers.google.com/vr/unity/demos#gvrdemo
However, I get the following message in the built app on the phone:
Video support libraries not found or could not be loaded. Please add the GVRVideoPlayer.unitypackage to this project.
I primarily deployed to a Samsung S7 and also tried a Sony Xperia Z3 Compact.
Contents of Assets/Plugins/Android:
.
βββ AndroidManifest-Cardboard.xml
βββ AndroidManifest-Cardboard.xml.meta
βββ AndroidManifest-Daydream.xml
βββ AndroidManifest-Daydream.xml.meta
βββ exoplayer-r1.5.11.aar
βββ exoplayer-r1.5.11.aar.meta
βββ gvr-exoplayersupport-release.aar
βββ gvr-exoplayersupport-release.aar.meta
βββ gvr-permissionsupport-release.aar
βββ gvr-permissionsupport-release.aar.meta
βββ libs
βΒ Β βββ armeabi-v7a
βΒ Β βΒ Β βββ libaudioplugingvrunity.so
βΒ Β βΒ Β βββ libaudioplugingvrunity.so.meta
βΒ Β βΒ Β βββ libgvrvideo.so
βΒ Β βΒ Β βββ libgvrvideo.so.meta
βΒ Β βββ armeabi-v7a.meta
βΒ Β βββ x86
βΒ Β βΒ Β βββ libaudioplugingvrunity.so
βΒ Β βΒ Β βββ libaudioplugingvrunity.so.meta
βΒ Β βΒ Β βββ libgvrvideo.so
βΒ Β βΒ Β βββ libgvrvideo.so.meta
βΒ Β βββ x86.meta
βββ libs.meta
βββ proguard-gvr.txt
βββ proguard-gvr.txt.meta
Running the build on a device, logcat outputs the following:
02-15 10:57:33.804 17767 17782 D Unity : Unable to load library '/data/app/***.****.gvr-1/lib/arm/libgvrvideo.so', native render plugin support disabled: java.lang.UnsatisfiedLinkError: dlopen failed: cannot locate symbol "__aeabi_atexit" referenced by "/data/app/***.****.gvr-1/lib/arm/libgvrvideo.so"...
02-15 10:57:33.814 17767 17782 E Unity : Unable to find gvrvideo
02-15 10:57:33.834 17767 17782 E Unity : System.DllNotFoundException: gvrvideo
02-15 10:57:33.834 17767 17782 E Unity : at (wrapper managed-to-native) GvrVideoPlayerTexture:CreateVideoPlayer ()
02-15 10:57:33.834 17767 17782 E Unity : at SwitchVideos.Awake () [0x00050] in /Users/user/Workspace/GoogleVR 3/Assets/GoogleVR/Demos/Scripts/VideoDemo/SwitchVideos.cs:39
02-15 10:57:33.914 17767 17782 E Unity : Error obtaining VrCore client API version: UnityEngine.AndroidJavaException: com.google.vr.vrcore.base.api.VrCoreNotAvailableException: VR Service missing
02-15 10:57:33.914 17767 17782 E Unity : com.google.vr.vrcore.base.api.VrCoreNotAvailableException: VR Service missing
02-15 10:57:33.914 17767 17782 E Unity : at com.google.vr.vrcore.base.api.VrCoreUtils.getVrCoreClientApiVersion(SourceFile:131)
02-15 10:57:33.914 17767 17782 E Unity : at com.unity3d.player.UnityPlayer.nativeRender(Native Method)
02-15 10:57:33.914 17767 17782 E Unity : at com.unity3d.player.UnityPlayer.a(Unknown Source)
02-15 10:57:33.914 17767 17782 E Unity : at com.unity3d.player.UnityPlayer$c$1.handleMessage(Unknown Source)
02-15 10:57:33.914 17767 17782 E Unity : at android.os.Handler.dispatchMessage(Handler.java:98)
02-15 10:57:33.914 17767 17782 E Unity : at android.os.Looper.loop(Looper.java:158)
02-15 10:57:33.914 17767 17782 E Unity : at com.unity3d.player.UnityPlayer$c.run(Unknown Source)
02-15 10:57:33.914 17767 17782 E Unity : at UnityEngine.AndroidJNISafe.CheckException () [0x0008c] in /Users/builduser/buildslave/unity/build/Runtime/Export/AndroidJNISafe.cs:25
02-15 10:57:33.914 17767 17782 E Unity : at UnityEngine.AndroidJNISafe.CallStaticIntMethod (IntPtr clazz, IntPtr methodID, UnityEngine.jvalue[] args) [0x00011] in /Users/builduser/buildslave/unity/build/Runtime/Export/AndroidJNISafe.cs:256
02-15 10:57:33.914 17767 17782 E Unity : at UnityEngine.A
02-15 10:57:33.914 17767 17782 I Unity : GVR API successfully initialized. Now resuming it.
02-15 10:57:33.924 4827 4840 W ActivityManager: Unable to start service Intent { act=com.google.vr.vrcore.controller.BIND pkg=com.google.vr.vrcore VirtualScreenParam=Params{mDisplayId=-1, null, mFlags=0x00000000)} } U=0: not found
02-15 10:57:33.924 17767 17767 W ServiceBridge: Bind failed. Service is not available.
libgvrvideo.so can only be correctly loaded above api24! hope to be fixed.
Not sure if the issue is because the plugin begins with lib or ends with *.so. The unity documentation says:
Please note that PluginName should not include the prefix (βlibβ) nor the extension (β.soβ) of the filename.
@reubenkcoutinho - That refers to this line:
"[DllImport ("PluginName")]"
you just put the name like "gvrvideo" instead of "libgvrvideo.so"
I can repro this issue as well. @perqa - what device are you using to deploy?
Did you set targetSdkVersion to 24? That should still deploy on devices with API level < 24.
@AayushU: Primarily a Samsung S7 (Android 7) but also a Sony Xperia Z3 Compact (Android 6.0.1).
So if the issue you're having is the same as what mine was -- you literally just need to import GVRVideoPlayer.unitypackage. Basically, GoogleVRForUnity.unitypackage contains the GVRVideoPlayer.unitypackage but it does nothing after its imported. You need to specifically import it as its own custom package. It will be under Assets/GoogleVR/GVRVideoPlayer
@brianytang:
I did import GVRVideoPlayer.unitypackage before filing this issue, but still the same problem. Also re-imported a few times, but no difference.
Can u check AndroidManifest.xml and AndroidManifest-Cardboard.xml under (ProjectNameAssetsPluginsAndroid) and make sure the android:targetSdkVersion is 24
I have tried the VideoDemo Scene and It does not throw any of the above error and instead it gives this error:
UnassignedReferenceException: The variable touchPoint of GvrControllerVisual has not been assigned.
You probably need to assign the touchPoint variable of the GvrControllerVisual script in the inspector.
UnityEngine.GameObject.GetComponent[Renderer] () (at C:/buildslave/unity/build/artifacts/generated/common/runtime/GameObjectBindings.gen.cs:38)
GvrControllerVisual.Awake () (at Assets/GoogleVR/Scripts/Controller/GvrControllerVisual.cs:50)
In the player setting, I choose to build for "CardBoard"
Hi @devesh2605 ,
Can you list you what steps you took along with the unity and GVR SDK version
Hi @reubenkcoutinho ,
For this development, I am using the latest Version of GVR SDK and Unity 5.6.0b9.
If u need any help then please let me know I will share my code over Github. But first, the video demo should work.
Thanks,
Devesh V
@devesh2605
I followed your steps and I get the following message in the built app on the phone:
Video support libraries not found or could not be loaded. Please add the GVRVideoPlayer.unitypackage to this project.
Nothin seems to works though
I'm tried it on a Android 6.0.1 device
@reubenkcoutinho This is strange one of my colleague also tried the same step and he is also getting the same error as you are getting. I guess the SDK is not stable. I will share the screen shots on a dropbox link that you can follow and then let me know if it works or not?
Thanks,
Devesh V
@reubenkcoutinho Hi,
Check this link, I have taken the screenshots of each and every step,
https://www.dropbox.com/sh/znwad4emj1q7o52/AADuBRpiZ1f-RAFcFiIbHNG3a?dl=0
Please follow them, I am also working on to get this issue fixed if this works for me then I will share the project and APK.
Thanks,
Devesh V
@perqa This is strange that no one from Google is looking into this issue.
There is a known issue where the libgvrvideo.so only loads on devices that support API 24 (Android 7.0) and later. It has been resolved to support back to API 19 (4.4 / KitKat) and will be available in the next release of the GVR Unity SDK.
@perqa I recently got an OS update for Samsung S7 to Android version 24. I can verify it now runs and I can watch the video. The issue that now shows is that it asks me to load Google VR for Daydream from the play store.
@reubenkcoutinho This may be because you are building for Day Dream. You should build for Cardboard and in order to make it work for Cardboard, you will have to change the scripts.
Thanks,
Devesh V
@devesh2605 I tried setting VR support for Cardboard. Is there any other scripts you are talking about?
@devesh2605 Did you find a way around this?
@simnys Hi there,
I am waiting for the next update from Google. Right now I am using Easy Movie Textures and it supports all the need except it doesn't support Fragmented MP4 (FMP4), apart from that it plays everything (local or streaming). If you need any help in that let me know I will share the project. EasyMovieTextures is paid but I have a test copy of that also.
Regards,
Devesh Vyas
@reubenkcoutinho
Hey Sorry for the late reply. You need to make changes in "GvrVideoPlayerTexture.cs".
I came up with a 360 video player using EasyMovieTextures, I can share the project if you want.
Regards,
Devesh V
@devesh2605 Hey, thanks for the reply, how did you go about getting a test copy of EasyMovieTextures?
@simnys Hey, I got through some connections man.
Regards,
Devesh V
Cgpeers/cgpersia
On Mar 8, 2017 7:43 AM, "Devesh Vyas" notifications@github.com wrote:
@simnys https://github.com/simnys Hey, I got through some connections
man.Regards,
Devesh Vβ
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/googlevr/gvr-unity-sdk/issues/467#issuecomment-285059079,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AL8H8fJkg4AUFf-WyCliVf1Aqjcnk3-sks5rjr6rgaJpZM4MA__B
.
@devesh2605 am i right in thinking you got streaming of video texture to work with easy movie texture would love to know how you did that I tried but it kept failing
I too can't get this demo, of google video on ios cardboard to run have the same error.
@MrPatrickHenry Hey Patrick, I am able to build the streaming video apps using Easy Movie Textures and Google VR SDK. I have both the projects, I will share the GitHub repo, with you.
Regards,
Devesh V
Easy Movie Texture is a paid asset and not free to share on Github. I'll definitely inform the developer.
https://www.assetstore.unity3d.com/en/#!/content/10032
@Selzier I really did not know about this. Will take care of this.
thanks @devesh2605 dont' worry I have paid for Easy Movie Texture :)
I figured out via the easy movie texture i can put urls in to the move location
This needs to be reopened. I am still seeing this issue with the latest release: GVR SDK for Unity v1.190.1
Did you install the additional package in Assets/GoogleVR/GVRVideoPlayer ?
Most helpful comment
So if the issue you're having is the same as what mine was -- you literally just need to import GVRVideoPlayer.unitypackage. Basically, GoogleVRForUnity.unitypackage contains the GVRVideoPlayer.unitypackage but it does nothing after its imported. You need to specifically import it as its own custom package. It will be under Assets/GoogleVR/GVRVideoPlayer