Kodi Community Forum

Full Version: HOW-TO play any video as a background when playing your favorite songs
You're currently viewing a stripped down version of our content. View the full version with proper formatting.
The bad news first:

Quote:With the start of every song, your video will restart as well. You will momentarily see the XBMC interface when the video restarts.

You will need a nightly build of Frodo. This will not work on Frodo RC2 or earlier since the required patches were merged yesterday.


It's almost Xmas and you wonder whether or not it is possible to have a nice video of a fireplace on your tv while XBMC plays your for favorite Xmas songs. Well, so did I. And I discovered that we're not alone in this. Actually, this question pops up quite often. It's actually amazing that it's not a standard feature Wink

Currently, XBMC does not seem to have the ability to play a video using one of the different Visualization options that come with XBMC. So we're going to use something else; Karaoke.

To enable Karaoke, go to System->Settings->Music->Karaoke and enable karaoke support.

Next, open your advancedsettings.xml in your userdata directory. This file may or may not exist. If it does not exist, then create it.

Copy the <karaoke></karaoke> stuff from below into your advancedsettings.xml file. Replace the path attribute of the <defaultbackground> tag to point to the video you would like to play.
(In case you're starting with a new advancedsettings.xml file, then you will need to copy the <advancedsettings></advancedsettings> tags as well.)

Code:
<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>



Restart XBMC so that it will load the new advancedsettings.xml file.

For XBMC to recognize a song as a karaoke song (and play the video), the song needs a lyrics file with the exact same filename, but with .lrc extension. The lyrics file also needs to be bigger than 0 bytes but it does not need to contain any lyrics. An empty space suffices.

For example (on Linux) when you would like to create a lyrics file for all you mp3's in the current directory, you could execute the following on the command line:
Code:
for f in *.mp3; do echo "$f.lrc" | echo " " >> "`sed -e 's/.mp3//g'`"; done


Next you need to scan your 'karaoke' songs into the library. Once the songs are in the library, they are automatically recognized as karaoke songs which then means that when you play such a song, the video will automatically start to play as well.

Have fun!
Bumping this for 2013, because someone's going to ask about it again :D
I am so ridiculously happy to see this! It hadn't even occurred to me (yet) but it's just what I need for my XmasBMC project.

Many thanks to the OP, and extra thanks to you, Ned, for the timely bump and wiki-fication. This is almost as big as MassIV's snow machine.
Won't this just play the one same video over and over?

Why haven't they implemented this yet? It's been a (minor) feature request for years and years Sad
(2013-12-24, 09:40)0perator00 Wrote: [ -> ]Won't this just play the one same video over and over?

Why haven't they implemented this yet? It's been a (minor) feature request for years and years Sad

If you want different videos for each song then you can just use the normal karaoke (wiki) features with dummy lyrics files. This thread is specifically about looping a single song with multiple videos.

Tons of things are requested, and video with a different music track is fairly low on the list for most people.
Bumping again for 2014 :D
hi guys,
found this wonderful thread and it is exactly what i am looking for .... just to find out that since kodi v16 karaoke is not supported anymore.

also the correspoding wiki article
http://kodi.wiki/view/Archive:HOW-TO:Pla...ound_video
says that this solution ist outdated.

Did you guys find another solution, yet ? Can you give me a hint ?
(2016-10-23, 12:05)mephisto20 Wrote: [ -> ]hi guys,
found this wonderful thread and it is exactly what i am looking for .... just to find out that since kodi v16 karaoke is not supported anymore.

also the correspoding wiki article
http://kodi.wiki/view/Archive:HOW-TO:Pla...ound_video
says that this solution ist outdated.

Did you guys find another solution, yet ? Can you give me a hint ?

No work around as of yet. For those of us that want this feature we're waiting on a/some devs to help us out.