summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--doc/man/rygel.conf.xml8
-rw-r--r--src/plugins/gst-launch/rygel-gst-launch-root-container.vala34
2 files changed, 32 insertions, 10 deletions
diff --git a/doc/man/rygel.conf.xml b/doc/man/rygel.conf.xml
index bc862ae2..82c000ac 100644
--- a/doc/man/rygel.conf.xml
+++ b/doc/man/rygel.conf.xml
@@ -475,6 +475,14 @@ man(1), man(7), http://www.tldp.org/HOWTO/Man-Page/
</citerefentry>.</para>
</listitem>
</varlistentry>
+ <varlistentry>
+ <term>
+ <option>identifier-dlnaprofile</option>
+ </term>
+ <listitem>
+ <para>DLNA profile for the stream.</para>
+ </listitem>
+ </varlistentry>
</variablelist>
<para>An example configuration is available in the distributed configuration file <filename>/etc/&dhucpackage;</filename>.</para>
</refsect1>
diff --git a/src/plugins/gst-launch/rygel-gst-launch-root-container.vala b/src/plugins/gst-launch/rygel-gst-launch-root-container.vala
index e0327376..897e97c5 100644
--- a/src/plugins/gst-launch/rygel-gst-launch-root-container.vala
+++ b/src/plugins/gst-launch/rygel-gst-launch-root-container.vala
@@ -57,19 +57,33 @@ public class Rygel.GstLaunch.RootContainer : SimpleContainer {
"%s-mime".printf (name));
var launch_line = config.get_string (CONFIG_GROUP,
"%s-launch".printf (name));
+ string dlna_profile = null;
+ MediaItem item;
+ try {
+ dlna_profile = config.get_string (CONFIG_GROUP,
+ "%s-dlnaprofile".printf
+ (name));
+ } catch (Error error) {}
if (mime_type.has_prefix ("audio")) {
- this.add_child_item (new AudioItem (name,
- this,
- title,
- mime_type,
- launch_line));
+ item = new AudioItem (name,
+ this,
+ title,
+ mime_type,
+ launch_line);
} else {
- this.add_child_item (new VideoItem (name,
- this,
- title,
- mime_type,
- launch_line));
+ item = new VideoItem (name,
+ this,
+ title,
+ mime_type,
+ launch_line);
+ }
+
+ if (item != null) {
+ if (dlna_profile != null) {
+ item.dlna_profile = dlna_profile;
+ }
+ this.add_child_item (item);
}
} catch (GLib.Error err) {
debug ("GstLaunch failed item '%s': %s", name, err.message);