Skip to main content

KaraokeHunt: Karaoke video generator

Fully automated creation of acceptable karaoke music videos from any music on YouTube, using open source tools and AI (e.g. Whisper and MDX-Net)

PyPI version

Context

This is one experimental tool as part of the journey towards implementing the full vision for KaraokeHunt (https://karaokehunt.com).

Some of the other components include:

Idea steps

  • Fetch the requested YouTube video using yt-dlp and extract the audio to wav using ffmpeg
  • Run that audio through an ML-based vocal isolation model tuned for karaoke (e.g. UVR-MDX-NET Karaoke 2 to get high quality instrumental audio without lead vocals but retaining backing vocals
  • Run the lead vocal track through whisper-timestamped to generate a time-synced lyrics file
  • Correct the detected lyrics by fetching lyrics from a human-input source (e.g. musicxmatch/spotify using syrics, genius using lyrics-from-genius and attempting to match up segments with the whisper-heard lyrics whilst maintaining timestamps
    • Potentially also consider splitting words by syllable (e.g. using python-syllables and attempting to guess the sub-word timestamps
  • Generate a new video file using the instrumental audio and a background image, with the synced lyrics “burned” into the video at the correct timestamps
    • Lots of scope to make this really nice, e.g. adjusting kerning dynamically to fit longer lines on one screen, but also lots of gotchas e.g. super long lines needing to be split at a reasonable place
  • Publish this video to YouTube

Metadata

Release files for karaoke-generator 0.6.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 karaoke-generator 0.6.0
File Size Uploaded
karaoke_generator-0.6.0.tar.gz 8.0 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for karaoke-generator 0.6.0
File Interpreter ABI Platform
karaoke_generator-0.6.0-py3-none-any.whl Python 3 none any Details

Total release size: 16.3 kB

Release files / karaoke_generator-0.6.0.tar.gz

Download URL karaoke_generator-0.6.0.tar.gz
Size 8.0 kB
Tags Source
SHA-256 checksum
How to use checksums
75263f5cfda4da5dc611c25cf7b875b767e78c0dee992285e32c70ee0c231d53
BLAKE2b-256 checksum
How to use checksums
4d0d9e88b87e5149d51e1e57a50d1fa078edf8bfb31567339ba8931c90e88f52
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/5.1.1 CPython/3.11.9

Release files / karaoke_generator-0.6.0-py3-none-any.whl

Download URL karaoke_generator-0.6.0-py3-none-any.whl
Size 8.3 kB
Tags Python 3
SHA-256 checksum
How to use checksums
baeb6b574fdf7cfbcdde25369e387a2e0843ddcde7b2930eaa80954a8f753baf
BLAKE2b-256 checksum
How to use checksums
95090910f3cb6406a1c59f8b25b09a0ec82fb352e1df787cf060ef1b9fd1f1ca
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/5.1.1 CPython/3.11.9

Release history Release notifications | RSS feed

This release

0.6.0 This release

2 release files

0.5.1

2 release files

0.4.3

2 release files

0.4.2

2 release files

0.4.1

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