Skip to content

sam-morin/DownTheTube-backend-python

Repository files navigation

Logo

DownTheTube | Backend

A simple YouTube download web GUI | Frontend Repo

Report Bug · Request Feature . Build/Develop


The Python backend for a basic YouTube viderooo downloader web GUI that runs in a docker container

Background:

There aren't really any self-hosted YouTube video downloader web applications that I was able to find on Github. I only searched for a few minutes though, so I'm sure there are some out there, maybe.

Objectives:

  • Query: Query a video via a YouTube URL and return information about the video.
  • Download: Download a video to either the server or the server and the browser. Allow choosing the quality.

Implemented:

  • Query: Query a video via a YouTube URL and return information about the video.
  • Download: Download a video to either the server or the server and the browser. Allows for choosing the quality. None of the available stream resolutions were progressive except for 360p. Bummer.
    1. Download video stream at the requested resolution
    2. Download the highest quality audio stream
    3. Stitch these friends together using ffmpeg
    4. Leave the video on the server in the ./DownTheTube-backend-python/downloaded-videos folder
    5. Pass it back to the browser if requested

Running

For anything other than development, you'd probably be better off using Docker Compose

Go to DownTheTube Docker Compose repo

Production

  1. Clone the source and CD
git clone https://github.com/sam-morin/DownTheTub-backend-python.git && cd DownTheTub-backend-python
  1. Build image
docker build . -t downthetube-backend
  1. Run the image
docker run -d --restart unless-stopped -p SOME_PUBLIC_PORT:5001 -v $(pwd)/server/downloaded-videos:/app/downloaded-videos downthetube-backend

Development

  1. Clone the source and CD
git clone https://github.com/sam-morin/DownTheTube-backend-python.git && cd DownTheTube-backend-python
  1. Install required pip modules
pip install -r requirements.txt
  1. Run the server using Flask
python server.py

About

A simple YouTube video download web GUI - Python Backend

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published