<commit_before>```

 _ __ ___  _   _  __ _  ___ _ __
| '_ ` _ \| | | |/ _` |/ _ \ '_ \
| | | | | | |_| | (_| |  __/ | | |
|_| |_| |_|\__,_|\__, |\___|_| |_|
                  |___/
```

A music video generator based on rhythm

Use it to brainstorm AMVs, montages, and more! [Check it out](https://youtu.be/ZlTR6XULe5M).

Built with [moviepy](https://github.com/Zulko/moviepy) programmatic video editing, and [librosa](https://github.com/librosa/librosa) audio analysis.

## Basic Strategy

1. Provide an audio file and a set of video files.

2. Perform rhythm analysis to identify beat locations.

3. Generate a set of random video segments syced to the beat.

4. Discard segments with scene changes, detectable text (e.g. credits), or low contrast (i.e. solid colors, very dark scenes).

5. Combine the segments in order, overlay the audio, and output the resulting music video.

## Installation

**1. Install [Miniconda](http://conda.pydata.org/miniconda.html)**

Miniconda helps create an isolated virtual environment and install the project's dependencies.

**2. Download this repository**

```
git clone https://github.com/scherroman/mugen
```

**3. Create the project's virtual environment**<commit_msg>Add badges and document supported platforms<commit_after>```

 _ __ ___  _   _  __ _  ___ _ __
| '_ ` _ \| | | |/ _` |/ _ \ '_ \
| | | | | | |_| | (_| |  __/ | | |
|_| |_| |_|\__,_|\__, |\___|_| |_|
                  |___/
```

[![tests](https://img.shields.io/github/workflow/status/scherroman/mugen/Test?label=tests&logo=github)](https://github.com/scherroman/mugen/actions/workflows/test.yml)
[![coverage](https://img.shields.io/codecov/c/github/scherroman/mugen?label=coverage&logo=codecov)](https://codecov.io/gh/scherroman/mugen)
[![license](https://img.shields.io/github/license/scherroman/mugen?color=blue)](https://github.com/scherroman/mugen/blob/master/LICENSE)
[![Ko-Fi](https://img.shields.io/badge/buy%20me%20a%20coffee-F16061?logo=ko-fi&logoColor=white)](https://ko-fi.com/scherroman)

A music video generator based on rhythm

Use it to brainstorm AMVs, montages, and more! [Check it out](https://youtu.be/ZlTR6XULe5M).

Built with [moviepy](https://github.com/Zulko/moviepy) programmatic video editing and [librosa](https://github.com/librosa/librosa) audio analysis.

## Basic Strategy

1. Provide an audio file and a set of video files

2. Perform rhythm analysis to identify beat locations

3. Generate a set of random video segments syced to the beat

4. Discard segments with scene changes, detectable text (e.g. credits), or low contrast (i.e. solid colors, very dark scenes)

5. Combine the segments in order, overlay the audio, and output the resulting music video

## Installation

Mugen is supported across Linux, macOS, and Windows.

**1. Install [Miniconda](http://conda.pydata.org/miniconda.html)**

Miniconda helps create an isolated virtual environment and install the project's dependencies across platforms.

**2. Download this repository**

```
git clone https://github.com/scherroman/mugen
```

**3. Create the project's virtual environment**
{'fraction_non_alphanumeric': 0.14452365521710953, 'fraction_numerical': 0.010045366169799093, 'mean_word_length': 3.979032258064516, 'pattern_counts': {'":': 0, '<': 3, '<?xml version=': 0, '>': 3, 'https://': 16, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 2, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '3882942', 'n_tokens_mistral': 1078, 'n_tokens_neox': 1018, 'n_words': 268}