Example #1
0
        /// <summary>
        /// Creates a media object.
        /// </summary>
        /// <param name="title">The title of the object.</param>
        /// <param name="file">The full path to the file.</param>
        /// <returns>Media object.</returns>
        private static IDvMedia CreateObject(string title, string file)
        {
            var fi    = new FileInfo(file);
            var media = DvMediaBuilder.CreateItem(new MediaBuilder.item(title));

            string mime, mediaClass;

            MimeTypes.ExtensionToMimeType(fi.Extension, out mime, out mediaClass);

            var resInfo = new ResourceBuilder.VideoItem
            {
                contentUri   = MediaResource.AUTOMAPFILE + fi.FullName,
                protocolInfo = new ProtocolInfoString("http-get:*:" + mime + ":*"),
                size         = new _ULong((ulong)fi.Length)
            };

            var res = DvResourceBuilder.CreateResource(resInfo, true);

            res.Tag = fi;

            media.AddResource(res);

            if (_mimes.Contains(mime) == false)
            {
                _mimes.Add(mime);
                var ps = new ProtocolInfoString[_mimes.Count];
                var i  = 0;
                foreach (var mime2 in _mimes)
                {
                    ps[i++] = new ProtocolInfoString("http-get:*:" + mime2 + ":*");
                }
                _ms.SourceProtocolInfoSet = ps;
            }

            return(media);
        }