Skip to content

v2.1.0

Choose a tag to compare

@HydeYYHH HydeYYHH released this 04 Apr 22:20

🎉 Breaking v2.1.0 is Released!

Thanks for all your patience. In this version, we introduce three major features: mini-player, local queue, and playlist download, along with many minor features, optimizations and fixes.

What's New

Local queue

You can find the entry for the local queue in the button above the player. When enabled, the local queue allows you to fully control the playback order and hides the YouTube playlist entry. When disabled, videos follow the YouTube playlist order. We also fixed the bug where playback did not follow the playlist.

There are three ways to add videos to the local queue:

  • "Add to local" in the three-dot menu at the bottom-right of the video card
  • "Add to local" in the preview dialog when long-pressing a video card
  • "Add to local" button next to the download button on the playback page

You can also drag to reorder videos in the local queue.

Playback control after video ends

Richer controls are now available after playback ends. By default, it plays the next video, but you can switch to loop, pause at end, or shuffle.
These controls follow the local queue when enabled; otherwise, they apply to the playlist when available.

Mini-player

You can leave the playback page and continue watching in mini-player mode. The mini-player supports dragging, resizing, playback controls, and returning to the playback page. Pressing back now exits to mini-player instead of returning to the previous video. If you need the previous video, use the prev button. When in a queue or playlist, prev plays the previous video; otherwise, it returns to the last navigated video.

Playlist download

You can download an entire playlist directly. Currently, only uniform quality and audio track are supported, with the default set to highest quality.
Two download entries are provided:

  • Download button in local queue → download local queue
  • Download button in YouTube playlist → download YouTube playlist

Video card long-press preview

Long-press a video card to open a preview dialog showing thumbnail, full title, and uploader. From the dialog, you can share the link, download the video, or add it to the queue.

Download preference memory

Download settings reuse the last configuration. If the selected quality is unavailable, it automatically falls back to the next available option (e.g., 1080p → 720p).

Swipe gestures

  • Swipe up/down in center → enter/exit fullscreen
  • Left 1/3 → brightness
  • Right 1/3 → volume

Shorts

Add long-press 2x and ads blocking.

Others

  • Swipe left/right on the player to seek.
  • Extension entry one-click reset supports.
  • Added timestamp navigation (#132) .

Optimizations

Performance and caching

Network resources now use a more aggressive caching strategy. The extractor adopts separated long-term and short-term caches, while streaming data uses short-term caching. JavaScript polling is optimized with frequency limits for timer and interval usage to reduce overhead.

403 and login improvements

Improved PO token and extractor handling for 403-like issues. Added dedicated error messages for "not a robot" login checks, and logging into YouTube no longer requires an external browser. To reduce buffering for live stream, the selected resolution is treated as the maximum, and the actual playback resolution may dynamically adjust to a lower level if needed.

UI & interaction

Various UI and interaction improvements across the app for better consistency and usability.

Fixes

  • Fix player controller initialization flicker
  • Fix playback not following playlist order
  • Fix playlist overlap issue #179
  • Fix search suggestion overlap issue

Notes

Most features are implemented via JavaScript injection and NewPipeExtractor. All code is open source. Some features may break and may not be fixed immediately. The repository already contains a large amount of native, script, and bridge code and is hard to maintain, but the project is still under long-term maintenance.

Contributors

@halcyra @HydeYYHH @CodeLab-SK @Korb

What's Changed

New Contributors

Full Changelog: v2.0.2...v2.1.0