Skip to content

yaarasegre/VideoThat

 
 

Repository files navigation

VideoThat

Automagically Generate a Music Video for Your Input Audio

2nd place DataHack winner 🥈, September 2019

VideoThat will automagically generate the perfect video compilation that fits impeccably to the theme song of your choice. The algorithm’s default choice is to create a video clip from Taylor Swift’s videos to an Arctic Monkey song.

This project was created as part of DataHack 2019 Israel, read all about it in our blog post 👾

The algorithm


Installation

Fork VideoThat repository to your file system

System requirements

Ubuntu/debian

sudo apt install ffmpeg

macOS

brew install ffmpeg

Install requirements file

pip3 install -r requirements.txt

Install the newest version of youtube-dl

pip3 install --upgrade youtube-dl

Code pipeline

Create Data-Base (db) of video clips

To start downoading all of the videoclips and create a data-base, open the terminal go to the repository location and write

note: the following command will download ~1.5GB to your directory and can take a while

./download-db.sh

Detect all of the scene cuts from the db you just created

./scenedetect_all.sh

Run create_scene_db.py to create a .pkl df unified file of all the scenes from the db (this creates scene_db.pkl and song_db.pkl)

python3 create_scene_db.py

Run choose_scenes.py to run the algorithm which chooses taylor swift scenes from the db to match to a song (creates chosen_scenes.pkl)

python3 choose_scenes.py

Run build_video.py to create the video file from the chosen scenes

python3 build_video.py

The video videoThat.mp4 has been successfully created and added to your directory


Code structure

Code structure


That's Us

That's Us!

Yael Daihes GitHub LinkedIn

Yaara Arkin GitHub LinkedIn

Orian Sharoni GitHub LinkedIn

Roee Shenberg GitHub LinkedIn

Dalya Gartzman GitHub LinkedIn


P.S.

Our prise money was donated to TAMI - Tel Aviv Makers Isocratic hackerspace

About

DataHack 2019 Israel

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Jupyter Notebook 100.0%