Skip to main content

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)

Project description

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

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

karaoke_generator-0.6.0.tar.gz (8.0 kB view details)

Uploaded Source

Built Distribution

karaoke_generator-0.6.0-py3-none-any.whl (8.3 kB view details)

Uploaded Python 3

File details

Details for the file karaoke_generator-0.6.0.tar.gz.

File metadata

  • Download URL: karaoke_generator-0.6.0.tar.gz
  • Upload date:
  • Size: 8.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.11.9

File hashes

Hashes for karaoke_generator-0.6.0.tar.gz
Algorithm Hash digest
SHA256 75263f5cfda4da5dc611c25cf7b875b767e78c0dee992285e32c70ee0c231d53
MD5 5c4fdd8b09706bdde86e1c008a908adb
BLAKE2b-256 4d0d9e88b87e5149d51e1e57a50d1fa078edf8bfb31567339ba8931c90e88f52

See more details on using hashes here.

File details

Details for the file karaoke_generator-0.6.0-py3-none-any.whl.

File metadata

File hashes

Hashes for karaoke_generator-0.6.0-py3-none-any.whl
Algorithm Hash digest
SHA256 baeb6b574fdf7cfbcdde25369e387a2e0843ddcde7b2930eaa80954a8f753baf
MD5 ac0e191b553461e012cc373ec04a3f24
BLAKE2b-256 95090910f3cb6406a1c59f8b25b09a0ec82fb352e1df787cf060ef1b9fd1f1ca

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page