diff options
Diffstat (limited to 'MediaBrowser.Dlna/ProfileSerialization/TranscodingProfile.cs')
| -rw-r--r-- | MediaBrowser.Dlna/ProfileSerialization/TranscodingProfile.cs | 58 |
1 files changed, 58 insertions, 0 deletions
diff --git a/MediaBrowser.Dlna/ProfileSerialization/TranscodingProfile.cs b/MediaBrowser.Dlna/ProfileSerialization/TranscodingProfile.cs new file mode 100644 index 000000000..712fe95a8 --- /dev/null +++ b/MediaBrowser.Dlna/ProfileSerialization/TranscodingProfile.cs @@ -0,0 +1,58 @@ +using System.Collections.Generic; +using System.Xml.Serialization; +using MediaBrowser.Model.Dlna; + +namespace MediaBrowser.Dlna.ProfileSerialization +{ + public class TranscodingProfile + { + [XmlAttribute("container")] + public string Container { get; set; } + + [XmlAttribute("type")] + public DlnaProfileType Type { get; set; } + + [XmlAttribute("videoCodec")] + public string VideoCodec { get; set; } + + [XmlAttribute("audioCodec")] + public string AudioCodec { get; set; } + + [XmlAttribute("protocol")] + public string Protocol { get; set; } + + [XmlAttribute("estimateContentLength")] + public bool EstimateContentLength { get; set; } + + [XmlAttribute("enableMpegtsM2TsMode")] + public bool EnableMpegtsM2TsMode { get; set; } + + [XmlAttribute("transcodeSeekInfo")] + public TranscodeSeekInfo TranscodeSeekInfo { get; set; } + + [XmlAttribute("copyTimestamps")] + public bool CopyTimestamps { get; set; } + + [XmlAttribute("context")] + public EncodingContext Context { get; set; } + + [XmlAttribute("enableSubtitlesInManifest")] + public bool EnableSubtitlesInManifest { get; set; } + + [XmlAttribute("enableSplittingOnNonKeyFrames")] + public bool EnableSplittingOnNonKeyFrames { get; set; } + + [XmlAttribute("maxAudioChannels")] + public string MaxAudioChannels { get; set; } + + public List<string> GetAudioCodecs() + { + List<string> list = new List<string>(); + foreach (string i in (AudioCodec ?? string.Empty).Split(',')) + { + if (!string.IsNullOrEmpty(i)) list.Add(i); + } + return list; + } + } +} |
