diff --git a/lib/provider/proxy_playlist/proxy_playlist_provider.dart b/lib/provider/proxy_playlist/proxy_playlist_provider.dart index 7ab9293a..69464199 100644 --- a/lib/provider/proxy_playlist/proxy_playlist_provider.dart +++ b/lib/provider/proxy_playlist/proxy_playlist_provider.dart @@ -569,11 +569,6 @@ class ProxyPlaylistNotifier extends PersistedStateNotifier )); if (res.body == "Not Found") { - Catcher.reportCheckedError( - "[SponsorBlock] no skip segments found for $id\n" - "${res.request?.url}", - StackTrace.current, - ); return List.castFrom([]); } diff --git a/lib/services/audio_services/mobile_audio_service.dart b/lib/services/audio_services/mobile_audio_service.dart index e9bf7a3e..9750fce8 100644 --- a/lib/services/audio_services/mobile_audio_service.dart +++ b/lib/services/audio_services/mobile_audio_service.dart @@ -18,16 +18,32 @@ class MobileAudioService extends BaseAudioHandler { session = s; session?.configure(const AudioSessionConfiguration.music()); s.interruptionEventStream.listen((event) async { - switch (event.type) { - case AudioInterruptionType.duck: - await audioPlayer.setVolume(event.begin ? 0.5 : 1.0); - break; - case AudioInterruptionType.pause: - case AudioInterruptionType.unknown: - await audioPlayer.pause(); - break; + if (event.begin) { + switch (event.type) { + case AudioInterruptionType.duck: + await audioPlayer.setVolume(0.5); + break; + case AudioInterruptionType.pause: + case AudioInterruptionType.unknown: + await audioPlayer.pause(); + break; + } + } else { + switch (event.type) { + case AudioInterruptionType.duck: + await audioPlayer.setVolume(1.0); + break; + case AudioInterruptionType.pause: + case AudioInterruptionType.unknown: + await audioPlayer.resume(); + break; + } } }); + + s.becomingNoisyEventStream.listen((_) { + audioPlayer.pause(); + }); }); audioPlayer.playerStateStream.listen((state) async { playbackState.add(await _transformEvent());