Skip to content

feat: add short URL and multi-page video support#175

Merged
1Lucas1apk merged 3 commits intoPerformanC:devfrom
ParrotXray:v3
Feb 14, 2026
Merged

feat: add short URL and multi-page video support#175
1Lucas1apk merged 3 commits intoPerformanC:devfrom
ParrotXray:v3

Conversation

@ParrotXray
Copy link
Copy Markdown
Contributor

Changes

Short URL Support

  • Added resolveShortUrl() method to handle b23.tv short links
  • Automatically resolves short URLs before pattern matching in resolve()

Multi-Page Video Handling

  • Implemented extractPageParameter() to parse ?p=X from URLs
  • loadSingleVideo() - Returns single track for videos with one part
  • loadVideoPage() - Returns specific page when ?p=X is specified
  • loadVideoAnthology() - Returns playlist for multi-page videos without page parameter

Anti-Bot Protection

  • Added generateBuvid3() and generateBuvid4() methods
  • Implemented buildCookieHeader() to generate required cookies

Why

Users frequently share b23.tv links from mobile apps, but they weren't working.
Many Bilibili videos have multiple parts (e.g., music albums, tutorial series), users expect to either play a specific part or get the full playlist.

Checkmarks

  • The modified endpoints have been tested.
  • Used the same indentation as the rest of the project.
  • Still compatible with LavaLink clients.

Additional information

The source currently has an upstream stream aborted issue, making seek unusable.

1Lucas1apk and others added 3 commits February 7, 2026 11:39
Signed-off-by: Lucas Morais Rodrigues <76886832+1Lucas1apk@users.noreply.github.com>
Signed-off-by: Lucas Morais Rodrigues <76886832+1Lucas1apk@users.noreply.github.com>
@1Lucas1apk 1Lucas1apk changed the base branch from v3 to dev February 14, 2026 19:02
@1Lucas1apk
Copy link
Copy Markdown
Member

Thank you very much for your contribution :)

@1Lucas1apk 1Lucas1apk merged commit 7a30dfd into PerformanC:dev Feb 14, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants