2010-04-02, 19:47
Hi all, i'm a new user in forum but i do follow XBMC developing since some time and use it for my media center needs.
I've seen some people asking for "centralized db" to share metadata of media hosted on nas or network shares and i've seen XBMC going in that direction.
I was wondering about the possibility to create a "XBMC protocol" used to present such data to XBMC "clients" satellites.
What i'm thinking about is a "XBMC server" which will:
Think about an XBMC "satellite" which can siply add an XBMC Protocol source and recive:
1) an XML file with the description of all media shared (to show the list)
2) upon request receive fanart, covers, poster from XBMC server (to show descriptions and fancy list)
3) "save" or "delete" some preferences about each media (to personalize the experience)
4) Receive and play the media
The satellites can work in three different modes
1) "Kiosk" - there is NO saving of any kind on server.
2) "User" - Data saved (fanart preferencies, position, metadata) are user relative (the same user "logging" on another satellite will receive his data no metter where he is) or even more there could be a sort of "policy" about what a particular user can save (i.e. just fanart and not position) or access (i.e. for parental control) and what he can't
3) "Site" - Data saved are satelite relative and similar policy can be applyed where a satellite could be authorized to save just SOME data or display just some media.
Each satellite should have a unique "site name" and the option to "log in" with user/pass (with the option to disable/force the log in process).
These credential should be passed to server at each information requested.
Using XML for metadata transaction can make the protocol extensible and can, in future, include the chance to share games or programs or any other media.
An example of an xml fragment received from server could be:
A possible extension is a pay per-view tag with the fee charged for viewing the video.
Obviuosly satellite's skin/scripts and server behaviour should be personalized accordingly too.
In this scenario is possible to cover almost all of the "sharing" needs.
An Hotel can have XBMC satellites configured as "site" so to save the preference of each room and delete that data when the host leave or even use a "user" mode setup to save host personalization to reuse them in case the host come back to the Hotel (or to another one with which the hotel share the data).
It can even personalize and extend the protocol and the server (python?) to include pay per-view or any other option needed by the particular setup.
An Home setup can be configured to have different users/configurations for the satellites in kids room (no password, no rated content, no option to login with different credentials), janitor room (password protected for rated content) or living room ("site" setup with the ability to login with kid or janitor credentials).
Each family component's laptop can have a "site" configuration.
It's even possible much complex setups with "power users" with the ability to copy/move preferences between user/sites or define default options.
Kiosk mode is usefull where user interaction should be minimal and no need of saving data is needed.
The server is, after all, a specialized web server with the ability to serve media upon request.
What do you think about the possibility to add such a feature in XBMC?
Bye
MakkaD
P.S. Sorry for bad english but i'm italian and not writing in english since ages
I've seen some people asking for "centralized db" to share metadata of media hosted on nas or network shares and i've seen XBMC going in that direction.
I was wondering about the possibility to create a "XBMC protocol" used to present such data to XBMC "clients" satellites.
What i'm thinking about is a "XBMC server" which will:
- Share media list
- Deliver upon request fanart, descriptions, poster etc.
- Deliver the media itself
- Receive and store any needed data coming from "sitellites"
- Delete data received from satellites
Think about an XBMC "satellite" which can siply add an XBMC Protocol source and recive:
1) an XML file with the description of all media shared (to show the list)
2) upon request receive fanart, covers, poster from XBMC server (to show descriptions and fancy list)
3) "save" or "delete" some preferences about each media (to personalize the experience)
4) Receive and play the media
The satellites can work in three different modes
1) "Kiosk" - there is NO saving of any kind on server.
2) "User" - Data saved (fanart preferencies, position, metadata) are user relative (the same user "logging" on another satellite will receive his data no metter where he is) or even more there could be a sort of "policy" about what a particular user can save (i.e. just fanart and not position) or access (i.e. for parental control) and what he can't
3) "Site" - Data saved are satelite relative and similar policy can be applyed where a satellite could be authorized to save just SOME data or display just some media.
Each satellite should have a unique "site name" and the option to "log in" with user/pass (with the option to disable/force the log in process).
These credential should be passed to server at each information requested.
Using XML for metadata transaction can make the protocol extensible and can, in future, include the chance to share games or programs or any other media.
An example of an xml fragment received from server could be:
Code:
<media>
<type>Video</type>
<id>12345</id>
<displayname>Avatar</displayname>
<fanart>fanart-avatar.jpg>
<cover>cover-avatar.jpg</cover>
<banner>banner-avatar.jpg</banner>
<detailsXML>details-avatar.xml</detailsXML>
<activation>avatar.avi</activation>
</media>
Obviuosly satellite's skin/scripts and server behaviour should be personalized accordingly too.
In this scenario is possible to cover almost all of the "sharing" needs.
An Hotel can have XBMC satellites configured as "site" so to save the preference of each room and delete that data when the host leave or even use a "user" mode setup to save host personalization to reuse them in case the host come back to the Hotel (or to another one with which the hotel share the data).
It can even personalize and extend the protocol and the server (python?) to include pay per-view or any other option needed by the particular setup.
An Home setup can be configured to have different users/configurations for the satellites in kids room (no password, no rated content, no option to login with different credentials), janitor room (password protected for rated content) or living room ("site" setup with the ability to login with kid or janitor credentials).
Each family component's laptop can have a "site" configuration.
It's even possible much complex setups with "power users" with the ability to copy/move preferences between user/sites or define default options.
Kiosk mode is usefull where user interaction should be minimal and no need of saving data is needed.
The server is, after all, a specialized web server with the ability to serve media upon request.
What do you think about the possibility to add such a feature in XBMC?
Bye
MakkaD
P.S. Sorry for bad english but i'm italian and not writing in english since ages