Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/cssnr/hls-downloader-client
HLS Video Downloader Client
https://github.com/cssnr/hls-downloader-client
Last synced: 2 months ago
JSON representation
HLS Video Downloader Client
- Host: GitHub
- URL: https://github.com/cssnr/hls-downloader-client
- Owner: cssnr
- License: gpl-3.0
- Created: 2024-06-03T06:11:53.000Z (7 months ago)
- Default Branch: master
- Last Pushed: 2024-06-16T23:00:33.000Z (7 months ago)
- Last Synced: 2024-06-17T23:54:18.978Z (7 months ago)
- Language: Python
- Homepage: https://github.com/cssnr/hls-video-downloader
- Size: 87.9 KB
- Stars: 2
- Watchers: 1
- Forks: 1
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
[![Chrome Web Store Version](https://img.shields.io/chrome-web-store/v/mpmiiaolodhanoalpjncddpmnkbjicbo?label=chrome&logo=googlechrome)](https://chromewebstore.google.com/detail/hls-video-downloader/mpmiiaolodhanoalpjncddpmnkbjicbo)
[![Mozilla Add-on Version](https://img.shields.io/amo/v/hls-video-downloader?label=firefox&logo=firefox)](https://addons.mozilla.org/addon/hls-video-downloader)
[![GitHub Release Version](https://img.shields.io/github/v/release/cssnr/hls-downloader-client?logo=github)](https://github.com/cssnr/hls-downloader-client/releases/latest)
[![Build](https://github.com/cssnr/hls-downloader-client/actions/workflows/build.yaml/badge.svg)](https://github.com/cssnr/hls-downloader-client/actions/workflows/build.yaml)
[![Quality Gate Status](https://sonarcloud.io/api/project_badges/measure?project=cssnr_hls-downloader-client&metric=alert_status)](https://sonarcloud.io/summary/new_code?id=cssnr_hls-downloader-client)# HLS Video Downloader Client
HLS Video Downloader Native Messaging Client for Windows, Linux and macOS.
- Windows: [install-win.exe](https://github.com/cssnr/hls-downloader-client/releases/latest/download/install-win.exe)
- Linux: [install-linux.deb](https://github.com/cssnr/hls-downloader-client/releases/latest/download/install-linux.deb)
- macOS: [install-macos.pkg](https://github.com/cssnr/hls-downloader-client/releases/latest/download/install-macos.pkg)> [!NOTE]
> On macOS you need to Ctrl+Click or Right-Click the .pkg and then choose Open to install.Web Extension: https://github.com/cssnr/hls-video-downloader
## Browsers
Tested and working in the following browsers:
- Firefox
- Waterfox
- Edge
- Chrome
- Chromium
- Brave
- Opera
- Vivaldi
- Ghost## Installing
Download and run the installer for your operating system from the latest
[release](https://github.com/cssnr/hls-downloader-client/releases/latest).## Building
### Windows
> [!NOTE]
> The Windows installer uses [Inno Setup](https://jrsoftware.org/isinfo.php)
> which must be manually installed.Note: FFmpeg must be placed in `dist/ffmpeg.exe`
Build the App:
```shell
python -m pip install -r requirements.txt
pyinstaller --noconfirm client.spec
python manifest.py
```Create the Installer:
```shell
iscc.exe client.iss
```### Linux
Note: FFmpeg must be placed in `dist/ffmpeg`
```shell
#python -m pip install -r requirements.txt
python manifest.py
bash build-linux.sh
```### MacOS
> [!NOTE]
> The macOS installer uses [Packages](http://s.sudre.free.fr/Software/Packages/about.html)
> which must be manually installed.Note: FFmpeg must be placed in `dist/ffmpeg`
Build the App:
```shell
python -m pip install -r requirements.txt
pyinstaller --noconfirm client.spec
python manifest.py
```Create the Package:
```shell
bash build-mac.sh
```## More Info
Windows requires corresponding registry entries for the manifest files (see location links below).
Windows and macOS requires packaging the app with `pyinstaller` to bundle python.
Manifest files must be renamed to `org.cssnr.hls.downloader.json` on Linux and macOS.
Manifest key `path` must be set to the absolute path to the `client` location.
Manifest files must be placed in specific directories:
- Firefox: https://developer.mozilla.org/en-US/docs/Mozilla/Add-ons/WebExtensions/Native_manifests#manifest_location
- Chrome: https://developer.chrome.com/docs/extensions/develop/concepts/native-messaging#native-messaging-host-locationIf the `client` location is not writable by the user and a writable `log.txt`
must be created at that location due to the current logging configuration in the [client.py](src%2Fclient.py).The `client.py` must be executable by the user with Python installed and working.