Skip to content

Conversation

@1Lucas1apk
Copy link
Member

Changes

Write here about the changes you've made

Why

Write here why you think this should be merged

Checkmarks

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

Additional information

If you have any additional information, write it here

1Lucas1apk and others added 30 commits December 21, 2025 16:07
Added a 'close' event listener to the socket when a session is successfully resumed to ensure

proper cleanup and prevent resource leaks. Also updates connection metrics on resume.
…ation

improve: add source-specific configuration validation
Added _buildReadableTime and _buildPublishedAtFromTimestamp to resolve
ReferenceError during track resolution.
- Implement BilibiliSource supporting Video, Audio, Live, and Bangumi.
- Implement BilibiliLyrics for subtitle support.
- Add FlvDemuxer and update streamProcessor to handle FLV streams (required for Bilibili Live).
- Add sessdata configuration in config.default.js for premium content access.
- Ensure robust stream handling with proper headers and API fallback to web platform.
- Implement GeniusSource as a media resolver/mirror.
- Extract direct media links from Genius pages using robust JS execution extraction.
- Implement mirror logic to fallback to search if direct links are missing or fail.
- Enhance metadata by resolving direct links via other enabled sources during playlist loading.
- Enable Genius source in config.default.js and fix lyrics configuration.
- Force immediate URL refresh on aborted range requests.
- Skip local retries for aborted connections to prevent playback stalls.
- Implement automatic access token refresh using session cookies.
- Add native HLS stream management with AES-128 decryption and TS-to-MP3 demuxing.
- Expand support for various VK link formats (playlists, albums, artists, user audios).
- Improve scraping resilience and URL pattern recognition.
- Fix syntax errors and ensure code quality with Biome linting.
- Add vkmusic configuration options to config.default.js.
- Implement Amazon Music source with metadata resolution.
- Support track detection in albums via trackAsin (handles encoded ampersands).
- Extract author, artwork, and ISRC from JSON-LD and HTML fallbacks.
- Remove all comments from the source file.
- Implement Pinterest source with metadata resolution using PinResource API.
- Support video extraction (MP4) from standard Pins and Idea Pins.
- Implement robust loadStream using PassThrough for consistent playback.
- Replace manual buffer concatenations with RingBuffer to reduce GC pressure.
- Implement buffer pooling in AudioMixer for zero-copy mixing.
- Optimize VolumeTransformer using Int16Array for faster sample processing.
- Add robust EBML parsing and byte tracking in WebmOpusDemuxer.
- Fix missing constants and add getSource helper to SourceManager.
Implement BufferPool to reuse RingBuffers and reduce GC pressure.
Split player updates (fast) from stats updates (slow) to reduce IPC overhead.
Configurable statsUpdateInterval (default 30s) for websocket updates.
Metrics collection interval adapts to 5s if metrics are enabled.
Lazy instantiate filters in FiltersManager to reduce initial memory
footprint per player. Cache volume multiplier calculations in
VolumeTransformer to reduce CPU usage during stable playback.
Ensure the cloudflared child process is terminated with SIGKILL on
NodeLink exit, SIGINT, or SIGTERM to avoid orphan processes that require
manual intervention.
- Added intelligent cost scoring based on CPU, lag, and player states.
- Implemented proactive scaling using configurable thresholds.
- Set high process priority for workers to improve audio stability.
- Added event loop lag monitoring and stats reporting.
- Updated config.default.js with new scaling parameters.
Refactor WebmOpus demuxer to use BigInt for VINT parsing to prevent

integer overflows during seeking. Add safety checks for invalid tag

sizes to handle garbage data gracefully. Harden RingBuffer methods

against invalid inputs. Fix ReferenceError in utils.js by removing

undefined instance argument in recursive call.
in short words: enabling this allows the encoder
to send minimal packtes during silence periods,
which saves bandwidth especially on unstable networks.
Can even help saving CPU. Does not affect audio quality.
1Lucas1apk and others added 29 commits January 13, 2026 17:23
This fixes a crash on bun when searching.
Just a maintance commit, this updates to their lastest's versions
This commit adds the support for audiomack search & playback,
uses admsearch/audiomack by default.
this commit adds support for the shazam source, which will be mirrored from the
youtube or apple music source, has search support with shsearch and szsearch
Signed-off-by:   AV <134554554+southctrl@users.noreply.github.com>
Signed-off-by:   AV <134554554+southctrl@users.noreply.github.com>
Signed-off-by:   AV <134554554+southctrl@users.noreply.github.com>
Signed-off-by: Lucas Morais Rodrigues <76886832+1Lucas1apk@users.noreply.github.com>
Fixed "Invalid track object" error in loadLyrics endpoint &
Moved chapter loading to worker queue, improve's the speed.
This commit fixes the Cannot read properties of undefined (reading 'sourceName') for loadlyrics
this should fix sometimes artWorkUrl always beign null.
@1Lucas1apk 1Lucas1apk merged commit 5db246c into v3 Jan 16, 2026
5 of 6 checks passed
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.

7 participants