Using SMIL for server<->client communication

Registered by Rui Bernardino

From the A-SMIL wiki:
SMIL (pronounced "smile") stands for "Synchronized Multimedia Integration Language" and defines scheduling ("Synchronized"), video, audio, images, text ("Multimedia"), multi-zone screen layout ("Integration") in an XML-based text file format ("Language"). It is an open specification (royalty-free to use) created by the World-Wide Web Consortium, the same organization responsible for defining the HTML language, an open standard for the Internet. Products that utilize SMIL are available from leading companies such as Adobe, Apple, Microsoft, and Real Networks.

Blueprint information

Needs approval
Series goal:
Beta Available
Milestone target:
Started by
Rui Bernardino

Related branches



What would that achieve though. I took a quick look through the spec for SMIL and there's big holes for functionallity we already have - ie it wouldn't be possible to express all current Xibo layouts using it.

Can you give a use case as to why this is useful to the Xibo community at large?

SMIL is a W3C standard and supported by Adobe, Apple, Real, etc. On digital signage industry, SCALA seems to have embraced it and there are 'SMIL player appliances' available on the market. Others will follow, I guess. Joining SMIL would surely bring more users and support to the Xibo community.

Surely, there are functionalities in Xibo XML that do not exist in SMIL but how hard do you think would it be to create an 'SMIL content server add-on' for Xibo? I'm kind of volunteering here.

You could probably modify the designer to output SMIL, SMIL (as I understand it) relies on the media content being on remote servers (ie it's all accessed via a URL) where as Xibo does everything it can to cache locally and therefore play offline. It seems that you could use file:// urls in the SMIL output but then you'd need to customise the output for each client device's own library path, or you use remote URLs and then loose the ability to play offline.

If it's something that you really want to work on, you are of course free to but I think it'll be alot harder than you anticipate.

Caching the media content for offline play is a client/player issue that I don't see necessary to address on a 'SMIL server add-on'.
Although you're most probably right about how hard it will be, I'll give it a try and get back to you when (and if) I get somewhere.

Status update. I implemented a very simple SMIL server add-on prototype on version 1.1. It works as a proxy between XMDS and the SMIL client thus doesn't require any changes on Xibo base code. I've tried it with Ambulant player and the layout, media list and scheduling roughly work, which led me to believe it can be done at least partially.
Still much to be done though; all help is appreciated.

That's great Rui. :D Is it something that could be easily added on to Xibo main distribution? Is it good enough to be shipped as production code? How does it deal with things like RSS feed items, Microblog Search etc? If it's something we could integrate as an addon option in the first instance there may be some interest in doing that if you're happy to do the support/maintenance for it?


Work Items

This blueprint contains Public information 
Everyone can see this information.