Skip to main content

A collection of tools for downloading M3U8 video streams.

Project description

LunaTV Tools

A collection of Python scripts for downloading M3U8 video streams.

Features

  • Fast Downloads: The main script, luna_downloader.py, uses multi-threading to download video segments concurrently.
  • Automatic Merging: Automatically merges the downloaded .ts segments into a single .mp4 file using ffmpeg.
  • URL Utilities: Includes other scripts for checking and handling stream URLs.

Requirements

  • Python 3.8+
  • ffmpeg: Must be installed and available in your system's PATH.

Setup & Installation

This project is packaged as a library and can be installed using uv.

  1. Create & Activate Virtual Environment:

    # Create the virtual environment
    uv venv
    
    # Activate it (on macOS/Linux)
    source .venv/bin/activate
    
  2. Install the lunatv package: Installing the package in editable mode (-e) is recommended for development. This will also automatically install all dependencies from pyproject.toml and make the command-line tool available.

    uv pip install -e .
    

Usage

After installation, a command-line tool luna-downloader will be available in your environment.

luna-downloader

The tool will then prompt you to enter the M3U8 URL and the desired output filename.

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

lunatv-0.1.0.tar.gz (31.4 kB view details)

Uploaded Source

Built Distribution

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

lunatv-0.1.0-py3-none-any.whl (4.6 kB view details)

Uploaded Python 3

File details

Details for the file lunatv-0.1.0.tar.gz.

File metadata

  • Download URL: lunatv-0.1.0.tar.gz
  • Upload date:
  • Size: 31.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for lunatv-0.1.0.tar.gz
Algorithm Hash digest
SHA256 e588d48e1af5d0a558c96361537acf4d409b93c1bf8bb610b1921c0388fe0ca8
MD5 f29d9d7808ef93ecf4360d40ba13664d
BLAKE2b-256 b786d1c485252cb03bec6f8332cba48aef3bbe3ae7bec832e3f2c6c0bce8dca7

See more details on using hashes here.

File details

Details for the file lunatv-0.1.0-py3-none-any.whl.

File metadata

  • Download URL: lunatv-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 4.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for lunatv-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 0ab05820f8026950a03cd8730b78cfe66fd3eef0a4a1755050a9bd2ec8b34e30
MD5 35338071a84cfd440b49fd961108ae53
BLAKE2b-256 1e203bb63a519a1f844edbac6a3888edd91df94812f47de8253892a6ae4447a3

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