Tag Archives: Code

Ocarina 6.3

I officially released Ocarina 6.3 this morning!  Changes include:

  • Improve unit tests.
  • Finish up Doxygen documentation for core/.
  • Separate tag database into multiple files.
  • Move Gstreamer from core/ to gui/.
  • Various gui code cleanups.

The most interesting change this release is probably the gstreamer move.  Ocarina 6.2 added an audio “driver” interface to allow for faking playback when running unit tests.  This release takes the concept one step farther and moves all of gstreamer into the gui, simplifying many things.  My hope is that this will make it easier to port Ocarina to Android or OS X in the future.

Ocarina 6.3 can be downloaded here.

Ocarina 6.1

Another month, another Ocarina release.  And we didn’t have to wait a whole year this time!  My main focus for this release was finishing the backend code cleanups that I started before releasing 6.0.  I’m much happier with how the code looks and I now have unit tests for every file in core/.

This release removes support for importing an Ocarina 5 library.

Download Ocarina 6.1 here!

Ocarina 6.0

I have not had an Ocarina release in almost a year and a half.  The last year has been busy (more on that later), but I haven’t forgotten about my pet-project!

I started working on a new rewrite of Ocarina in May 2013.  I created previous versions by writing whatever features I felt like implementing at the time.  There was no plan, and it didn’t take too long to transition into an ugly hackjob.  I felt like the code would have been almost impossible to update without breaking everything, so I started fresh.

For the first few weeks I only worked on a design document.  This allowed me to stay focused during development and gave me a chance to think out features before writing a lot of code.  I really like this approach, and I recommend it to everybody before starting off on a project.  I plan to keep this document updated as much as possible.

This is also the first version of Ocarina to have unit tests.  I like these so far, since I can now focus on testing a single component without needing to have a functional GUI.  I plan to keep these updated as much as possible, too.

Ocarina 6.0 is still Linux only and  I don’t have the time, resources, knowledge or interest to support a Windows or OSX port.  I am willing to work with anybody ambitious enough to attempt a port!  Let me know …

Other notable changes:

  • I continued to refine the UI (compared to Ocarina 5.10)
  • I made the switch to GTK-MM and GStreamer 1.2
  • I added support for “banned” and “favorites” playlists
  • I created a .desktop file so Ocarina will show up in your “applications menu”

Download Ocarina 6.0 here!