Controller Speaker randomly shuts down

Hi,

I’m trying to play events through the controller speaker on PS5 and the sounds play as expected for a while, but after a moment it randomly stops playing the sound on controller speaker and plays them on TV.

This are errors that I receive in the log:

c:\buildagent\work\b8b6893b00c565e4\core_api\platforms\ps5\src\fmod_output_audioout.cpp(237) : TID -2131413568 :   188410 ms    +2 : [ERR] AudioOut_AcquireUser                     : sceAudioOut2UserCreate returned 80268010.
c:\buildagent\work\b8b6893b00c565e4\core_api\platforms\ps5\src\fmod_output_audioout.cpp(627) : TID -2131413568 :   188410 ms    +0 : [LOG] FMOD_RESULT = 49 -- A call to a standard soundcard driver failed, which could possibly mean a bug in the driver or resources were missing or exhausted.
c:\buildagent\work\b8b6893b00c565e4\core_api\src\fmod_output.cpp(1304) : TID -2131413568 :   188410 ms    +0 : [LOG] FMOD_RESULT = 49 -- A call to a standard soundcard driver failed, which could possibly mean a bug in the driver or resources were missing or exhausted.
c:\buildagent\work\b8b6893b00c565e4\core_api\src\fmod_systemi.cpp(4658) : TID -2131413568 :   188410 ms    +0 : [LOG] FMOD_RESULT = 49 -- A call to a standard soundcard driver failed, which could possibly mean a bug in the driver or resources were missing or exhausted.
c:\buildagent\work\b8b6893b00c565e4\core_api\src\fmod_system.cpp(1117) : TID -2131413568 :   188410 ms    +0 : [LOG] FMOD_RESULT = 49 -- A call to a standard soundcard driver failed, which could possibly mean a bug in the driver or resources were missing or exhausted.
c:\buildagent\work\b8b6893b00c565e4\studio_api\src\fmod_playback_bus.cpp(430) : TID -2131413568 :   188410 ms    +0 : [LOG] BusInstance::attachToOutputPort          : Could not connect output port {b070a54d-5556-455b-9c33-de870d4bbb4b}, routing directly to output.

I’m lost why FMOD suddenly can’t acquire user. I’ve search for the error code and it probably means that invalid data was passed to the sceAudioOut2UserCreate.

Any help much apprecieated.

I’m on SDK 5.0 and FMOD 2.02.09

There is additional odd thing I just observed.
The event is attached to menu navigation and when I hold the button and the focus is moving in the loop through menu, the sound on controller is playing as expected. When it’s just one time action it doesn’t play. Even though when it’s playing I still get some error in log:

c:\buildagent\work\b8b6893b00c565e4\core_api\src\fmod_system.cpp(1117) : TID -2131442368 :    87947 ms  +153 : [LOG] FMOD_RESULT = 31 -- An invalid parameter was passed to this function.

OK I’ve find out what’s happening.

The event had long trailing silence and as long as event was active the new upcoming events were also routed to the controller speaker.
Now I realize that every time I want to play some event on controller speaker I need to attach the ChannelGroup to the appropriate port.

I’m not gonna lie the design of this isn’t very intuitive and I’m not sure if it’s documented anywhere (at least I didn’t find it).
I’d expect that if I have group under the port in FMOD Studio that it will play on the desired speaker all the time. I understand the requirement of pointing to which controller sound should play but maybe defaulting the sceUserServiceGetInitialUser for controller speaker and vibration would reduce confusion when using controller features with FMOD.

Hi,

It’s good to see you’ve found a solution to your issue. The error you’ve noted in your second message may be a bug, so if possible could I get you to provide a more complete log for the error?

I’m not entirely sure what you mean by this. If you have a group bus in Studio that has been added to a port, all event instances running to that group bus should be outputting to that port. Are the “upcoming” events routed to the same group bus as the initial event?

Finally, FMOD ports defaulting to sceUserServiceGetInitialUser would make for a more intuitive experience, so I’ve added it to our internal feature/improvement tracker.