XboxOne Microphone UE 4.16


(Vincent Studer) #1

Hi,

I have a problem with XboxOne’s microphones (with unreal engine 4.16, and the last commit “Update to support UE4.16” of https://github.com/fmod/ue4integration).

I get the driverInfo with:

system->getRecordDriverInfo(id, driverName, 255, &guid, &systemrate, &speakermode, &speakermodechannels, &state);

state is equal to FMOD_DRIVER_STATE_CONNECTED at the begening, but after the 1rst frame, state is 0, like if my microphone was disconnected. But it’s still plugged.

Do you have any idea?

Thanks!


(Daniel Zaidan) #2

Hi Vincent.
Did you managed to get the plugin working in the first place (maybe testing it in another platform first)?


(Vincent Studer) #3

Hi Daniel,

Yes, it works on PS4 and PC.


(Cameron Baron) #4

Have you followed the steps mentioned at the bottom of the deployment page:

To enable FMOD Studio the use of any microphone input, including Kinect, on the Xbox One. The Engine ini file specific for the platform, located in /Config/XboxOne/XboxOneEngine.ini, needs to have the following lines added:

[AppxManifest]
Package.Capabilities.mx:Capability[0].Name=kinectAudio
Package.Capabilities.mx:Capability[1].Name=kinectGamechat

(Vincent Studer) #5

Hello Cameron,

Our XboxOneEngine.ini file already contains these lines.


(Cameron Baron) #6

The only other issue I can think of is a mismatching XDK version. The latest libs we supply for Xbox One are built against XDK 160804 and depending on what UE4 stream you are working in it will be different.

We are working on having the libs for the updated sdk available in the next couple of weeks.


(Vincent Studer) #7

Hi,

Now I have the last version of FMOD and use the XDK 161003, and having the same problem. I try the examples project (so without unreal engine) and it’s working. But with the same things on UE 16.2, I have this error:

LogFMOD:Error: ..\src\fmod_output_wasapi.cpp(756) - IMMDevice::Activate returned AUDCLNT_E_DEVICE_IN_USE, check application manifest for capabilities.

(Mathew Block) #8

There are two main ways you can receive that log output, the first is by missing the capabilities in your app manifest, the second is by something else in your game taking exclusive access to the microphone (such as party chat). Can you confirm that no other systems are accessing the microphone?

To assist debugging this I recommend using the logging version of FMOD, take note of the TTY output as it will show recording device enumeration every time it changes. Please provide the log output (either here or via support@fmod.com if you prefer) from start until you notice the microphone disconnecting.

Also can you provide information about the types of microphones you are trying to use (kinect / headset / usb).


(Mathew Block) #9

It looks like UE4 isn’t passing the AppxManifest settings from the INI files through to the final manifest file anymore. To be certain this is the case, please check the manifest on your end and note whether kinectAudio / kinectGamechat capabilities are set.

I’ve posted on the UE4 forums for more information regarding this issue:
https://udn.unrealengine.com/questions/383909/xboxoneengineini-to-appxmanifest-for-microphone-mi.html


(Mathew Block) #10

There is a confirmed issue with UE4 not correctly building the AppxManifest, our recommendation is to patch the UE4 engine as described here: https://udn.unrealengine.com/questions/380555/typo-in-unrealbuildtools-xboxonemanifestgeneratorg.html


(Vincent Studer) #11

Thank you for your help!


(Vincent Studer) #12

It’s working! Thank you again!