@@ -37,6 +37,7 @@ public final class PlayerConfiguration {
3737 // Output
3838 public final AudioOutput output ;
3939 public final String outputClass ;
40+ public final Object [] outputClassParams ;
4041 public final File outputPipe ;
4142 public final File metadataPipe ;
4243 public final String [] mixerSearchKeywords ;
@@ -52,7 +53,7 @@ public final class PlayerConfiguration {
5253 public final File localFilesPath ;
5354
5455 private PlayerConfiguration (AudioQuality preferredQuality , boolean enableNormalisation , float normalisationPregain , boolean autoplayEnabled , int crossfadeDuration , boolean preloadEnabled ,
55- AudioOutput output , String outputClass , File outputPipe , File metadataPipe , String [] mixerSearchKeywords , boolean logAvailableMixers , int releaseLineDelay ,
56+ AudioOutput output , String outputClass , Object [] outputClassParams , File outputPipe , File metadataPipe , String [] mixerSearchKeywords , boolean logAvailableMixers , int releaseLineDelay ,
5657 int initialVolume , int volumeSteps , boolean bypassSinkVolume , File localFilesPath ) {
5758 this .preferredQuality = preferredQuality ;
5859 this .enableNormalisation = enableNormalisation ;
@@ -61,6 +62,7 @@ private PlayerConfiguration(AudioQuality preferredQuality, boolean enableNormali
6162 this .crossfadeDuration = crossfadeDuration ;
6263 this .output = output ;
6364 this .outputClass = outputClass ;
65+ this .outputClassParams = outputClassParams ;
6466 this .outputPipe = outputPipe ;
6567 this .metadataPipe = metadataPipe ;
6668 this .mixerSearchKeywords = mixerSearchKeywords ;
@@ -89,6 +91,7 @@ public final static class Builder {
8991 // Output
9092 private AudioOutput output = AudioOutput .MIXER ;
9193 private String outputClass ;
94+ private Object [] outputClassParams ;
9295 private File outputPipe ;
9396 private File metadataPipe ;
9497 private String [] mixerSearchKeywords ;
@@ -141,6 +144,11 @@ public Builder setOutputClass(String outputClass) {
141144 return this ;
142145 }
143146
147+ public Builder setOutputClassParams (Object [] outputClassParams ) {
148+ this .outputClassParams = outputClassParams ;
149+ return this ;
150+ }
151+
144152 public Builder setOutputPipe (File outputPipe ) {
145153 this .outputPipe = outputPipe ;
146154 return this ;
@@ -200,7 +208,7 @@ public Builder setLocalFilesPath(File localFilesPath) {
200208 @ Contract (value = " -> new" , pure = true )
201209 public @ NotNull PlayerConfiguration build () {
202210 return new PlayerConfiguration (preferredQuality , enableNormalisation , normalisationPregain , autoplayEnabled , crossfadeDuration , preloadEnabled ,
203- output , outputClass , outputPipe , metadataPipe , mixerSearchKeywords , logAvailableMixers , releaseLineDelay ,
211+ output , outputClass , outputClassParams , outputPipe , metadataPipe , mixerSearchKeywords , logAvailableMixers , releaseLineDelay ,
204212 initialVolume , volumeSteps , bypassSinkVolume , localFilesPath );
205213 }
206214 }
0 commit comments