@@ -38,7 +38,7 @@ class AudioPlayerConfiguration {
3838 private val log = LoggerFactory .getLogger(AudioPlayerConfiguration ::class .java)
3939
4040 @Bean
41- fun audioPlayerManagerSupplier (sources : AudioSourcesConfig , serverConfig : ServerConfig , routePlanner : AbstractRoutePlanner ? ) = Supplier < AudioPlayerManager > {
41+ fun audioPlayerManagerSupplier (sources : AudioSourcesConfig , serverConfig : ServerConfig , routePlanner : AbstractRoutePlanner ? ): AudioPlayerManager {
4242 val audioPlayerManager = DefaultAudioPlayerManager ()
4343
4444 if (serverConfig.isGcWarnings) {
@@ -48,7 +48,13 @@ class AudioPlayerConfiguration {
4848 if (sources.isYoutube) {
4949 val youtube = YoutubeAudioSourceManager (serverConfig.isYoutubeSearchEnabled)
5050 if (routePlanner != null ) {
51- YoutubeIpRotator .setup(youtube, routePlanner)
51+ val retryLimit = serverConfig.ratelimit?.retryLimit ? : - 1
52+ when {
53+ retryLimit < 0 -> YoutubeIpRotator .setup(youtube, routePlanner)
54+ retryLimit == 0 -> YoutubeIpRotator .setup(youtube, routePlanner, Int .MAX_VALUE )
55+ else -> YoutubeIpRotator .setup(youtube, routePlanner, retryLimit)
56+
57+ }
5258 }
5359 val playlistLoadLimit = serverConfig.youtubePlaylistLoadLimit
5460 if (playlistLoadLimit != null ) youtube.setPlaylistPageCount(playlistLoadLimit)
@@ -76,12 +82,7 @@ class AudioPlayerConfiguration {
7682
7783 audioPlayerManager.configuration.isFilterHotSwapEnabled = true
7884
79- audioPlayerManager
80- }
81-
82- @Bean
83- fun restAudioPlayerManager (supplier : Supplier <AudioPlayerManager >): AudioPlayerManager {
84- return supplier.get()
85+ return audioPlayerManager
8586 }
8687
8788 @Bean
0 commit comments