Making a karaoke video
What happens when the song you want is not available to purchase as a cdg
file ? You need to make it yourself.
This guide will not be exhaustive as its a complete separate topic, you should probably get in touch with the karaoke maker community.
Finding the song
You need to purchase the original song as an mp3
file, be careful to buy only from store that are DRM-FREE. If you have a physical release of the song you'd like you can rip the CD.
Stores that are known to sell DRM-FREE songs:
- Quobuz Store (The store, NOT THE STREAMING SERVICE !)
- ProStudioMasters
- HDTracks
- 7digital
Creating the kbp file
First you'll need Karaoke Builder Studio to make your lyrics. The trial version is enough if you want to make transparent videos (the recomended format), but the full version is required if you want to compile them to cdg
files.
I'm not going into details about this software, you should check out tutorials on how to use it.
Getting the instrumental and vocals separated
Now that you have your lyrics synchronised, you need to get both instrumental.mp3
and vocals.mp3
.
To do so, you can use the Ultimate Vocals Remover software that works pretty well.
Having the vocals is optional but that will let you have a guide when singing, since you will be able to set the vocals track's volume separately from the instrumental.
Converting the kbp to ass
The .ass
files are pretty advanced subtitles. That's the trick we're going to use to generate our video.
For this, we will use kbp2ass.
$ kbp2ass -f project.kbp > lyrics.ass
Creating the video
Now that we have everything we need, we can use ffmpeg
to create the final video.
$ ffmpeg -f lavfi -i "color=c=000000@0:r=60:s=1920x1080,format=rgba" -i instrumental.mp3 -c:v libvpx-vp9 -vf ass=lyrics.ass:alpha=1 -shortest instrumental.webm
Explanation:
-f lavfi
: Use custom filters.-i "color=c=000000@0:r=60:s=1920x1080,format=rgba"
: Add as an input a video that is 1080p with transparent background.-i instrumental.mp3
: Add the instrumental audio for the song.-c:v libvpx-vp9
: Encode the output as a VP9 video.-vf ass=project.ass:alpha=1
: Add the subtitle file while retaining the alpha properly.-shortest
: Makes the background to be the same duration as the mp3.instrumental.webm
: The output file.
Conclusion
Now you have your video file and your vocals file, you can add the song in PartyNexus as usual.