Archive:HOW-TO:Play music with background video
- not to be confused with music videos
Due to the nature of XBMC, there currently isn't an easy way in the interface to play a muted video and have a different music file play at on top of that. However, clever trick with XBMC's karaoke feature (thanks leechguy!) has given one possible way to do this to hold us over, as described on this page.
- Why would I want to do this?
- Choosing a default background video for karaoke, which is what this feature was originally added for.
- An alternative to music visualizations
- Waterfalls? Waterfalls.
- Christmas music while showing a video of a log fireplace
1.1 Enable kareoke
1.2 Prepare a background video
To make it easy to figure out the file path to your video, go ahead and copy the video to your userdata folder. Note the name of the video for the next step, as you will need to note this in the
<defaultbackground> section of your advancedsettings.xml file.
1.3 Prepare your advancedsettings.xml file
Where it says
<defaultbackground>, be sure to replace the file name with the name of your actual background video from the previous step.
<advancedsettings> <karaoke> <!-- Music-lyrics delay for CDG format lyrics in SECONDS. Floating number, may be negative. --> <syncdelaycdg>0.0</syncdelaycdg> <!-- Music-lyrics delay for LRC format lyrics in 1/10 seconds. Floating number, may be negative. --> <syncdelaylrc>0.0</syncdelaylrc> <!-- If set to true, when the songs are added to the library, XBMC will automatically replace the song genre by "Karaoke" if the song has associated lyrics. Default is false. --> <alwaysreplacegenre>true</alwaysreplacegenre> <!-- If set to true, when the music-lyrics delay was modified while playing using subtitle delay buttons, the delay value for this song will be stored, and restored when the song is played next time. Default is true. --> <storedelay>true</storedelay> <!-- When karaoke songs are added to the library during scans, an autoincrement number is automatically assigned to each song, starting from the value specified below. Default starts from 1. --> <autoassignstartfrom>1</autoassignstartfrom> <!-- If set to true (default), the background for CDG songs is always empty (plain color) no matter what setting is set in defaultbackground below. When setting this to false, then one can see through the background and see the video or visualization.--> <nocdgbackground>true</nocdgbackground> <!-- Sets default background mode. Type could be "none", "vis" for visualisation, "image" or "video". For image/video types the "path" parameter should specify the image or video file to play. --> <defaultbackground type="video" path="special://masterprofile/karaokevideobg.avi"/> <!-- If non-zero, specifies the time in seconds left before the end of the current song when a window will pop up informing you about the next played song. The window does not pop up if there is no next song, or it is not a karaoke song --> <nextsongpopuptime>0.0</nextsongpopuptime> </karaoke> </advancedsettings>
1.4 Create dummy lyrics files
In order to use the karaoke feature in XBMC there must be lyric files along side the music files. Since we don't actually need to see the lyrics, and we're just tricking XBMC into using the karaoke feature, we can just make dummy files instead.
These files can be simple plain text files that are named after the song file, but with the
.lrc file extension. For example,
whatever.mp3 would have
whatever.lrc in the same folder. The file needs to be more than 0bytes, so you might need to put some spaces in there.
- Linux users
for f in *.mp3; do echo "$f.lrc" | echo " " >> "`sed -e 's/.mp3//g'`"; done
1.5 Add songs into XBMC's music library
Now you just need to scan the music into XBMC's library. If you haven't done this before, see Adding music to the library. The songs with lyric files will automatically be seen as karaoke songs.
1.6 Play songs and enjoy
When you play any of the songs with the dummy lyric file the video will play in the background.