Retain image on song change

edited October 2017 in General Discussion
Hi everyone,
I am new to OpenLP, basically looking for a final solution for our community needs. For now, we use very simple presentation software, but we would like to shift to something new that would provide musicians with chords view.

OpenLP is awesome! It supports custom stages (I am frontend developer, so something really close to me), so chords view is already solved. But basic usage confuses me a lot. What I am used to for now is very simple usage:
1. search for a song, double-click on it will move it to preview
2. search for background image, double-click will move it to preview (under song lyrics)
3. double-click on preview will go live
4. in live view, I can simply click on a verse and it will replace current lyrics (but background image retains)

And this is a feature that seems to be missing in OpenLP. We really are so spontaneous during worship, that we don't have all service prepared in advance. Nevermind, because one can simply add new song to service manager and then push it live. But anyhow I try, I don't see any option to pick a background image along with song. Options I found:
1. find image in media manager and click Replace live background (but image disappears after new song)
2. use Theme Manager, but I really only want to replace background image and this managers asks me for font sizes, alignments, etc. Really not handy.


  • edited October 2017
    Hi @senky,

    The only way to really do it is to apply a theme to each song specifically (your #2 above, I believe) and set OpenLP to use per-song themes rather than per-service or global.  I know that's not ideal, and it means a lot of work in between services if you want to have different backgrounds each time.

    Apart from that, I have 2 suggestions for a workaround:
    #1 - Report a new bug (label it as a Feature Request) on the Bug Tracker (  This is the easy but slow option, as OpenLP is coded entirely by volunteers.
    #2 - Write a custom utility to apply random themes to each song, and run it in between services when OpenLP is not running.  This is the more immediate but much harder option.  You'd need to work with songs.sqlite file (sqlite3).  On Windows it's in the %AppData%\Roaming\openlp\data\songs\ folder.  You'd open the songs table and edit the theme_name column for each song.  Valid theme names, I believe, are the folders (and matching .png thumbnails) located in OpenLP's ..\data\themes\ folder.  This is what I would do if I were in your position, but it may not be a great solution for you.

    You could also potentially create an on-the-fly theme changer and submit it (through the bug tracker) to be added to a future version of OpenLP.  That's way above my pay grade, however, so I couldn't help you with that at all.

    EDIT - I just re-read the subject thread.  I thought you wanted to have a different image for each song when I wrote the above.  If you want to set 1 image for the service regardless of song, that's MUCH easier.  Just configure OpenLP to use per-service themes, and create a new service containing only your first song, set the service's theme, and save it.  All songs you add from then on should have the same image.  (Test this.)  If not, you'll have to add the song to the service manager first by right-clicking the song from the Songs Library and choosing the Add to Service option.  THEN you can select it from the Service Manager to send it Live with the correct image.
  • 1. Set up a theme to look the way you want it to
    2. Set it as your global theme, and set OpenLP to use only your global theme

  • ^ That would give you 1 image/theme applied to everything, and if that's what you want, it's by far the best way to go.
Sign In or Register to comment.