OpenSong - Java port

Main page | Screenshots | | Sourceforge page

What is this?

Opensong is an open source lyric projection application. It is designed to be used by churches to manage lyrics, project songs, and print out chord sheets. You can find the project homepage at

What is this project?

Opensong has several limitations that currently limit its usefulness. It lacks many features found in more expensive software packages.
I have started to reimplement Opensong in a different programming language, hoping to avoid many of the issues encountered in the current implementation, adding additional features and usability improvements as I see fit.

How can I get involved?


OpensongJ isn't ready for users yet. We currently recommend Opensong or OpenLP.


As the software is currently in development, I need advanced testers to find and document bugs.
As the project is at an early stage, experience building and debugging Java application is a must. In a nutshell, experience doing the following things is really helpful:
  • Compile and run Java applications
  • Use the program until you find a bug
  • Write instructions on how to make the 'buggy' behavior happen
  • Test your instructions
  • Submit a bug report here
Before you start testing, email me so that I can notify you of a few currently known issues.


As many features are lacking, I welcome any code contributions to the project. I'd like if your code uses a similar coding style to the current code base, along with best practices for Java and production application development. The code is available from SVN at Sourceforge here.

Before you begin working on any features, please coordinate with me via email (lee (AT) to ensure that we don't waste effort working on the same features!

What is wrong with the current Opensong? (technical)

Opensong currently has the following limitations that I think will limit its current development trajectory:

How much will be changed about OpenSong?

I don't plan to change very much.

That may not sound reasonable given that I am attempting basically a complete rewrite. However, I am trying to reuse as much of the GUI design and as many concepts as possible in order to keep as much the same as possible. Much effort has gone into training users on the current OpenSong interface, into entering songs into the OpenSong format, and other non-code assets. While I will tweak the GUI as is necessary and beneficial, and work to maintain compatibility with existing operating concepts, file formats and such.

I will be adding some features hopefully pretty early in development, though I don't intend for it to be a large focus:

On a technical note, I'm currently looking at Xuggler for video capabilities. It seems that its only limitation is that it currently has problems with h264, a common video format. I currently have tested code displaying video in java, though not in a presentation.

Feature comparison

While I don't believe that Opensong needs to reach feature parity with more expensive applications to be successful, a comparison is useful at least to identify obvious areas for improvement:
Feature OpenSong (RB) OpenSong (Java) OpenLP MediaShout EasyWorship Powerpoint / OpenOffice
Cost Free / GPL Free / GPL Free / GPL2 $429 $399 $350
Project song lyrics Y Y Y Y Y Y
Project custom slides Y Y Y Y Y Y!
Fetch song lyrics from Internet / CCLI N N Y Y? Y? N
Videos in presentation N Y Y Y Y Y
Custom background images Y Y Y Y Y Y
Video backgrounds N Planned N Y Y N [1]
Dual monitor support Y In progress ? Y Y Y
Insert scripture Y Planned Y Y Y N
Print chord sheets Y Planned N N Y? N
Languages 7 English 5 ? ? Many
Bible translations 250+ (download) - 2
- 24 free
40 available
[1]: Additional paid software may allow this functionality.

Planned feature status (alpha 003)

Feature Implemented
File loading Song and set only (no Bible file)
Presentation display Yes
Video slide/background Slide only
Slide formatting No
File save No
Song/set editors In progress
Slide transitions No
Printing No
Guitar chords No