Modern Chrome Web Extension and Firefox Browser Addon to Download HLS Videos using Native FFmpeg.
This Web Extension is a Work in Progress, may contain bugs or not work as expected.
All Chromium Based Browsers can install the extension from the Chrome Web Store.
Warning
This web extension requires a client app to use native FFmpeg.
Source: https://github.com/cssnr/hls-downloader-client
- Windows: install-win.exe
- Linux: install-linux.deb
- macOS: install-macos.pkg
- Download
*.m3u8videos using a native ffmpeg application. - Shows the total number of streams found on the toolbar icon.
- Sends a notification when complete you can click on to open the download folder.
- Playlist parsing to display correct qualities and combine audio/video.
Tip
Don't see your feature here? Request one on the Feature Request Discussion.
- Streams with separate video and audio will show up as 2 downloads.
- Stream quality display is not yet accurate.
- Error handling and messages needs improving.
Tip
Don't see your issue here? Open one on the Issues.
You can pin the Addon by clicking the Puzzle Piece, find the Web Extension icon, then;
Chrome, click the Pin icon.
Firefox, click the Settings Wheel and Pin to Toolbar.
To open the options, click on the icon (from above) then click Open Options.
For help using the web extension, utilize any these resources:
- Q&A Discussion: https://github.com/cssnr/hls-video-downloader/discussions/categories/q-a
- Request a Feature: https://github.com/cssnr/hls-video-downloader/discussions/categories/feature-requests
If you are experiencing an issue/bug or getting unexpected results, use:
- Report an Issue: https://github.com/cssnr/hls-video-downloader/issues
- Chat with us on Discord: https://discord.gg/wXy6m2X8wY
- Provide General Feedback: https://cssnr.github.io/feedback
Logs can be found inspecting the page (Ctrl+Shift+I), clicking on the Console, and; Firefox: toggling Debug logs, Chrome: toggling Verbose from levels dropdown.
To support this project, see the Contributing section at the bottom.
Quick Start
First, clone (or download) this repository and change into the directory.
Second, install the dependencies:
npm installFinally, to run Chrome or Firefox with web-ext, run one of the following:
npm run chrome npm run firefoxAdditionally, to Load Unpacked/Temporary Add-on make a manifest.json and run from the src folder, run one of the following:
npm run manifest:chrome npm run manifest:firefoxChrome: https://developer.chrome.com/docs/extensions/get-started/tutorial/hello-world#load-unpacked
Firefox: https://extensionworkshop.com/documentation/develop/temporary-installation-in-firefox/
For more information on web-ext, read this documentation.
To pass additional arguments to an npm run command, use --.
Example: npm run chrome -- --chromium-binary=...
Install the requirements and copy libraries into the src/dist directory by running npm install. See gulpfile.js for more information on postinstall.
npm installTo create a .zip archive of the src directory for the desired browser run one of the following:
npm run build npm run build:chrome npm run build:firefoxFor more information on building, see the scripts section in the package.json file.
- Build or Download a Release.
- Unzip the archive, place the folder where it must remain and note its location for later.
- Open Chrome, click the
3 dotsin the top right, clickExtensions, clickManage Extensions. - In the top right, click
Developer Modethen on the top left clickLoad unpacked. - Navigate to the folder you extracted in step #3 then click
Select Folder.
- Build or Download a Release.
- Unzip the archive, place the folder where it must remain and note its location for later.
- Go to
about:debugging#/runtime/this-firefoxand clickLoad Temporary Add-on... - Navigate to the folder you extracted earlier, select
manifest.jsonthen clickSelect File. - Optional: Open
about:configsearch forextensions.webextensions.keepStorageOnUninstalland set totrue.
If you need to test a restart, you must pack the addon. This only works in ESR, Development, or Nightly. You may also use an Unbranded Build: https://wiki.mozilla.org/Add-ons/Extension_Signing#Unbranded_Builds
- Run
npm run build:firefoxthen useweb-ext-artifacts/{name}-firefox-{version}.zip. - Open
about:configsearch forxpinstall.signatures.requiredand set tofalse. - Open
about:addonsand drag the zip file to the page or choose Install from File from the Settings wheel.
Please consider making a donation to support the development of this project and additional open source projects.
Additionally, you can give a 5-star rating on Google or Mozilla and star this project on GitHub.
Other Web Extensions I have created and published:
- Link Extractor
- Open Links in New Tab
- Auto Auth
- Cache Cleaner
- HLS Video Downloader
- Obtainium Extension
- SMWC Web Extension
- PlayDrift Extension
- ASN Plus
- Aviation Tools
- Text Formatter
For a full list of current projects visit: https://cssnr.github.io/






