using MediaBrowser.Model.Dlna; using System.Xml.Serialization; using MediaBrowser.Model.Dlna.Profiles; namespace MediaBrowser.Dlna.Profiles { [XmlRoot("Profile")] public class PanasonicVieraProfile : DefaultProfile { public PanasonicVieraProfile() { Name = "Panasonic Viera"; Identification = new DeviceIdentification { FriendlyName = @"VIERA", Manufacturer = "Panasonic", Headers = new[] { new HttpHeaderInfo { Name = "User-Agent", Value = "Panasonic MIL DLNA", Match = HeaderMatchType.Substring } } }; XmlRootAttributes = new[] { new XmlAttribute { Name = "xmlns:pv", Value = "http://www.pv.com/pvns/" } }; TimelineOffsetSeconds = 10; TranscodingProfiles = new[] { new TranscodingProfile { Container = "mp3", AudioCodec = "mp3", Type = DlnaProfileType.Audio }, new TranscodingProfile { Container = "ts", AudioCodec = "ac3", VideoCodec = "h264", Type = DlnaProfileType.Video }, new TranscodingProfile { Container = "jpeg", Type = DlnaProfileType.Photo } }; DirectPlayProfiles = new[] { new DirectPlayProfile { Container = "mpeg", VideoCodec = "mpeg2video,mpeg4", AudioCodec = "ac3,mp3", Type = DlnaProfileType.Video }, new DirectPlayProfile { Container = "mkv", VideoCodec = "h264", AudioCodec = "aac,ac3,mp3,pcm", Type = DlnaProfileType.Video }, new DirectPlayProfile { Container = "ts", VideoCodec = "h264", AudioCodec = "aac,mp3", Type = DlnaProfileType.Video }, new DirectPlayProfile { Container = "mp4", VideoCodec = "h264", AudioCodec = "aac,ac3,mp3,pcm", Type = DlnaProfileType.Video }, new DirectPlayProfile { Container = "mov", VideoCodec = "h264", AudioCodec = "aac,pcm", Type = DlnaProfileType.Video }, new DirectPlayProfile { Container = "avi", VideoCodec = "mpeg4", AudioCodec = "pcm", Type = DlnaProfileType.Video }, new DirectPlayProfile { Container = "flv", VideoCodec = "h264", AudioCodec = "aac", Type = DlnaProfileType.Video }, new DirectPlayProfile { Container = "mp3", AudioCodec = "mp3", Type = DlnaProfileType.Audio }, new DirectPlayProfile { Container = "mp4", AudioCodec = "aac", Type = DlnaProfileType.Audio }, new DirectPlayProfile { Container = "jpeg", Type = DlnaProfileType.Photo } }; ContainerProfiles = new[] { new ContainerProfile { Type = DlnaProfileType.Photo, Conditions = new [] { new ProfileCondition { Condition = ProfileConditionType.LessThanEqual, Property = ProfileConditionValue.Width, Value = "1920" }, new ProfileCondition { Condition = ProfileConditionType.LessThanEqual, Property = ProfileConditionValue.Height, Value = "1080" } } } }; CodecProfiles = new[] { new CodecProfile { Type = CodecType.Video, Conditions = new[] { new ProfileCondition { Condition = ProfileConditionType.LessThanEqual, Property = ProfileConditionValue.Width, Value = "1920" }, new ProfileCondition { Condition = ProfileConditionType.LessThanEqual, Property = ProfileConditionValue.Height, Value = "1080" }, new ProfileCondition { Condition = ProfileConditionType.LessThanEqual, Property = ProfileConditionValue.VideoBitDepth, Value = "8", IsRequired = false } } } }; SubtitleProfiles = new[] { new SubtitleProfile { Format = "srt", Method = SubtitleDeliveryMethod.External } }; ResponseProfiles = new[] { new ResponseProfile { Type = DlnaProfileType.Video, Container = "ts", OrgPn = "MPEG_TS_SD_EU,MPEG_TS_SD_NA,MPEG_TS_SD_KO", MimeType = "video/vnd.dlna.mpeg-tts" } }; } } }