Go to file
Navan Chauhan 9c51ff2a79 bumping version to 2.5 2020-08-19 12:44:48 +05:30
assets added GIFs 2020-03-11 11:20:08 +05:30
src added custom date and time option 2020-08-19 12:44:08 +05:30
.deepsource.toml Add .deepsource.toml 2020-07-07 14:55:16 +00:00
.gitignore Initial Commit 2020-03-09 22:25:20 +05:30
README.md bumping version to 2.5 2020-08-19 12:44:48 +05:30
generating-vaporwave.pdf uploaded report 2020-03-14 21:12:27 +05:30
get-beats Initial Commit 2020-03-09 22:25:20 +05:30
main.py bumping version to 2.5 2020-08-19 12:44:48 +05:30
requirements.txt added opencv as a dependency 2020-03-31 16:48:57 +05:30

README.md

vaporwave generator 旺育栄

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.)

usage: main.py [-h] [-M] [-P] [-V] [-v] [-i INPUT] [-o OUTPUT]

| V A P O R W A V E || G E N E R A T O R |

optional arguments:
  -h, --help            show this help message and exit
  -M, --music           generate v a p o r w a v e music
  -P, --picture         generate VHS Style image
  -V, --video           VHS Style Video
  -v, --version         show program version
  -i INPUT, --input INPUT
  -o OUTPUT, --output OUTPUT
                        Output for specifying output video

If the program gives an error for sox, try running ulimit -n 999'. You may also need to run chmod +x get-beats

Demo

M U S I C

Sample Album:

https://www.bandlab.com/programming_psychic/albums/844f21a0-fa65-ea11-a94c-0003ffd19c0f

V H S I M A G E

Input

Output

V H S V I D E O

See in.mp4 and out.mp4 in the assets folder

Input

Output

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

sudo apt install ffmpeg ffprobe libavl1 sox
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

Usage

M U S I C

YouTube URL

python3 main.py -M -i <YOUTUBE_URL>

Song Title

python3 main.py -M -i Song Title

V H S I M A G E S

python3 main.py -P -i "image.jpg"

V H S V I D E O

python3 main.py -V -i "video.mp4" -o "output.mp4"

Bugs

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 ffmpeg -i output.mp4 -i output-audio.aac -c copy output-with-audio.mp4

To-Do

  • Move away from using os.system calls, and use Python modules instead ( Looking at you, Sox and aubio)
  • Clean the Code
  • Add Artwork Generator
  • VHS Picture Styler ( Added in v1.5 )
  • Add Video Generator
  • Add Custom Date to VHS Styler

Credits

@WJLiddy His repo Macintech forms the base code for the music generator

@felipecustodio Using his repo virtualdreamsbot YouTube DL code ( Hopefully I will be able to integrate this project as a Telegram Bot)

@Ragex04 His repo VHS_BingImages forms the base code for the VHS Image Styler