auddev: add GetActiveAudioDeviceName

This commit is contained in:
averne 2023-02-03 23:03:29 +01:00
parent dcebe96e71
commit 412505092b
2 changed files with 9 additions and 1 deletions

View File

@ -22,4 +22,4 @@ Service* auddevGetServiceSession(void);
Result auddevListAudioDeviceName(AudioDeviceName *DeviceNames, s32 max_names, s32 *total_names); Result auddevListAudioDeviceName(AudioDeviceName *DeviceNames, s32 max_names, s32 *total_names);
Result auddevSetAudioDeviceOutputVolume(const AudioDeviceName *DeviceName, float volume); Result auddevSetAudioDeviceOutputVolume(const AudioDeviceName *DeviceName, float volume);
Result auddevGetAudioDeviceOutputVolume(const AudioDeviceName *DeviceName, float *volume); Result auddevGetAudioDeviceOutputVolume(const AudioDeviceName *DeviceName, float *volume);
Result auddevGetActiveAudioDeviceName(AudioDeviceName *DeviceName);

View File

@ -62,3 +62,11 @@ Result auddevGetAudioDeviceOutputVolume(const AudioDeviceName *DeviceName, float
.buffers = { { DeviceName, sizeof(AudioDeviceName) } }, .buffers = { { DeviceName, sizeof(AudioDeviceName) } },
); );
} }
Result auddevGetActiveAudioDeviceName(AudioDeviceName *DeviceName) {
bool new_cmd = hosversionAtLeast(3,0,0);
return serviceDispatch(&g_auddevIAudioDevice, new_cmd==0 ? 3 : 10,
.buffer_attrs = { (new_cmd==0 ? SfBufferAttr_HipcMapAlias : SfBufferAttr_HipcAutoSelect) | SfBufferAttr_Out },
.buffers = { { DeviceName, sizeof(AudioDeviceName) } },
);
}