We are seeing this same issue at our studio. It’s consistent across multiple machines. Unreal v4.11. The Oculus plugin is enabled, the Oculus Audio DLL is loaded by LoadLibrary without error, and the call to ovrAudio_Initialize() reports error 2000 (ovrError_AudioUnknown).
Stepping through the disassembly of ovrAudio_Initialize(), the test of the call to oa_ReleaseAmbisonicStream() appears to be the failure case, immediately prior to the call to oa_ProcessAmbisonicStreamInterle().
I just sent this info to one of the Oculus programmers who wrote the SDK who responded with:
the issue there was a version of the
link.lib went out with the wrong
symbol name and would return that
error because it couldn’t find the
function in the main DLL. By the time
it fails and returns that error all
the important parts are initialized so
it’s non-fatal (assuming you’re not
using Ambisonics). Updating to a newer
version should resolve this, going
through perforce the fix went in on
1/26 so anything newer should be
solid.
I’ll see if I can get an updated version of our SDK into an upcoming release. It should be straightforward to DL a new Oculus sdk/DLL and use that with UE4.
Hi Pete, unfortunately Oculus doesn’t give access to their Audio SDK directly, though one of their programmers just sent me a link to DL the updated version.
We build engine from source, which means we run setup.bat to download binary content, including (I believe) ovraudio64.dll and ovraudio.link64.lib, Are you updating those files on your end so all we need to do is re-run setup.bat? It’s unlikely that we’ll move to 4.12 for our current project.
So you won’t get updated versions of those files unless we push a 4.11.3 (not sure if we are going to yet) or if you wait till 4.12. So, if you want it now gauranteed for 4.11, you’ll have to integrate the audio sdk yourself (i haven’t done it yet myself so am not sure if you’ll have to update any api calls with the new header, etc).
It is great to hear that I’m not the only one that run into trouble with this. Good work on narrowing it down, Pete.
@MinusKevin: Please push for a 4.11.3 that includes the updated Oculus Audio plug-in. That will make 4.11 the most complete VR release to date. Having working audio completes the whole package. Thanks!
The new header that Oculus provided in your 1.0.2 link above has no function signature changes. In theory, Oculus could just provide you a new lib/dll and everybody who ran setup.bat again would be fine. We are going to move forward with implementing the simplest workaround, option 1 as described above.
So, it’s not up to me whether or not there is a 4.11.3. Also, I think this might not be allowed to be made in 4.11.3 now that I think about it – we’re not allowed to modify headers. This would constitute updating the oculus header.
To be clear – the audio sdk does work, but it apparently doesn’t on some machines. Not clear to me what the difference is. We’ve never had any issues internally here at Epic.
It would be a shame if this fix cannot be applied. While this issue may not be occurring on all developers’ machines, the fact that it is happening on some machines means it could also impact those customers of UE4 4.11 games. Any developer using the Oculus Audio plug-in should therefore apply this fix just in case their own players/customers run into this strange problem.
Ah, good then – I assumed at least their version # would change in the header. I haven’t looked at it yet (haven’t had a chance to integrate/test it yet)
Did you got an solution for the error? My package will crash if i have the Oculus Audio plugin turned on. Only without using that plugin i can build my project.
The issue was in the Oculus Audio SDK itself in the Oculus plugin, which requires an updated version of the plugin. An update version will be made available in 4.12.
Hey man, I haven’t gotten to doing this yet, will do it now. If you want to quickly swap out with an updated SDK to confirm it fixes your ■■■■, here’s a DL link for the new oculus audio SDK: Meta Quest VR Headsets, Accessories & Equipment | Meta Quest
Did the update and checked into our 4.12 releases branch, not sure how it works to getting out in previews, will ask. That link should work to download. To do the upgrade locally, just copy the ovraudio64.dll, OVR_Audio.h, and ovraudio.link64.lib in that zip file over the ones in the UE4 source code and rebuild the Oculus Plugin, then it should be working with new version.