Skip to content
Knickedi edited this page Oct 23, 2011 · 2 revisions
  • Banshee extension tested with latest banshee version (2.2.0) - the old one was 1.5 or so.
  • The original code was far from clean. It used OOP languages in an non-OOP way. The implementation itself was a little bit error-prone and just crashed on unexpected behavior (for example server-side connection loss) - fixed that.
  • The communication was inefficient: It already used sockets but sent whole strings instead of just bits - overhead removed and implemented a clean API. On Java side the communication was performed synchronously instead in a background task - fixed that.
  • Synchronization of banshee on client side was inefficient because it sent the whole song database. The new synchronization strips unneeded data and reaches a compression rate of at least 1:30 (e.g my ~14,7MB database was compressed to ~0.36KB - giant gain for network communication).
  • The improved communication considers even the fact of remotely controlling through Internet instead WiFi (e.g. dynamic DNS service) and so it sparingly reduces the needed data amount which will be sent and received while communicating via mobile network. When you have a synchronized database it won't even request track data from server.
  • Furthermore I improved the UI of the remote controller app.
Clone this wiki locally