Re: Questions about using rygel with a DBus data source



On Do, 2013-02-07 at 14:07 +0200, Dominic Jacobssen wrote:

> The thing that I detest most in nearly all existing DLNA servers is
> the time taken to scan and rebuild a media database. I want a database
> that *I* rebuild on demand, not one that constantly gets corrupted and
> needs rebuilding (which I found was the case with Twonky, and
> sometimes with minidlna). I would also love to be able to use a
> "proper" data store like postgres, or maybe Mongo.

The only time I've seen MediaExport corrupt its SQLite database is on
some upgrades.

> Here are my (possibly wrong) preconceptions and assumptions; please
> could someone jump in and correct me if and or all of these are wrong:
> 
> - Rygel allows me to separate out the (difficult) boilerplate
> nitty-gritty of doing all the UPNP/DLNA/SSDP, etc, from the (easier)
> generation and transmission of media metadata;

Yes.

> 
> - All I have to do is to write a separate out-of-process "metadata
> server" which registers itself using DBus and which serves up
> information about the available media;
> 
> - This "metadata server" is language-independent, as long as it "talks" DBus;

Yes.

> 
> - The "heavy lifting" (e.g. streaming) of the media itself to the
> client is taken care of by Rygel;

Yes.

> 
> - I can have several such "metadata servers" simultaneously connected
> over DBus (all of which presumably identify themselves uniquely), and
> only need a single Rygel server to make the media available;

Yes. Each one appears as a separate server on the network.

> 
> - The "metadata path" does not have to correspond at all to any
> physical path in the filesystem; in other words, I could have
> something like "Movies -> By IMDB Rating -> 4/5/6/7/8/9+ -> By
> Resolution -> SD/HD -> By Genre -> Action/Comedy/Drama/...", and have
> this huge combinatorial metadata space generated on-the-fly by the
> metadata server;

Yes.

> 
> Assuming these preconceptions and assumptions are broadly correct,
> then I do have one question.
> 
> On the page:
> 
>     https://live.gnome.org/Rygel/MediaServer2Spec
> 
> it says:
> 
> """
> as org.gnome.UPnP.MediaItem2.URLs
[..]
> """
> 
> I initially took this to mean that this is the URL that the "metadata
> server" needs to hand back to Rygel (over DBus) in order for Rygel to
> be able to access the media. However, if this URL is ALSO handed to
> the DLNA client (the MediaRenderer), then I'm confused, because the
> client would need an http:// (or rtsp://) URL, whereas Rygel would
> need a file:// URL in order to open/read/stream the file to the
> client, no?

If you pass http://, it will be passed as one option to the client
directly, in addition to the transcoded uris. If not, Rygel will provide
a http url that "translates" between your protocol and HTTP. For a file
handling back-end you can just return file:// uris and Rygel will do the
rest. Rhythmbox does this, e.g.




[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]