# puemos/hls-downloader

**Attribution required: if you use, quote, or summarise this content, you must credit and link back to [awesome-repositories.com](https://awesome-repositories.com/repository/puemos-hls-downloader).**

_How this analysis was created: the description and tags below were written by an AI model that read this project's README and public documentation pages; stars, license and language come straight from the GitHub API. The model does not read the source code._

2,616 stars · 301 forks · TypeScript · MIT

## Links

- GitHub: https://github.com/puemos/hls-downloader
- Homepage: https://puemos.gitbook.io/hls-downloader/
- awesome-repositories: https://awesome-repositories.com/repository/puemos-hls-downloader.md

## Topics

`chrome` `chrome-extension` `clean-architecture` `hacktoberfest` `hls` `hls-downloader` `hls-stream` `react` `redux` `redux-observable` `styled-components` `web-extension`

## Description

HLS Downloader is a browser-integrated utility designed to detect, capture, and assemble fragmented streaming media content directly from web pages. It functions as a browser extension that identifies HTTP Live Streaming manifests, allowing users to download video, audio, and subtitle tracks as complete, playable local files.

The tool distinguishes itself by performing all processing tasks entirely within the browser environment. It utilizes native browser primitives to decrypt protected media segments and reconstruct fragmented binary streams into unified files. By intercepting network traffic and parsing stream metadata, it enables users to select specific resolutions, audio languages, and subtitle tracks before initiating concurrent download operations.

The software provides comprehensive management for media capture, including automated playlist detection and manual link registration. It handles the orchestration of network requests, automatic retries, and the final muxing of media assets into portable formats. The project is distributed as a browser extension, providing a centralized interface for monitoring download progress and managing exported media files.

## Tags

### Graphics & Multimedia

- [HLS Stream Capture](https://awesome-repositories.com/f/graphics-multimedia/streaming-distribution/streaming-broadcasting/media-streaming/video-streaming/hls-streaming/hls-stream-capture.md) — Detects and saves HTTP Live Streaming video content directly from web browsers for offline viewing.
- [Playlist Downloaders](https://awesome-repositories.com/f/graphics-multimedia/streaming-distribution/streaming-broadcasting/media-streaming/playlist-aggregators/personal-playlist-managers/audio-playlist-managers/video-playlist-managers/playlist-downloaders.md) — Detects and captures HLS playlist manifests from web pages to initiate the download and assembly of fragmented media streams. ([source](https://github.com/puemos/hls-downloader/blob/master/FUNCTIONALITIES.md))
- [HLS Stream Capturers](https://awesome-repositories.com/f/graphics-multimedia/streaming-distribution/streaming-broadcasting/media-streaming/video-streaming/hls-streaming/hls-stream-capturers.md) — Provides a browser extension that detects, decrypts, and merges HLS video segments into complete local files.
- [Live Stream Detections](https://awesome-repositories.com/f/graphics-multimedia/streaming-distribution/streaming-broadcasting/media-streaming/video-streaming/hls-streaming/live-stream-detections.md) — Identifies and captures live streaming playlists automatically from active web pages. ([source](https://github.com/puemos/hls-downloader#readme))
- [Media Muxers](https://awesome-repositories.com/f/graphics-multimedia/ffmpeg-wrappers/media-muxers.md) — Combines separate audio, video, and subtitle tracks from HLS manifests into a single playable media file.
- [Browser Media Sniffers](https://awesome-repositories.com/f/graphics-multimedia/media-capture-utilities/browser-media-sniffers.md) — Sniffs network traffic to identify and capture fragmented streaming media content directly within the browser.
- [Media Format Selection](https://awesome-repositories.com/f/graphics-multimedia/media-format-selection.md) — Filters and selects specific media stream formats based on user-defined quality, resolution, and track preferences. ([source](https://github.com/puemos/hls-downloader#readme))
- [Media Track Management](https://awesome-repositories.com/f/graphics-multimedia/media-track-management.md) — Enables users to select specific audio languages, subtitle tracks, and quality levels from parsed stream metadata before downloading. ([source](https://github.com/puemos/hls-downloader/blob/master/CHANGELOG.md))
- [Stream Metadata Inspection](https://awesome-repositories.com/f/graphics-multimedia/streaming-distribution/streaming-broadcasting/media-streaming/stream-metadata-inspection.md) — Analyzes master playlists to extract technical stream properties like resolution and bitrate for informed quality selection. ([source](https://github.com/puemos/hls-downloader/blob/master/FUNCTIONALITIES.md))
- [Streaming Asset Selectors](https://awesome-repositories.com/f/graphics-multimedia/web-media-extractions/streaming-asset-selectors.md) — Enables selection of specific video resolutions, audio languages, and subtitle tracks from streaming manifests.

### Business & Productivity Software

- [Media Downloaders](https://awesome-repositories.com/f/business-productivity-software/media-downloaders.md) — Downloads fragmented video and audio segments from web pages and assembles them into complete local files.

### Development Tools & Productivity

- [Media Manifest Parsing](https://awesome-repositories.com/f/development-tools-productivity/repository-manifest-parsing/media-manifest-parsing.md) — Extracts technical metadata and segment locations from master playlist files to orchestrate media retrieval.

### System Administration & Monitoring

- [Streaming Manifest Interceptors](https://awesome-repositories.com/f/system-administration-monitoring/browser-network-request-auditors/streaming-manifest-interceptors.md) — Monitors network traffic to automatically identify and capture streaming manifest files.

### Web Development

- [Client-Side Binary Assembly](https://awesome-repositories.com/f/web-development/client-side-binary-assembly.md) — Reconstructs fragmented media streams into complete files by concatenating binary chunks directly within the browser.
- [Media Processing](https://awesome-repositories.com/f/web-development/browser-based-data-processing/media-processing.md) — Performs resource-intensive decryption and merging of media segments locally within the browser.

### Content Management & Publishing

- [Media Muxers](https://awesome-repositories.com/f/content-management-publishing/media-management/media-merging-tools/media-muxers.md) — Combines separate audio and video tracks into a single file and muxes subtitles into the final output. ([source](https://github.com/puemos/hls-downloader/blob/master/CHANGELOG.md))

### Networking & Communication

- [Concurrent Segment Downloaders](https://awesome-repositories.com/f/networking-communication/concurrent-file-downloaders/concurrent-segment-downloaders.md) — Manages parallel network requests for media segments with integrated retry logic and task queueing.

### Security & Cryptography

- [Media Decryption](https://awesome-repositories.com/f/security-cryptography/data-decryption/media-decryption.md) — Processes encrypted media segments using decryption keys to ensure protected streams are successfully reconstructed. ([source](https://github.com/puemos/hls-downloader/blob/master/CHANGELOG.md))
- [Web Crypto API Integrations](https://awesome-repositories.com/f/security-cryptography/web-crypto-api-integrations.md) — Utilizes native browser cryptographic primitives to securely process and unlock encrypted media segments.
