From c86fff53934102efdd7bfd9c0ff02571b0559235 Mon Sep 17 00:00:00 2001 From: michaelkatz Date: Thu, 8 Jun 2023 12:05:11 +0000 Subject: [PATCH] Catch exceptions for creating AudioFormat with unsupported arguments PiperOrigin-RevId: 538753539 --- .../audio/DefaultAudioOffloadSupportProvider.java | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/libraries/exoplayer/src/main/java/androidx/media3/exoplayer/audio/DefaultAudioOffloadSupportProvider.java b/libraries/exoplayer/src/main/java/androidx/media3/exoplayer/audio/DefaultAudioOffloadSupportProvider.java index 5fce99452f..55563e4415 100644 --- a/libraries/exoplayer/src/main/java/androidx/media3/exoplayer/audio/DefaultAudioOffloadSupportProvider.java +++ b/libraries/exoplayer/src/main/java/androidx/media3/exoplayer/audio/DefaultAudioOffloadSupportProvider.java @@ -94,7 +94,14 @@ public final class DefaultAudioOffloadSupportProvider if (channelConfig == AudioFormat.CHANNEL_INVALID) { return AudioOffloadSupport.DEFAULT_UNSUPPORTED; } - AudioFormat audioFormat = Util.getAudioFormat(format.sampleRate, channelConfig, encoding); + + AudioFormat audioFormat; + try { + audioFormat = Util.getAudioFormat(format.sampleRate, channelConfig, encoding); + } catch (IllegalArgumentException e) { + return AudioOffloadSupport.DEFAULT_UNSUPPORTED; + } + if (Util.SDK_INT >= 31) { return Api31.getOffloadedPlaybackSupport( audioFormat,