Skip to main content

mvmake

This script takes a music file and a directory of videos (clips) then creates a music video.

Installation

The script is pypi available. You can install via pip.

python3 -m pip install mvmake

Usage

Simple example

mvmake --music ./my_new_song.wav --clips ./path/to/clips my_music_video.mp4

Help output

$ mvmake --help

usage: mvmake [-h] --music MUSIC --clips CLIPS [--extensions EXTENSIONS]
              [--method [{onset,beat,union}]] [--width WIDTH]
              [--height HEIGHT]
              output

Snap some clips to music. This script takes an audio file and a directory
where video clips are located then tries to match the given clips to the given
audio.

positional arguments:
  output                The name of the output file.

optional arguments:
  -h, --help            show this help message and exit
  --music MUSIC         Path to the music file.
  --clips CLIPS         Path to the directory containing the clips. All the
                        clips will be read from the directory recursively.
  --extensions EXTENSIONS
                        The enabled extensions of the clips. Files with other
                        extensions will not be used. (default: ['mp4', 'avi',
                        'mov'])
  --method [{onset,beat,union}]
                        Select to what to snap the clips. Currently there are
                        three methods supported: onset (snap clips to the
                        starting of each note), beat (snap clips to each
                        beat), union (snap clips to both of these) (default:
                        onset)
  --width WIDTH         The width of the output. If given without height, the
                        clips aspect ratio will be kept. (default: None)
  --height HEIGHT       The height of the output. If given without width, the
                        clips aspect ratio will be kept. (default: None)

Samples

Sample 1: Fall In Love

This sample is constructed from DigEx - Fall In Love and clips from Beeple-Crap - übersketch.
The default onset detection method was used. (--method onset)

https://user-images.githubusercontent.com/20663815/158896029-0c74840e-c5bd-4fcd-89ad-8f33d66c8ace.mp4

Licenses

Song: DigEx - Fall In Love [NCS Release]
Music provided by NoCopyrightSounds
Free Download/Stream: http://NCS.io/FallInLove
Watch: http://youtu.be/

VJ Loops: Beeple-Crap - übersketch
https://www.beeple-crap.com/vjloops

Sample 2: Talk

This sample is constructed from Beave - Talk and clips from Beeple-Crap - four.color.process.
The beat detection method was used. (--method beat)

https://user-images.githubusercontent.com/20663815/158896309-87955912-f3b9-47c1-9c2e-a29a9b80ef51.mp4

Licenses

Song: Beave - Talk [NCS Release]
Music provided by NoCopyrightSounds
Free Download/Stream: https://ncs.io/Talk
Watch: https://youtu.be/uZi8_rnqgHg

VJ Loops: Beeple-Crap - four.color.process
https://www.beeple-crap.com/vjloops

Changelog

Learn about the latest improvements.

Contributing

Contributing Guidelines

Read through our contributing guidelines to learn about our submission process, coding rules and more.

Want to Help?

Want to report a bug, contribute some code, or improve documentation? Excellent! Read up on our guidelines for contributing and then check out one of our issues labeled as help wanted or good first issue.

License

The project is licensed under MIT License. Read more here.

Shoutout to these guys 🎉💖

This project is based on the following packages, check them out!

Metadata

Release files for mvmake 1.0.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for mvmake 1.0.0
File Size Uploaded
mvmake-1.0.0.tar.gz 5.7 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for mvmake 1.0.0
File Interpreter ABI Platform
mvmake-1.0.0-py3-none-any.whl Python 3 none any Details

Total release size: 12.5 kB

Release files / mvmake-1.0.0.tar.gz

Download URL mvmake-1.0.0.tar.gz
Size 5.7 kB
Tags Source
SHA-256 checksum
How to use checksums
341bf4d186896060e8f642b4b3331087657a6b04c86485373cb487ab65fd6b57
BLAKE2b-256 checksum
How to use checksums
96473e706faab31ef9b4b50a01ae329a48f26e77d5824b6269fb430bf47bc157
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.8.0 pkginfo/1.8.2 readme-renderer/34.0 requests/2.26.0 requests-toolbelt/0.9.1 urllib3/1.26.9 tqdm/4.31.1 importlib-metadata/4.11.3 keyring/23.5.0 rfc3986/2.0.0 colorama/0.4.4 CPython/3.7.2

Release files / mvmake-1.0.0-py3-none-any.whl

Download URL mvmake-1.0.0-py3-none-any.whl
Size 6.8 kB
Tags Python 3
SHA-256 checksum
How to use checksums
1054127e0f13e2f455838c1a22c47f47c0b69bea3c3a77a10a504cb6f32aecbe
BLAKE2b-256 checksum
How to use checksums
9d9eb383e9747d81c44507b3c82f2a6da2a73e5f09bd567888c877b48adba290
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.8.0 pkginfo/1.8.2 readme-renderer/34.0 requests/2.26.0 requests-toolbelt/0.9.1 urllib3/1.26.9 tqdm/4.31.1 importlib-metadata/4.11.3 keyring/23.5.0 rfc3986/2.0.0 colorama/0.4.4 CPython/3.7.2

Release history Release notifications | RSS feed

This release

1.0.0 This release

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page