diff options
Diffstat (limited to 'src/plugins/media-export/rygel-media-export-extractor.vala')
-rw-r--r-- | src/plugins/media-export/rygel-media-export-extractor.vala | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/src/plugins/media-export/rygel-media-export-extractor.vala b/src/plugins/media-export/rygel-media-export-extractor.vala index 4277e62d..93d5fe9c 100644 --- a/src/plugins/media-export/rygel-media-export-extractor.vala +++ b/src/plugins/media-export/rygel-media-export-extractor.vala @@ -117,6 +117,20 @@ public class Rygel.MediaExport.Extractor : Object { var content_type = ContentType.get_mime_type (file_info.get_content_type ()); + + + if (!extract_metadata) { + if (content_type.has_prefix ("video/")) { + this.serialized_info.insert (Serializer.UPNP_CLASS, "s", UPNP_CLASS_VIDEO); + } else if (content_type.has_prefix ("image/")) { + this.serialized_info.insert (Serializer.UPNP_CLASS, "s", UPNP_CLASS_PHOTO); + } else if (content_type.has_prefix ("audio/") || content_type == "application/ogg") { + this.serialized_info.insert (Serializer.UPNP_CLASS, "s", UPNP_CLASS_MUSIC); + } else { // application/xml or text/xml + // Do nothing. Should at least try to parse a DIDL_S playlist here? + } + } + this.serialized_info.insert (Serializer.MIME_TYPE, "s", content_type); this.serialized_info.insert (Serializer.SIZE, "t", file_info.get_size ()); var id = Checksum.compute_for_string (ChecksumType.MD5, |