RenderHeads / UnityPlugin-AVProVideo

AVPro Video is a multi-platform Unity plugin for advanced video playback
https://www.renderheads.com/products/avpro-video/
236 stars 28 forks source link

Is it possible to get some more detailed error reporting from the Android player? #427

Closed owenhindley closed 4 years ago

owenhindley commented 4 years ago

We're working on a project for Oculus Quest, and we're using AVProVideo to play a live MPEG-DASH stream from an external server. In a blank Unity project, we're able to play a stream correctly, both in editor and on device. However when we try and integrate this exact same code (and plugin) with our existing project, it still plays correctly in editor, but on device we see the Error: Loading failed. File not found, codec not supported, video resolution too high or insufficient system resources. message.

So it would appear one of our libraries (we're using quite a few) is conflicting with the player and preventing it from starting up correctly. I've checked the Unity project settings as much as possible and they seem to be identical. I'm also verifying that the device can access the internet from within Unity.

Is it possible to get some more error information out of ExoPlayer behind the scenes to try and get a better idea of what's going wrong?

Thanks!

AndrewRH commented 4 years ago

Yes you should be able to check the android logs via 'adb log cat' those will be very detailed and should point to the cause of the error. Feel free to post the full logs here if it's unclear what's happening.

Thanks,

owenhindley commented 4 years ago

Thanks! We managed to temporarily solve this by removing almost all of the OVR Integration - I believe that also includes ExoPlayer as part of their Native Video Player functionality, which might have been conflicting with AVProVideo. If we find out more, we'll post it here!

Ste-RH commented 4 years ago

Yes, OVR uses ExoPlayer as well, so there is a package clash. If you require OVR alongside AVPro Video then you can remove the AVPro ExoPlayer library files from the Plugins folder and select to use the MediaPlayer API path in the AVPro Video MediaPlayer component.

We believe we have found a solution for mixed ExoPlayer versions in AVPro Video v2. We would welcome feedback if you are able to download the latest public beta of version 2 and run some tests. Do please note that the beta version is watermarked.

owenhindley commented 4 years ago

Okay, I'll give that a go - out of interest (and as this is a new question, maybe I should create a new issue thread), do you have plans to implement raw audio buffer access on Android, as on other platforms in the near future? Looking into the ExoPlayer code, it should be possible using a TeeAudioProcessor... :)

Ste-RH commented 4 years ago

Audio buffer pass through to the Unity audio callback is on the roadmap and we are actively looking at including this feature in version 2 at some stage.