Skip to content

[YouTube Music] Fix uploader and stream count for album/playlist info items#1351

Merged
TobiGr merged 2 commits intoTeamNewPipe:devfrom
Stypox:fix-ytm-albums-playlists
Jul 29, 2025
Merged

[YouTube Music] Fix uploader and stream count for album/playlist info items#1351
TobiGr merged 2 commits intoTeamNewPipe:devfrom
Stypox:fix-ytm-albums-playlists

Conversation

@Stypox
Copy link
Copy Markdown
Member

@Stypox Stypox commented Jul 28, 2025

  • handles autogenerated albums instead of returning an error for invalid uploader url
  • extracts uploader url of playlists too using another method
  • getStreamCount() now returns ITEM_COUNT_UNKNOWN because no info is included in the JSON
  • changes the search term used in tests to reproduce the issue, and updates mocks

I couldn't find any open issue to link to this PR.

JSON of an album
{
  "trackingParams": "REDACTED==",
  "thumbnail": {
    "musicThumbnailRenderer": {
      "thumbnail": {
        "thumbnails": [
          {
            "url": "https://lh3.googleusercontent.com/KofzUtyTpq18PS1iRZygZRwY8XiLQF_kaj7D8YjHzHrllCcAZFlGwdFI0HosC7_QTglHbmd0eiGl4TXK=w60-h60-l90-rj",
            "width": 60,
            "height": 60
          },
          {
            "url": "https://lh3.googleusercontent.com/KofzUtyTpq18PS1iRZygZRwY8XiLQF_kaj7D8YjHzHrllCcAZFlGwdFI0HosC7_QTglHbmd0eiGl4TXK=w120-h120-l90-rj",
            "width": 120,
            "height": 120
          },
          {
            "url": "https://lh3.googleusercontent.com/KofzUtyTpq18PS1iRZygZRwY8XiLQF_kaj7D8YjHzHrllCcAZFlGwdFI0HosC7_QTglHbmd0eiGl4TXK=w226-h226-l90-rj",
            "width": 226,
            "height": 226
          },
          {
            "url": "https://lh3.googleusercontent.com/KofzUtyTpq18PS1iRZygZRwY8XiLQF_kaj7D8YjHzHrllCcAZFlGwdFI0HosC7_QTglHbmd0eiGl4TXK=w544-h544-l90-rj",
            "width": 544,
            "height": 544
          }
        ]
      },
      "thumbnailCrop": "MUSIC_THUMBNAIL_CROP_UNSPECIFIED",
      "thumbnailScale": "MUSIC_THUMBNAIL_SCALE_ASPECT_FIT",
      "trackingParams": "REDACTED"
    }
  },
  "overlay": {
    "musicItemThumbnailOverlayRenderer": {
      "background": {
        "verticalGradient": {
          "gradientLayerColors": [
            "3422552064",
            "3422552064"
          ]
        }
      },
      "content": {
        "musicPlayButtonRenderer": {
          "playNavigationEndpoint": {
            "clickTrackingParams": "REDACTED",
            "watchPlaylistEndpoint": {
              "playlistId": "OLAK5uy_nlUM0Wb85zNeLHF3oZul4mvJe2bPJl3DM"
            }
          },
          "trackingParams": "REDACTED",
          "playIcon": {
            "iconType": "PLAY_ARROW"
          },
          "pauseIcon": {
            "iconType": "PAUSE"
          },
          "iconColor": 4294967295,
          "backgroundColor": 0,
          "activeBackgroundColor": 0,
          "loadingIndicatorColor": 14745645,
          "playingIcon": {
            "iconType": "VOLUME_UP"
          },
          "iconLoadingColor": 0,
          "activeScaleFactor": 1,
          "buttonSize": "MUSIC_PLAY_BUTTON_SIZE_SMALL",
          "rippleTarget": "MUSIC_PLAY_BUTTON_RIPPLE_TARGET_SELF",
          "accessibilityPlayData": {
            "accessibilityData": {
              "label": "Play The Best Of"
            }
          },
          "accessibilityPauseData": {
            "accessibilityData": {
              "label": "Pause The Best Of"
            }
          }
        }
      },
      "contentPosition": "MUSIC_ITEM_THUMBNAIL_OVERLAY_CONTENT_POSITION_CENTERED",
      "displayStyle": "MUSIC_ITEM_THUMBNAIL_OVERLAY_DISPLAY_STYLE_PERSISTENT"
    }
  },
  "flexColumns": [
    {
      "musicResponsiveListItemFlexColumnRenderer": {
        "text": {
          "runs": [
            {
              "text": "The Best Of"
            }
          ]
        },
        "displayPriority": "MUSIC_RESPONSIVE_LIST_ITEM_COLUMN_DISPLAY_PRIORITY_HIGH"
      }
    },
    {
      "musicResponsiveListItemFlexColumnRenderer": {
        "text": {
          "runs": [
            {
              "text": "Album"
            },
            {
              "text": " \\u2022 "
            },
            {
              "text": "SOUND TO SIGHT"
            },
            {
              "text": " \\u2022 "
            },
            {
              "text": "2022"
            }
          ]
        },
        "displayPriority": "MUSIC_RESPONSIVE_LIST_ITEM_COLUMN_DISPLAY_PRIORITY_HIGH"
      }
    }
  ],
  "menu": {
    "menuRenderer": {
      "items": [
        {
          "menuNavigationItemRenderer": {
            "text": {
              "runs": [
                {
                  "text": "Shuffle play"
                }
              ]
            },
            "icon": {
              "iconType": "MUSIC_SHUFFLE"
            },
            "navigationEndpoint": {
              "clickTrackingParams": "REDACTED",
              "watchPlaylistEndpoint": {
                "playlistId": "OLAK5uy_nlUM0Wb85zNeLHF3oZul4mvJe2bPJl3DM",
                "params": "wAEB8gECKAE%3D"
              }
            },
            "trackingParams": "REDACTED"
          }
        },
        {
          "menuNavigationItemRenderer": {
            "text": {
              "runs": [
                {
                  "text": "Start radio"
                }
              ]
            },
            "icon": {
              "iconType": "MIX"
            },
            "navigationEndpoint": {
              "clickTrackingParams": "REDACTED",
              "watchPlaylistEndpoint": {
                "playlistId": "RDAMPLOLAK5uy_nlUM0Wb85zNeLHF3oZul4mvJe2bPJl3DM",
                "params": "wAEB"
              }
            },
            "trackingParams": "REDACTED"
          }
        },
        {
          "menuServiceItemRenderer": {
            "text": {
              "runs": [
                {
                  "text": "Play next"
                }
              ]
            },
            "icon": {
              "iconType": "QUEUE_PLAY_NEXT"
            },
            "serviceEndpoint": {
              "clickTrackingParams": "REDACTED",
              "queueAddEndpoint": {
                "queueTarget": {
                  "playlistId": "OLAK5uy_nlUM0Wb85zNeLHF3oZul4mvJe2bPJl3DM",
                  "onEmptyQueue": {
                    "clickTrackingParams": "REDACTED",
                    "watchEndpoint": {
                      "playlistId": "OLAK5uy_nlUM0Wb85zNeLHF3oZul4mvJe2bPJl3DM"
                    }
                  }
                },
                "queueInsertPosition": "INSERT_AFTER_CURRENT_VIDEO",
                "commands": [
                  {
                    "clickTrackingParams": "REDACTED",
                    "addToToastAction": {
                      "item": {
                        "notificationTextRenderer": {
                          "successResponseText": {
                            "runs": [
                              {
                                "text": "Album will play next"
                              }
                            ]
                          },
                          "trackingParams": "REDACTED=="
                        }
                      }
                    }
                  }
                ]
              }
            },
            "trackingParams": "REDACTED"
          }
        },
        {
          "menuServiceItemRenderer": {
            "text": {
              "runs": [
                {
                  "text": "Add to queue"
                }
              ]
            },
            "icon": {
              "iconType": "ADD_TO_REMOTE_QUEUE"
            },
            "serviceEndpoint": {
              "clickTrackingParams": "REDACTED",
              "queueAddEndpoint": {
                "queueTarget": {
                  "playlistId": "OLAK5uy_nlUM0Wb85zNeLHF3oZul4mvJe2bPJl3DM",
                  "onEmptyQueue": {
                    "clickTrackingParams": "REDACTED",
                    "watchEndpoint": {
                      "playlistId": "OLAK5uy_nlUM0Wb85zNeLHF3oZul4mvJe2bPJl3DM"
                    }
                  }
                },
                "queueInsertPosition": "INSERT_AT_END",
                "commands": [
                  {
                    "clickTrackingParams": "REDACTED",
                    "addToToastAction": {
                      "item": {
                        "notificationTextRenderer": {
                          "successResponseText": {
                            "runs": [
                              {
                                "text": "Album added to queue"
                              }
                            ]
                          },
                          "trackingParams": "REDACTED=="
                        }
                      }
                    }
                  }
                ]
              }
            },
            "trackingParams": "REDACTED"
          }
        },
        {
          "toggleMenuServiceItemRenderer": {
            "defaultText": {
              "runs": [
                {
                  "text": "Save album to library"
                }
              ]
            },
            "defaultIcon": {
              "iconType": "LIBRARY_ADD"
            },
            "defaultServiceEndpoint": {
              "clickTrackingParams": "REDACTED",
              "modalEndpoint": {
                "modal": {
                  "modalWithTitleAndButtonRenderer": {
                    "title": {
                      "runs": [
                        {
                          "text": "Save this for later"
                        }
                      ]
                    },
                    "content": {
                      "runs": [
                        {
                          "text": "Save favourites to your library after signing in"
                        }
                      ]
                    },
                    "button": {
                      "buttonRenderer": {
                        "style": "STYLE_BLUE_TEXT",
                        "isDisabled": false,
                        "text": {
                          "runs": [
                            {
                              "text": "Sign in"
                            }
                          ]
                        },
                        "navigationEndpoint": {
                          "clickTrackingParams": "REDACTED",
                          "signInEndpoint": {
                            "hack": true
                          }
                        },
                        "trackingParams": "REDACTED"
                      }
                    }
                  }
                }
              }
            },
            "toggledText": {
              "runs": [
                {
                  "text": "Remove album from library"
                }
              ]
            },
            "toggledIcon": {
              "iconType": "LIBRARY_SAVED"
            },
            "toggledServiceEndpoint": {
              "clickTrackingParams": "REDACTED",
              "likeEndpoint": {
                "status": "INDIFFERENT",
                "target": {
                  "playlistId": "OLAK5uy_nlUM0Wb85zNeLHF3oZul4mvJe2bPJl3DM"
                }
              }
            },
            "trackingParams": "REDACTED"
          }
        },
        {
          "menuNavigationItemRenderer": {
            "text": {
              "runs": [
                {
                  "text": "Save to playlist"
                }
              ]
            },
            "icon": {
              "iconType": "ADD_TO_PLAYLIST"
            },
            "navigationEndpoint": {
              "clickTrackingParams": "REDACTED=",
              "modalEndpoint": {
                "modal": {
                  "modalWithTitleAndButtonRenderer": {
                    "title": {
                      "runs": [
                        {
                          "text": "Save this for later"
                        }
                      ]
                    },
                    "content": {
                      "runs": [
                        {
                          "text": "Make playlists and share them after signing in"
                        }
                      ]
                    },
                    "button": {
                      "buttonRenderer": {
                        "style": "STYLE_BLUE_TEXT",
                        "isDisabled": false,
                        "text": {
                          "runs": [
                            {
                              "text": "Sign in"
                            }
                          ]
                        },
                        "navigationEndpoint": {
                          "clickTrackingParams": "REDACTED=",
                          "signInEndpoint": {
                            "hack": true
                          }
                        },
                        "trackingParams": "REDACTED="
                      }
                    }
                  }
                }
              }
            },
            "trackingParams": "REDACTED-REDACTED="
          }
        },
        {
          "menuNavigationItemRenderer": {
            "text": {
              "runs": [
                {
                  "text": "Share"
                }
              ]
            },
            "icon": {
              "iconType": "SHARE"
            },
            "navigationEndpoint": {
              "clickTrackingParams": "REDACTED-REDACTED=",
              "shareEntityEndpoint": {
                "serializedShareEntity": "REDACTED%3D%3D",
                "sharePanelType": "SHARE_PANEL_TYPE_UNIFIED_SHARE_PANEL"
              }
            },
            "trackingParams": "REDACTED="
          }
        }
      ],
      "trackingParams": "REDACTED=",
      "accessibility": {
        "accessibilityData": {
          "label": "Action menu"
        }
      }
    }
  },
  "flexColumnDisplayStyle": "MUSIC_RESPONSIVE_LIST_ITEM_FLEX_COLUMN_DISPLAY_STYLE_TWO_LINE_STACK",
  "navigationEndpoint": {
    "clickTrackingParams": "REDACTED==",
    "browseEndpoint": {
      "browseId": "MPREb_71DzYgSF3Tx",
      "browseEndpointContextSupportedConfigs": {
        "browseEndpointContextMusicConfig": {
          "pageType": "MUSIC_PAGE_TYPE_ALBUM"
        }
      }
    }
  },
  "itemHeight": "MUSIC_RESPONSIVE_LIST_ITEM_HEIGHT_TALL"
}
JSON of a playlist
{
  "trackingParams": "REDACTED",
  "thumbnail": {
    "musicThumbnailRenderer": {
      "thumbnail": {
        "thumbnails": [
          {
            "url": "https://i.ytimg.com/vi/tXXC9a82pR0/hqdefault.jpg?sqp=-oaymwEWCMACELQBIAQqCghQEJADGFogjgJIWg&rs=AMzJL3mwJgH8eyG-W9mBdLRd3y_rqad-NA",
            "width": 320,
            "height": 180
          }
        ]
      },
      "thumbnailCrop": "MUSIC_THUMBNAIL_CROP_UNSPECIFIED",
      "thumbnailScale": "MUSIC_THUMBNAIL_SCALE_ASPECT_FIT",
      "trackingParams": "REDACTED=="
    }
  },
  "overlay": {
    "musicItemThumbnailOverlayRenderer": {
      "background": {
        "verticalGradient": {
          "gradientLayerColors": [
            "3422552064",
            "3422552064"
          ]
        }
      },
      "content": {
        "musicPlayButtonRenderer": {
          "playNavigationEndpoint": {
            "clickTrackingParams": "REDACTED==",
            "watchPlaylistEndpoint": {
              "playlistId": "PLhu5kJCXdr5jCddMmLZ1jMaFpmugaNC_s",
              "params": "wAEB"
            }
          },
          "trackingParams": "REDACTED==",
          "playIcon": {
            "iconType": "PLAY_ARROW"
          },
          "pauseIcon": {
            "iconType": "PAUSE"
          },
          "iconColor": 4294967295,
          "backgroundColor": 0,
          "activeBackgroundColor": 0,
          "loadingIndicatorColor": 14745645,
          "playingIcon": {
            "iconType": "VOLUME_UP"
          },
          "iconLoadingColor": 0,
          "activeScaleFactor": 1,
          "buttonSize": "MUSIC_PLAY_BUTTON_SIZE_SMALL",
          "rippleTarget": "MUSIC_PLAY_BUTTON_RIPPLE_TARGET_SELF",
          "accessibilityPlayData": {
            "accessibilityData": {
              "label": "Play Academic Movie Set Design"
            }
          },
          "accessibilityPauseData": {
            "accessibilityData": {
              "label": "Pause Academic Movie Set Design"
            }
          }
        }
      },
      "contentPosition": "MUSIC_ITEM_THUMBNAIL_OVERLAY_CONTENT_POSITION_CENTERED",
      "displayStyle": "MUSIC_ITEM_THUMBNAIL_OVERLAY_DISPLAY_STYLE_PERSISTENT"
    }
  },
  "flexColumns": [
    {
      "musicResponsiveListItemFlexColumnRenderer": {
        "text": {
          "runs": [
            {
              "text": "Academic Movie Set Design"
            }
          ]
        },
        "displayPriority": "MUSIC_RESPONSIVE_LIST_ITEM_COLUMN_DISPLAY_PRIORITY_HIGH"
      }
    },
    {
      "musicResponsiveListItemFlexColumnRenderer": {
        "text": {
          "runs": [
            {
              "text": "Allan Tsui creations",
              "navigationEndpoint": {
                "clickTrackingParams": "REDACTED",
                "browseEndpoint": {
                  "browseId": "UCHxjzFEKBuwlqIimX-3YXPQ",
                  "browseEndpointContextSupportedConfigs": {
                    "browseEndpointContextMusicConfig": {
                      "pageType": "MUSIC_PAGE_TYPE_USER_CHANNEL"
                    }
                  }
                }
              }
            },
            {
              "text": ""
            },
            {
              "text": "33 views"
            }
          ]
        },
        "displayPriority": "MUSIC_RESPONSIVE_LIST_ITEM_COLUMN_DISPLAY_PRIORITY_HIGH"
      }
    }
  ],
  "menu": {
    "menuRenderer": {
      "items": [
        {
          "menuNavigationItemRenderer": {
            "text": {
              "runs": [
                {
                  "text": "Shuffle play"
                }
              ]
            },
            "icon": {
              "iconType": "MUSIC_SHUFFLE"
            },
            "navigationEndpoint": {
              "clickTrackingParams": "REDACTED",
              "watchPlaylistEndpoint": {
                "playlistId": "PLhu5kJCXdr5jCddMmLZ1jMaFpmugaNC_s",
                "params": "wAEB8gECKAE%3D"
              }
            },
            "trackingParams": "REDACTED"
          }
        },
        {
          "menuNavigationItemRenderer": {
            "text": {
              "runs": [
                {
                  "text": "Start radio"
                }
              ]
            },
            "icon": {
              "iconType": "MIX"
            },
            "navigationEndpoint": {
              "clickTrackingParams": "REDACTED",
              "watchPlaylistEndpoint": {
                "playlistId": "RDAMPLPLhu5kJCXdr5jCddMmLZ1jMaFpmugaNC_s",
                "params": "wAEB"
              }
            },
            "trackingParams": "REDACTED"
          }
        },
        {
          "menuServiceItemRenderer": {
            "text": {
              "runs": [
                {
                  "text": "Play next"
                }
              ]
            },
            "icon": {
              "iconType": "QUEUE_PLAY_NEXT"
            },
            "serviceEndpoint": {
              "clickTrackingParams": "REDACTED",
              "queueAddEndpoint": {
                "queueTarget": {
                  "playlistId": "PLhu5kJCXdr5jCddMmLZ1jMaFpmugaNC_s",
                  "onEmptyQueue": {
                    "clickTrackingParams": "REDACTED",
                    "watchEndpoint": {
                      "playlistId": "PLhu5kJCXdr5jCddMmLZ1jMaFpmugaNC_s"
                    }
                  }
                },
                "queueInsertPosition": "INSERT_AFTER_CURRENT_VIDEO",
                "commands": [
                  {
                    "clickTrackingParams": "REDACTED",
                    "addToToastAction": {
                      "item": {
                        "notificationTextRenderer": {
                          "successResponseText": {
                            "runs": [
                              {
                                "text": "Playlist will play next"
                              }
                            ]
                          },
                          "trackingParams": "REDACTED=="
                        }
                      }
                    }
                  }
                ]
              }
            },
            "trackingParams": "REDACTED"
          }
        },
        {
          "menuServiceItemRenderer": {
            "text": {
              "runs": [
                {
                  "text": "Add to queue"
                }
              ]
            },
            "icon": {
              "iconType": "ADD_TO_REMOTE_QUEUE"
            },
            "serviceEndpoint": {
              "clickTrackingParams": "REDACTED",
              "queueAddEndpoint": {
                "queueTarget": {
                  "playlistId": "PLhu5kJCXdr5jCddMmLZ1jMaFpmugaNC_s",
                  "onEmptyQueue": {
                    "clickTrackingParams": "REDACTED",
                    "watchEndpoint": {
                      "playlistId": "PLhu5kJCXdr5jCddMmLZ1jMaFpmugaNC_s"
                    }
                  }
                },
                "queueInsertPosition": "INSERT_AT_END",
                "commands": [
                  {
                    "clickTrackingParams": "REDACTED",
                    "addToToastAction": {
                      "item": {
                        "notificationTextRenderer": {
                          "successResponseText": {
                            "runs": [
                              {
                                "text": "Playlist added to queue"
                              }
                            ]
                          },
                          "trackingParams": "REDACTED=="
                        }
                      }
                    }
                  }
                ]
              }
            },
            "trackingParams": "REDACTED"
          }
        },
        {
          "toggleMenuServiceItemRenderer": {
            "defaultText": {
              "runs": [
                {
                  "text": "Save playlist to library"
                }
              ]
            },
            "defaultIcon": {
              "iconType": "LIBRARY_ADD"
            },
            "defaultServiceEndpoint": {
              "clickTrackingParams": "REDACTED",
              "modalEndpoint": {
                "modal": {
                  "modalWithTitleAndButtonRenderer": {
                    "title": {
                      "runs": [
                        {
                          "text": "Save this for later"
                        }
                      ]
                    },
                    "content": {
                      "runs": [
                        {
                          "text": "Save favourites to your library after signing in"
                        }
                      ]
                    },
                    "button": {
                      "buttonRenderer": {
                        "style": "STYLE_BLUE_TEXT",
                        "isDisabled": false,
                        "text": {
                          "runs": [
                            {
                              "text": "Sign in"
                            }
                          ]
                        },
                        "navigationEndpoint": {
                          "clickTrackingParams": "REDACTED",
                          "signInEndpoint": {
                            "hack": true
                          }
                        },
                        "trackingParams": "REDACTED"
                      }
                    }
                  }
                }
              }
            },
            "toggledText": {
              "runs": [
                {
                  "text": "Remove playlist from library"
                }
              ]
            },
            "toggledIcon": {
              "iconType": "LIBRARY_SAVED"
            },
            "toggledServiceEndpoint": {
              "clickTrackingParams": "REDACTED",
              "likeEndpoint": {
                "status": "INDIFFERENT",
                "target": {
                  "playlistId": "PLhu5kJCXdr5jCddMmLZ1jMaFpmugaNC_s"
                }
              }
            },
            "trackingParams": "REDACTED"
          }
        },
        {
          "menuNavigationItemRenderer": {
            "text": {
              "runs": [
                {
                  "text": "Save to playlist"
                }
              ]
            },
            "icon": {
              "iconType": "ADD_TO_PLAYLIST"
            },
            "navigationEndpoint": {
              "clickTrackingParams": "REDACTED",
              "modalEndpoint": {
                "modal": {
                  "modalWithTitleAndButtonRenderer": {
                    "title": {
                      "runs": [
                        {
                          "text": "Save this for later"
                        }
                      ]
                    },
                    "content": {
                      "runs": [
                        {
                          "text": "Make playlists and share them after signing in"
                        }
                      ]
                    },
                    "button": {
                      "buttonRenderer": {
                        "style": "STYLE_BLUE_TEXT",
                        "isDisabled": false,
                        "text": {
                          "runs": [
                            {
                              "text": "Sign in"
                            }
                          ]
                        },
                        "navigationEndpoint": {
                          "clickTrackingParams": "REDACTED",
                          "signInEndpoint": {
                            "hack": true
                          }
                        },
                        "trackingParams": "REDACTED"
                      }
                    }
                  }
                }
              }
            },
            "trackingParams": "REDACTED"
          }
        },
        {
          "menuNavigationItemRenderer": {
            "text": {
              "runs": [
                {
                  "text": "Share"
                }
              ]
            },
            "icon": {
              "iconType": "SHARE"
            },
            "navigationEndpoint": {
              "clickTrackingParams": "REDACTED",
              "shareEntityEndpoint": {
                "serializedShareEntity": "REDACTED",
                "sharePanelType": "SHARE_PANEL_TYPE_UNIFIED_SHARE_PANEL"
              }
            },
            "trackingParams": "REDACTED"
          }
        }
      ],
      "trackingParams": "REDACTED",
      "accessibility": {
        "accessibilityData": {
          "label": "Action menu"
        }
      }
    }
  },
  "flexColumnDisplayStyle": "MUSIC_RESPONSIVE_LIST_ITEM_FLEX_COLUMN_DISPLAY_STYLE_TWO_LINE_STACK",
  "navigationEndpoint": {
    "clickTrackingParams": "REDACTED",
    "browseEndpoint": {
      "browseId": "VLPLhu5kJCXdr5jCddMmLZ1jMaFpmugaNC_s",
      "browseEndpointContextSupportedConfigs": {
        "browseEndpointContextMusicConfig": {
          "pageType": "MUSIC_PAGE_TYPE_PLAYLIST"
        }
      }
    }
  },
  "itemHeight": "MUSIC_RESPONSIVE_LIST_ITEM_HEIGHT_TALL"
}

… items

- handles autogenerated albums instead of returning an error for invalid uploader url
- extracts uploader url of playlists too using another method
- getStreamCount() now returns ITEM_COUNT_UNKNOWN because no info is included in the JSON
@TobiGr TobiGr added YouTube Service, https://www.youtube.com/ enhancement New feature or request labels Jul 28, 2025
Copy link
Copy Markdown
Contributor

@TobiGr TobiGr left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

DId not test, but code looks code for the JSON you provided

Copy link
Copy Markdown
Member

@litetex litetex left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Codestyle

@Stypox
Copy link
Copy Markdown
Member Author

Stypox commented Jul 28, 2025

@litetex fixed, thanks!

@TobiGr TobiGr merged commit a5fcc7d into TeamNewPipe:dev Jul 29, 2025
4 checks passed
@Stypox Stypox deleted the fix-ytm-albums-playlists branch July 29, 2025 13:35
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

enhancement New feature or request YouTube Service, https://www.youtube.com/

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants