Skip to main content

downleth: Download ETH streams

Project description

Lecture Downloader ETH

Download livestreams, watch livestreams locally (and reliably!)

As always, respect the privacy of the people being recorded and do not publicise anything you record without first requesting permission to do so. downleth's main use case is recording livestreamed lectures and having them immediately available, especially if one is unable to attend lectures in a certain timespan.

Installation

Install downleth:

pip install downleth

Make sure you have ffmpeg installed.

Usage

To schedule a lecture recording based on a config:

downleth --log-level INFO exec sample-config.json

For structuring your configuration file, see sample-config.json. There is also a config.schema.json JSON schema.

Development

pipenv is used. Use:

PIPENV_VENV_IN_PROJECT=1 pipenv install

The vscode task might help you get started with debugging.

TODO

  • Automatically generate configuration file per semester from myStudies, fetch room numbers, etc. automatically
  • Allow spinning up local server to watch lectures without web client
  • Allow configuring codecs (save storage)
  • Automatically cut breaks somehow
  • Automatically detect start/end of lecture (might sometimes end a bit later or start a bit earlier)
  • Consider holidays
  • Use GitHub actions to publish, maybe GitVersion to version it
  • Allow downloading recordings form video.ethz.ch

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

downleth-1.2.tar.gz (9.4 kB view hashes)

Uploaded Source

Built Distributions

downleth-1.2-py3.10.egg (21.0 kB view hashes)

Uploaded Source

downleth-1.2-py3-none-any.whl (10.2 kB view hashes)

Uploaded Python 3

Supported by

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