Skip to main content

Command line tool for downloading HLS streams with FFmpeg

Project description

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.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

viihdexdl-0.16.tar.gz (9.5 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

viihdexdl-0.16-py3-none-any.whl (9.3 kB view details)

Uploaded Python 3

File details

Details for the file viihdexdl-0.16.tar.gz.

File metadata

  • Download URL: viihdexdl-0.16.tar.gz
  • Upload date:
  • Size: 9.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.0 CPython/3.12.4

File hashes

Hashes for viihdexdl-0.16.tar.gz
Algorithm Hash digest
SHA256 7461ea7a6fe72bffe16903e83cfa6fd55dc4a7632466c9363f8bfe9593291316
MD5 edfd2a3884e137831ba5ce6d89c6d1b9
BLAKE2b-256 ea23746efa27ec98b1a455917794fe24647317bb82468c02e6ccc21c958b1adb

See more details on using hashes here.

File details

Details for the file viihdexdl-0.16-py3-none-any.whl.

File metadata

  • Download URL: viihdexdl-0.16-py3-none-any.whl
  • Upload date:
  • Size: 9.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.0 CPython/3.12.4

File hashes

Hashes for viihdexdl-0.16-py3-none-any.whl
Algorithm Hash digest
SHA256 842cd50d2967dbe31d2275631daaea953b6e91c2a5c045209b0168707655a716
MD5 6dadcd36c8cc45434df485d09fe3992e
BLAKE2b-256 a80a245618ef6d354a38765af8ed55ebd0becace408af96367fd4d96cca61cef

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page