Reduce code duplication and make code flow clearer

pull/35/head
James Ball 2021-06-11 13:36:13 +01:00
rodzic b61f29870e
commit 8e4c8ca71c
1 zmienionych plików z 4 dodań i 6 usunięć

Wyświetl plik

@ -21,8 +21,7 @@ public class XtAudioEngine implements AudioEngine {
public XtAudioEngine() { public XtAudioEngine() {
try (XtPlatform platform = XtAudio.init(null, null)) { try (XtPlatform platform = XtAudio.init(null, null)) {
Enums.XtSystem system = platform.setupToSystem(Enums.XtSetup.SYSTEM_AUDIO); XtService service = getService(platform);
XtService service = getService(platform, system);
String deviceId = getDeviceId(service); String deviceId = getDeviceId(service);
try (XtDevice device = service.openDevice(deviceId)) { try (XtDevice device = service.openDevice(deviceId)) {
@ -57,8 +56,7 @@ public class XtAudioEngine implements AudioEngine {
this.channelGenerator = channelGenerator; this.channelGenerator = channelGenerator;
this.renderLock = renderLock; this.renderLock = renderLock;
try (XtPlatform platform = XtAudio.init(null, null)) { try (XtPlatform platform = XtAudio.init(null, null)) {
Enums.XtSystem system = platform.setupToSystem(Enums.XtSetup.SYSTEM_AUDIO); XtService service = getService(platform);
XtService service = getService(platform, system);
String deviceId = getDeviceId(service); String deviceId = getDeviceId(service);
try (XtDevice device = service.openDevice(deviceId)) { try (XtDevice device = service.openDevice(deviceId)) {
@ -97,8 +95,8 @@ public class XtAudioEngine implements AudioEngine {
return sampleRate; return sampleRate;
} }
private XtService getService(XtPlatform platform, Enums.XtSystem system) { private XtService getService(XtPlatform platform) {
XtService service = platform.getService(system); XtService service = platform.getService(platform.setupToSystem(Enums.XtSetup.SYSTEM_AUDIO));
if (service == null) { if (service == null) {
service = platform.getService(platform.setupToSystem(Enums.XtSetup.PRO_AUDIO)); service = platform.getService(platform.setupToSystem(Enums.XtSetup.PRO_AUDIO));
} }