The primary issue is that MPD manages its own database. This would be fine if it weren't for SLUT's intended position at the bottom of the BAPS2 stack, below the database level (and University Radio York already has its own database, with its own management tools).
Secondly, the use of MPD in SLUT requires SLUT to connect on the TCP level to three separate servers, controlling each via a separate protocol from that used to tell SLUT what to do - this indirection would provide overhead as well as added frustration for the Computing team, who will have to ensure that four server processes are running in tandem.
There has, therefore been a design change:
- SLUT will now use an internal playback engine, based on the Java Sound system using its Service Provider Interface (SPI) to support a variety of file types. MP3, FLAC and WAV will definitely be supported, and these (alongside WMA, which will likely be unsupportable) are among the most requested formats by users of the original system.
- The SPI playback engine will be inherited from a previous project I started on github while learning Java, JOPS (Java Originated Presenter System), which was itself an early exploration into how BAPS could be replaced by a Java-based system. This, itself, was IIRC based on sample code. =P
- This will remain abstracted from the controller set, such that it can be replaced with a more efficient playback engine later.
Hopefully this will allow SLUT to be up and running before the end of the summer whilst keeping it manageable and cohesive.
No comments:
Post a Comment