Forum Discussion
douglasgimli
10 years agoHonored Guest
360 Spherical Video Playback
Hey guys,
so I dealing the past few days with a new challenge, that is playback a 360 spherical 4k video into Unity to Oculus, here is what I already have tryied, and the results:
General: All tests was made with a sphere with reverve normals into it. The tests was made on a PC with 32GB RAM and with a NVIDIA Geforce GTX 970
Scenario 1:
Imported the video (3840x2160) into Unity and add it as MovieTexture on the sphere. It results on a very low texture quality and very low FPS on Oculus (~10fps). So I converted the video first with FFMPEG2THEORA to OGV file, and it results with a high quality into UNITY but the FPS are still low.
Scenario 2:
Imported the video as PNG Sequence into UNITY (3840x2160) and tryied to change the sphere material to the images in real time with script (Resources.Load), tryied in diferente ways, Unload the last used texture, loading the texture not in the update cycles but only when it reach 24 FPS count, ...
But again, FPS is very low (the same or closer as early ~10fps)
Scenario 3:
I tryied to resize it to 2048x... and made the last two tests again, it a increase in FPS (~15-20fps) but not good enough, and the quality is not perfect anymore.
So my ways in Unity kind of ended, I dont know what to do anymore. Anyone have made something similar in UNITY that can give me some advices?
Thanks a lot, and sorry my terrible english writing skills.
so I dealing the past few days with a new challenge, that is playback a 360 spherical 4k video into Unity to Oculus, here is what I already have tryied, and the results:
General: All tests was made with a sphere with reverve normals into it. The tests was made on a PC with 32GB RAM and with a NVIDIA Geforce GTX 970
Scenario 1:
Imported the video (3840x2160) into Unity and add it as MovieTexture on the sphere. It results on a very low texture quality and very low FPS on Oculus (~10fps). So I converted the video first with FFMPEG2THEORA to OGV file, and it results with a high quality into UNITY but the FPS are still low.
Scenario 2:
Imported the video as PNG Sequence into UNITY (3840x2160) and tryied to change the sphere material to the images in real time with script (Resources.Load), tryied in diferente ways, Unload the last used texture, loading the texture not in the update cycles but only when it reach 24 FPS count, ...
But again, FPS is very low (the same or closer as early ~10fps)
Scenario 3:
I tryied to resize it to 2048x... and made the last two tests again, it a increase in FPS (~15-20fps) but not good enough, and the quality is not perfect anymore.
So my ways in Unity kind of ended, I dont know what to do anymore. Anyone have made something similar in UNITY that can give me some advices?
Thanks a lot, and sorry my terrible english writing skills.
11 Replies
Replies have been turned off for this discussion
- JKeaneHonored GuestHi,
Last time I needed to get video that quality at a nice framerate, I used the following plugin:
https://www.assetstore.unity3d.com/en/#!/content/2546
It's windows only (They have a quicktime version if you want mac support), but it worked great for high quality video playback. Price is pretty high though, depends on your use case if it's worth it. There is a watermarked demo of it though if you want to try it out on their site
Hope that helps - douglasgimliHonored Guest
"JKeane" wrote:
Hi,
Last time I needed to get video that quality at a nice framerate, I used the following plugin:
https://www.assetstore.unity3d.com/en/#!/content/2546
It's windows only (They have a quicktime version if you want mac support), but it worked great for high quality video playback. Price is pretty high though, depends on your use case if it's worth it. There is a watermarked demo of it though if you want to try it out on their site
Hope that helps
Thanks for your help! But unfortunately I get no lucky with this solution too. Is a pretty awesome plugin, and works at full FPS on a 2k video, but when I change to my full resolution video it returns to 1FPS :/
I will try using the quicktime version and HAP Codec, I read some stuff on the internet that this can help. - philedayMHCP MemberI use the AVpro Windows plugin for my player Whirlgig and have had 4k videos playing back fine. However I have recently had a couple of reports of really low frame rates when updating to the 0.7 Runtime so maybe the low frame rates for higher res videos are related to that.
I haven't found yet another plugin that does a better job at playback than the AVpro one. It is heavily reliant on video compression options for good playback though so try a few different codecs and see if that helps. - McGeekHonored GuestI'm trying to do the same thing. But, I found that AVPRo seems to only work with Unity 5 32-bit according to the documentation. So, I downloaded the 32 bit version of Unity 5 and imported AVPro into my project. Then, my Oculus Rift stopped working. I confirmed that the old 64-bit version of my application still works. So, I know it's not a hardware issue. Is there anything special that you have to do to get an Oculus project to work in the 32-bit version of Unity?
Thanks! - cyberealityGrand ChampionThe Oculus Runtime is 64-bits only, but I thought 32-bit clients would still work. It may be the case that the Unity plugins also made the switch to 64-bit, but I can double-check that.
- philedayMHCP MemberMy player uses the AVpro Windows and is currently being built using 5.1.1p3 version of Unity with native VR support and I'm exporting both 32 and 64 bit versions out without a problem. Feel free to check my player whirligig.xyz to test playback speeds etc of videos if you're interested.
I don't think I did anything special to get it working. I did have to convert my player from Unity 4 to 5 but once I did that and got it working with the first version of Unity 5 I haven't needed to change anything regarding the AVpro plugin in each update of the Unity versions. - vrdavebOculus Staff
"McGeek" wrote:
I downloaded the 32 bit version of Unity 5 and imported AVPro into my project. Then, my Oculus Rift stopped working.
32-bit builds are still supported on PC. Can you send output_log.txt from a 32-bit run when the app did not work properly? Does the issue still occur with Unity 5.1.2f1? - gautamb0Honored Guest
"phileday" wrote:
My player uses the AVpro Windows and is currently being built using 5.1.1p3 version of Unity with native VR support and I'm exporting both 32 and 64 bit versions out without a problem. Feel free to check my player whirligig.xyz to test playback speeds etc of videos if you're interested.
I don't think I did anything special to get it working. I did have to convert my player from Unity 4 to 5 but once I did that and got it working with the first version of Unity 5 I haven't needed to change anything regarding the AVpro plugin in each update of the Unity versions.
Would you be able to provide any more specifics? I'm getting good framerate with AVpro, but it seems like it won't map the video to the entire sphere. The top and bottom few degrees remain black, and the bottom of the video is heavily warped. I'm using the MappedMovie shader that came with the demo. Thanks in advance! - philedayMHCP MemberI use theAV pro material Apply to map the video to the object. Here is a scene with mapping of stills https://www.dropbox.com/s/vdijnoj65rlwb ... r.zip?dl=0 (not using the plugin). So in this example you would add you AV media manager, AV media movie and material apply, then add the material to that.
That's what works me. Hope it helps. - gautamb0Honored GuestThanks so much! It helped me uncover the fact that I was using a normal diffuse shader rather than a self-illuminated one and having lighting problems.
Quick Links
- Horizon Developer Support
- Quest User Forums
- Troubleshooting Forum for problems with a game or app
- Quest Support for problems with your device
Other Meta Support
Related Content
- 4 years agoAnonymous
- 11 years ago