Skip to content

Commit 3033c0b

Browse files
committed
[YouTube] Music Mix: Fix playlist not being accepted
Regression introduced by YouTube Mix support (#280)
1 parent b62144b commit 3033c0b

3 files changed

Lines changed: 5 additions & 9 deletions

File tree

extractor/src/main/java/org/schabi/newpipe/extractor/services/youtube/YoutubeParsingHelper.java

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -205,12 +205,12 @@ public static boolean isYoutubeMixId(final String playlistId) {
205205

206206
/**
207207
* Checks if the given playlist id is a YouTube Music Mix (auto-generated playlist)
208-
* Ids from a YouTube Music Mix start with "RDAMVM"
208+
* Ids from a YouTube Music Mix start with "RDAMVM" or "RDCLAK"
209209
* @param playlistId
210210
* @return Whether given id belongs to a YouTube Music Mix
211211
*/
212212
public static boolean isYoutubeMusicMixId(final String playlistId) {
213-
return playlistId.startsWith("RDAMVM");
213+
return playlistId.startsWith("RDAMVM") || playlistId.startsWith("RDCLAK");
214214
}
215215
/**
216216
* Checks if the given playlist id is a YouTube Channel Mix (auto-generated playlist)
@@ -229,7 +229,7 @@ public static String extractVideoIdFromMixId(final String playlistId) throws Par
229229
if (playlistId.startsWith("RDMM")) { //My Mix
230230
return playlistId.substring(4);
231231

232-
} else if (playlistId.startsWith("RDAMVM")) { //Music mix
232+
} else if (playlistId.startsWith("RDAMVM") || playlistId.startsWith("RDCLAK")) { //Music mix
233233
return playlistId.substring(6);
234234

235235
} else if (playlistId.startsWith("RMCM")) { //Channel mix

extractor/src/main/java/org/schabi/newpipe/extractor/services/youtube/YoutubeService.java

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -111,7 +111,8 @@ public ChannelExtractor getChannelExtractor(ListLinkHandler linkHandler) {
111111

112112
@Override
113113
public PlaylistExtractor getPlaylistExtractor(final ListLinkHandler linkHandler) {
114-
if (YoutubeParsingHelper.isYoutubeMixId(linkHandler.getId())) {
114+
if (YoutubeParsingHelper.isYoutubeMixId(linkHandler.getId())
115+
&& !YoutubeParsingHelper.isYoutubeMusicMixId(linkHandler.getId())) {
115116
return new YoutubeMixPlaylistExtractor(this, linkHandler);
116117
} else {
117118
return new YoutubePlaylistExtractor(this, linkHandler);

extractor/src/main/java/org/schabi/newpipe/extractor/services/youtube/linkHandler/YoutubePlaylistLinkHandlerFactory.java

Lines changed: 0 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -52,11 +52,6 @@ public String getId(final String url) throws ParsingException {
5252
"the list-ID given in the URL does not match the list pattern");
5353
}
5454

55-
if (YoutubeParsingHelper.isYoutubeMusicMixId(listID)) {
56-
throw new ContentNotSupportedException(
57-
"YouTube Music Mix playlists are not yet supported");
58-
}
59-
6055
if (YoutubeParsingHelper.isYoutubeChannelMixId(listID)
6156
&& Utils.getQueryValue(urlObj, "v") == null) {
6257
//Video id can't be determined from the channel mix id. See YoutubeParsingHelper#extractVideoIdFromMixId

0 commit comments

Comments
 (0)