ViihdexDL
A command line tool for downloading HLS streams with multiple audio and subtitle tracks (designed especially for Elisa Viihde recordings) using FFmpeg.
Requirements
Python 3 and libraries langcodes and Requests are required.
FFmpeg is needed to download streams.
Installation
Use pip to install ViihdexDL and its dependencies.
pip install -U viihdexdl
Usage
viihdexdl "URL" "FILENAME" [OPTIONS]
The URL must point to a HLS master playlist.
Options include:
-h, --help show this help message and exit
-v, --verbose print FFmpeg command
-c CONFIG FILE, --config CONFIG FILE
config file
-s, --subonly download subtitles only
-e, --extsubs download subtitles to external files
-m, --muxsubs mux subtitles to video file
-a AUDIO LANGUAGES, --audio AUDIO LANGUAGES
audio languages, e.g. "fin, en"
-u SUBTITLES, --subtitles SUBTITLES
subtitle languages
-b, --begin start live stream from the first segment
-l LIVE_START_INDEX, --live_start_index LIVE_START_INDEX
start live stream from segment
-mw MAX_WIDTH, --max_width MAX_WIDTH
maximum video width in pixels
-mh MAX_HEIGHT, --max_height MAX_HEIGHT
maximum video height in pixels
-mb MAX_BITRATE, --max_bitrate MAX_BITRATE
maximum video bitrate (bps)
-r VARIANT, --variant VARIANT
select variant
-y, --overwrite overwrite output files without asking
-n, --never never overwrite existing files
Settings
Download settings are defined in settings.ini which in Windows systems is located in %APPDATA%\viihdexdl. Preferred languages are set using two-letter ISO 639-1 or three-letter ISO 639-2 codes.
audio languages: Languages of audio tracks to be downloaded.
If left empty, all available tracks are downloaded.
subtitle languages: Languages of subtitle tracks to be downloaded.
If left empty, all available tracks are downloaded.
default audio: Languages of the audio tracks for which 'default' flag can be set. Preferably
the track with the language listed first is flagged, but if no track of that
language is downloaded then the second listed is checked etc.
default subtitle: Languages of the audio tracks for which 'default' flag can be set.
visual impaired: Language of the audio track for which 'visual impaired' flag
is set (only works with .mkv files).
hearing impaired: Language of the subtitle track for which 'hearing impaired' flag
is set (onlyworks with .mkv files).
maximum bandwidth: The variant with the highest bitrate below this limit (bit/s) is downloaded.
If left empty or set to 0, the best variant is downloaded.
maximum width: Maximum width (pixels) for video.
maximum height: Maximum height (pixels) for video.
file extension: File extension of the output file. Use mkv (preferred) or mp4.
external subtitles Download subtitles to external files.
rfc 5646 to iso 639: Convert RFC 5646 language (e.g. nl-NL) tags to ISO 639-1/2 language codes.
iso 639: Type of language codes to use in metadata.
Use alpha_2 (nl), alpha_3 (nld) or alpha_3b (dut).
ffmpeg options: FFmpeg global and input options.
ffmpeg video codec: FFmpeg video codec options.
ffmpeg audio codec: FFmpeg audio codec options.
overwrite: Overwrite output files without asking.
never overwrite: Never overwrite existing files.
Metadata
Release files for viihdexdl 0.17.post1
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | |
|---|---|---|---|---|
| viihdexdl-0.17.post1.tar.gz | 9.6 kB | Without provenance | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| viihdexdl-0.17.post1-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 19.1 kB
Release files / viihdexdl-0.17.post1.tar.gz
| Download URL | viihdexdl-0.17.post1.tar.gz |
|---|---|
| Size | 9.6 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
80dfa29ee4a23f88333c1cbe953e8d11662aa9f94a563b75623d00108011138f
|
|
BLAKE2b-256 checksum How to use checksums |
f3d0af66707250afc12b52b33c166f2fe09e0fd80591aa5db0389ade92fdadcc
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.0.1 CPython/3.13.1
|
Release files / viihdexdl-0.17.post1-py3-none-any.whl
| Download URL | viihdexdl-0.17.post1-py3-none-any.whl |
|---|---|
| Size | 9.5 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
00ed31311719b9c205db6cc4b1eed91b21b24b5d3111ddcfc32f797b74d31a6a
|
|
BLAKE2b-256 checksum How to use checksums |
c252f436b983f2ec00777d9c77c3bb8328231ede8c62f51396c6bce6ae1300e8
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.0.1 CPython/3.13.1
|
Security for viihdexdl 0.17.post1
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.