Showing posts with label bemused. Show all posts
Showing posts with label bemused. Show all posts

Tuesday, 10 July 2007

Bemused support in Totem

Should have been a one-day quick hack, ended up taking 2 or 3 if I include the research into the (poor) alternatives.

Behold! Totem now includes a plugin allowing it to run as a Bemused server. This means you can connect your phone/PDA/Palm to Totem, and use it to control playback.

First you'll need Totem SVN trunk, and compile with the Bluetooth library headers installed. More importantly, you'll need a client:
Install the application (left as an exercise to the reader), connect to Totem, and voila! Ready to control.

Now, a comment on the protocol and the code of the different implementations:
  • The protocol disagrees with the native Linux implementation (INFOACK, or INF2ACK for INF2 requests? Null-terminated strings, where?)
  • Doesn't handle Unicode properly, all over the place, the protocol uses NULL characters strings as end of strings, which breaks UTF-8
  • More protocol problems, what happens with empty playlists is a mystery
  • bemused.java has problems handling empty playlists, and truncates movie titles when not.
  • JAMSE isn't open source, and seems hell-bent on using skins, and different clients for different mobile phones ("skin" size)
  • The Totem code is horrible, doesn't handle directory listings (the protocol for directory listings is utter shite, and unworkable), leaks all over the place, and is a security risk (seriously).
That said, the competition isn't that great either, as it doesn't even run (although I just notice that my e-mail was actually answered, but didn't get to my inbox). I guess I'll be looking into Remuco soon.