https://github.com/simonrw/youtube-queuer
https://github.com/simonrw/youtube-queuer
Last synced: over 1 year ago
JSON representation
- Host: GitHub
- URL: https://github.com/simonrw/youtube-queuer
- Owner: simonrw
- License: mit
- Created: 2018-05-15T09:33:11.000Z (about 8 years ago)
- Default Branch: master
- Last Pushed: 2021-04-20T17:39:06.000Z (about 5 years ago)
- Last Synced: 2025-02-06T08:45:15.875Z (over 1 year ago)
- Language: Python
- Size: 66.4 KB
- Stars: 0
- Watchers: 2
- Forks: 0
- Open Issues: 4
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Youtube-queuer
Download lots of videos using `youtube-dl`, but allow queueing them up.
## Usage
```sh
$ ytq add 'https://www.youtube.com/watch?v=mxlpQMJt8XA' -o /tmp
```
```sh
$ ytq add 'https://www.youtube.com/watch?v=atoqchvXkSU' -o /tmp
```
```sh
$ ytq list
1. Factorio: Entry Level to Megabase Ep 40: ROBOT FEEDING FRENZY - Tutorial Series Gameplay
```
```sh
$ ytq delete 1
Stopping download for "Factorio: Entry Level to Megabase Ep 40: ROBOT FEEDING FRENZY - Tutorial Series Gameplay"
```
## Implementation
* `ytq` binary with CLI
* `ytq-worker` binary which performs actual download
* `ytqd` webserver handling communication
* `sqlite3` database handling state
* Communication over HTTP/JSON
### Request cycle
#### Workers
Workers request new data from `ytqd` by accessing the url:
`GET /worker/next`. This returns the correct arguments for the next command.
#### CLI
The CLI inserts a new set of arguments with:
`POST /cli/new` and the body contains the required info