From dbb0d265b1b0b8ac2d3d6d71e4f69be0ed0291b5 Mon Sep 17 00:00:00 2001 From: tagdara Date: Sat, 11 Nov 2023 10:18:30 -0800 Subject: [PATCH 1/2] temporary fixes to CDN feed helper which avoid the broken CDN server audio4-gm-fb --- .../xyz/gianlu/librespot/audio/cdn/CdnFeedHelper.java | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/lib/src/main/java/xyz/gianlu/librespot/audio/cdn/CdnFeedHelper.java b/lib/src/main/java/xyz/gianlu/librespot/audio/cdn/CdnFeedHelper.java index 4d42dd4c..305a7dd5 100644 --- a/lib/src/main/java/xyz/gianlu/librespot/audio/cdn/CdnFeedHelper.java +++ b/lib/src/main/java/xyz/gianlu/librespot/audio/cdn/CdnFeedHelper.java @@ -46,7 +46,13 @@ private CdnFeedHelper() { @NotNull private static HttpUrl getUrl(@NotNull Session session, @NotNull StorageResolveResponse resp) { - return HttpUrl.get(resp.getCdnurl(session.random().nextInt(resp.getCdnurlCount()))); + String selectedUrl = resp.getCdnurl(session.random().nextInt(resp.getCdnurlCount())); + while (selectedUrl.contains("audio4-gm-fb")) { + LOGGER.warn("getUrl picked CDN with known issues {} (forcing re-selection)", selectedUrl ); + selectedUrl = resp.getCdnurl(session.random().nextInt(resp.getCdnurlCount())); + } + return HttpUrl.get(selectedUrl); + // return HttpUrl.get(resp.getCdnurl(session.random().nextInt(resp.getCdnurlCount()))); } public static @NotNull LoadedStream loadTrack(@NotNull Session session, Metadata.@NotNull Track track, Metadata.@NotNull AudioFile file, From cf378eb59d7d4cbc872a462f5651665eeb14fb1b Mon Sep 17 00:00:00 2001 From: tagdara Date: Sat, 11 Nov 2023 15:13:28 -0800 Subject: [PATCH 2/2] remove commented code for real CDN selection --- .../main/java/xyz/gianlu/librespot/audio/cdn/CdnFeedHelper.java | 1 - 1 file changed, 1 deletion(-) diff --git a/lib/src/main/java/xyz/gianlu/librespot/audio/cdn/CdnFeedHelper.java b/lib/src/main/java/xyz/gianlu/librespot/audio/cdn/CdnFeedHelper.java index 305a7dd5..13e06a2a 100644 --- a/lib/src/main/java/xyz/gianlu/librespot/audio/cdn/CdnFeedHelper.java +++ b/lib/src/main/java/xyz/gianlu/librespot/audio/cdn/CdnFeedHelper.java @@ -52,7 +52,6 @@ private static HttpUrl getUrl(@NotNull Session session, @NotNull StorageResolveR selectedUrl = resp.getCdnurl(session.random().nextInt(resp.getCdnurlCount())); } return HttpUrl.get(selectedUrl); - // return HttpUrl.get(resp.getCdnurl(session.random().nextInt(resp.getCdnurlCount()))); } public static @NotNull LoadedStream loadTrack(@NotNull Session session, Metadata.@NotNull Track track, Metadata.@NotNull AudioFile file,