VaporwaveGenerator/README.md

125 lines
3.0 KiB
Markdown
Raw Normal View History

2020-03-09 17:01:26 +00:00
# vaporwave generator 旺育栄
2020-03-10 15:15:47 +00:00
2020-03-10 18:13:12 +00:00
A music + image + video (+art soon, I promise) generator bodged together using code from various sources. Runs on Python 3. VHSVideo option is really really slow (Seconds per frame is 7.)
2020-03-09 16:55:20 +00:00
2020-03-09 17:22:09 +00:00
```
2020-03-10 18:18:06 +00:00
usage: main.py [-h] [-M] [-P] [-V] [-v] [-i INPUT] [-o OUTPUT]
2020-03-09 17:22:09 +00:00
2020-03-10 18:18:06 +00:00
| V A P O R W A V E || G E N E R A T O R |
2020-03-09 17:22:09 +00:00
optional arguments:
-h, --help show this help message and exit
-M, --music generate v a p o r w a v e music
2020-03-10 15:15:47 +00:00
-P, --picture generate VHS Style image
2020-03-10 18:18:06 +00:00
-V, --video VHS Style Video
-v, --version show program version
2020-03-09 17:22:09 +00:00
-i INPUT, --input INPUT
2020-03-10 18:18:06 +00:00
-o OUTPUT, --output OUTPUT
Output for specifying output video
2020-03-09 17:22:09 +00:00
```
2020-03-31 13:13:38 +01:00
If the program gives an error for sox, try running `ulimit -n 999'`. You may also need to run `chmod +x get-beats`
2020-03-10 14:26:36 +00:00
2020-03-10 15:15:47 +00:00
## Demo
### M U S I C
2020-03-14 14:07:54 +00:00
Sample Album:
https://www.bandlab.com/programming_psychic/albums/844f21a0-fa65-ea11-a94c-0003ffd19c0f
2020-03-10 15:15:47 +00:00
### V H S I M A G E
2020-03-10 15:21:52 +00:00
#### Input
2020-03-10 15:15:47 +00:00
2020-03-10 15:21:52 +00:00
![](assets/in-vhs.jpg?raw=true "Input VHS")
#### Output
![](assets/out-vhs.jpg?raw=true "Output VHS")
2020-03-10 15:15:47 +00:00
2020-03-10 18:13:12 +00:00
### V H S V I D E O
2020-03-10 18:18:06 +00:00
See `in.mp4` and `out.mp4` in the `assets` folder
2020-03-10 18:13:12 +00:00
2020-03-11 05:51:58 +00:00
#### Input
![](assets/in.gif?raw=true "Input Video")
#### Output
2020-03-11 05:53:29 +00:00
![](assets/out.gif?raw=true "Output Video")
2020-03-11 05:51:58 +00:00
2020-03-09 16:55:20 +00:00
## Installation
This was tested on macOS Catalina ( so should work on almost all macOS versions).
Windows is unsupported at this time ( I need to find a way to use aubio's python module)
### Dependencies
#### Linux
```
2020-03-10 18:13:12 +00:00
sudo apt install ffmpeg ffprobe libavl1 sox
2020-03-09 16:55:20 +00:00
pip install -r requirements.txt
```
#### macOS
Make sure you have brew installed
```
brew install noah # I would have had to re-compile the executeable :(
brew install sox
pip install -r requirements.txt
2020-03-10 12:39:34 +00:00
```
2020-03-09 16:55:20 +00:00
## Usage
2020-03-10 15:15:47 +00:00
### M U S I C
#### YouTube URL
2020-03-09 16:55:20 +00:00
```
2020-03-09 17:22:09 +00:00
python3 main.py -M -i <YOUTUBE_URL>
2020-03-09 16:55:20 +00:00
```
2020-03-10 15:15:47 +00:00
#### Song Title
2020-03-09 16:55:20 +00:00
```
2020-03-09 17:22:09 +00:00
python3 main.py -M -i Song Title
2020-03-09 16:55:20 +00:00
```
2020-03-10 15:15:47 +00:00
### V H S I M A G E S
`python3 main.py -P -i "image.jpg"`
2020-03-10 18:13:12 +00:00
### V H S V I D E O
`python3 main.py -V -i "video.mp4" -o "output.mp4"`
2020-03-09 16:55:20 +00:00
## Bugs
2020-03-10 18:13:12 +00:00
This project is a result of bodging and therefore has tons of bugs which need to be ironed out. I need to swat some bugs in the VHSVideo file.
There might be a problem with the generated video not having audio, for that run the following
`ffmpeg -i video.mp4 -vn -acodec copy output-audio.aac`
2020-03-10 18:18:06 +00:00
`ffmpeg -i output.mp4 -i output-audio.aac -c copy output-with-audio.mp4`
2020-03-10 18:13:12 +00:00
2020-03-09 16:55:20 +00:00
## To-Do
2020-08-11 05:22:24 +01:00
- [ ] Move away from using os.system calls, and use Python modules instead ( Looking at you, Sox and aubio)
2020-08-19 08:14:48 +01:00
- [x] Clean the Code
2020-08-11 05:22:24 +01:00
- [ ] Add Artwork Generator
- [x] VHS Picture Styler ( Added in v1.5 )
- [x] Add Video Generator
2020-08-19 08:14:48 +01:00
- [x] Add Custom Date to VHS Styler
2020-03-09 16:58:43 +00:00
## Credits
@WJLiddy His repo `Macintech` forms the base code for the music generator
2020-03-09 17:22:09 +00:00
2020-03-10 15:15:47 +00:00
@felipecustodio Using his repo `virtualdreamsbot` YouTube DL code ( Hopefully I will be able to integrate this project as a Telegram Bot)
2020-03-14 14:07:54 +00:00
@Ragex04 His repo `VHS_BingImages` forms the base code for the VHS Image Styler