Skip to content

Commit d4f5f4b

Browse files
committed
audctl: Updated sysver checks.
1 parent 6c430b2 commit d4f5f4b

File tree

2 files changed

+16
-7
lines changed

2 files changed

+16
-7
lines changed

nx/include/switch/services/audctl.h

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -48,21 +48,21 @@ Result audctlGetTargetVolumeMin(s32* volume_out);
4848
Result audctlGetTargetVolumeMax(s32* volume_out);
4949
Result audctlIsTargetMute(bool* mute_out, AudioTarget target);
5050
Result audctlSetTargetMute(AudioTarget target, bool mute);
51-
Result audctlIsTargetConnected(bool* connected_out, AudioTarget target);
51+
Result audctlIsTargetConnected(bool* connected_out, AudioTarget target); ///< [1.0.0-17.0.1]
5252
Result audctlSetDefaultTarget(AudioTarget target, u64 fade_in_ns, u64 fade_out_ns);
5353
Result audctlGetDefaultTarget(AudioTarget* target_out);
5454
Result audctlGetAudioOutputMode(AudioOutputMode* mode_out, AudioTarget target);
5555
Result audctlSetAudioOutputMode(AudioTarget target, AudioOutputMode mode);
56-
Result audctlSetForceMutePolicy(AudioForceMutePolicy policy);
57-
Result audctlGetForceMutePolicy(AudioForceMutePolicy* policy_out);
56+
Result audctlSetForceMutePolicy(AudioForceMutePolicy policy); ///< [1.0.0-13.2.1]
57+
Result audctlGetForceMutePolicy(AudioForceMutePolicy* policy_out); ///< [1.0.0-13.2.1]
5858
Result audctlGetOutputModeSetting(AudioOutputMode* mode_out, AudioTarget target);
5959
Result audctlSetOutputModeSetting(AudioTarget target, AudioOutputMode mode);
6060
Result audctlSetOutputTarget(AudioTarget target);
6161
Result audctlSetInputTargetForceEnabled(bool enable);
6262
Result audctlSetHeadphoneOutputLevelMode(AudioHeadphoneOutputLevelMode mode); ///< [3.0.0+]
6363
Result audctlGetHeadphoneOutputLevelMode(AudioHeadphoneOutputLevelMode* mode_out); ///< [3.0.0+]
64-
Result audctlAcquireAudioVolumeUpdateEventForPlayReport(Event* event_out); ///< [3.0.0+]
65-
Result audctlAcquireAudioOutputDeviceUpdateEventForPlayReport(Event* event_out); ///< [3.0.0+]
64+
Result audctlAcquireAudioVolumeUpdateEventForPlayReport(Event* event_out); ///< [3.0.0-13.2.1]
65+
Result audctlAcquireAudioOutputDeviceUpdateEventForPlayReport(Event* event_out); ///< [3.0.0-13.2.1]
6666
Result audctlGetAudioOutputTargetForPlayReport(AudioTarget* target_out); ///< [3.0.0+]
6767
Result audctlNotifyHeadphoneVolumeWarningDisplayedEvent(void); ///< [3.0.0+]
6868
Result audctlSetSystemOutputMasterVolume(float volume); ///< [4.0.0+]

nx/source/services/audctl.c

Lines changed: 11 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -99,6 +99,9 @@ Result audctlSetTargetMute(AudioTarget target, bool mute) {
9999
}
100100

101101
Result audctlIsTargetConnected(bool* connected_out, AudioTarget target) {
102+
if (hosversionAtLeast(18,0,0))
103+
return MAKERESULT(Module_Libnx, LibnxError_IncompatSysVer);
104+
102105
const struct {
103106
u32 target;
104107
} in = { target };
@@ -166,6 +169,9 @@ Result audctlSetAudioOutputMode(AudioTarget target, AudioOutputMode mode) {
166169
}
167170

168171
Result audctlSetForceMutePolicy(AudioForceMutePolicy policy) {
172+
if (hosversionAtLeast(14,0,0))
173+
return MAKERESULT(Module_Libnx, LibnxError_IncompatSysVer);
174+
169175
const struct {
170176
u32 policy;
171177
} in = { policy };
@@ -174,6 +180,9 @@ Result audctlSetForceMutePolicy(AudioForceMutePolicy policy) {
174180
}
175181

176182
Result audctlGetForceMutePolicy(AudioForceMutePolicy* policy_out) {
183+
if (hosversionAtLeast(14,0,0))
184+
return MAKERESULT(Module_Libnx, LibnxError_IncompatSysVer);
185+
177186
struct {
178187
u32 policy;
179188
} out;
@@ -256,7 +265,7 @@ Result audctlGetHeadphoneOutputLevelMode(AudioHeadphoneOutputLevelMode* mode_out
256265
}
257266

258267
Result audctlAcquireAudioVolumeUpdateEventForPlayReport(Event* event_out) {
259-
if (hosversionBefore(3,0,0))
268+
if (!hosversionBetween(3,14))
260269
return MAKERESULT(Module_Libnx, LibnxError_IncompatSysVer);
261270

262271
Handle tmp_handle;
@@ -274,7 +283,7 @@ Result audctlAcquireAudioVolumeUpdateEventForPlayReport(Event* event_out) {
274283
}
275284

276285
Result audctlAcquireAudioOutputDeviceUpdateEventForPlayReport(Event* event_out) {
277-
if (hosversionBefore(3,0,0))
286+
if (!hosversionBetween(3,14))
278287
return MAKERESULT(Module_Libnx, LibnxError_IncompatSysVer);
279288

280289
Handle tmp_handle;

0 commit comments

Comments
 (0)