jellyfin-server/MediaBrowser.Controller/Dlna/TranscodingProfile.cs

67 lines
1.6 KiB
C#
Raw Normal View History

2014-03-25 05:25:03 +00:00
using System.Collections.Generic;
using System.Linq;
2014-03-26 15:06:48 +00:00
using System.Xml.Serialization;
2014-03-25 05:25:03 +00:00
2014-03-13 19:08:02 +00:00
namespace MediaBrowser.Controller.Dlna
{
public class TranscodingProfile
{
2014-03-26 15:06:48 +00:00
[XmlAttribute("container")]
2014-03-13 19:08:02 +00:00
public string Container { get; set; }
2014-03-26 15:06:48 +00:00
[XmlAttribute("type")]
2014-03-13 19:08:02 +00:00
public DlnaProfileType Type { get; set; }
2014-03-26 15:06:48 +00:00
[XmlAttribute("videoCodec")]
2014-03-13 19:08:02 +00:00
public string VideoCodec { get; set; }
2014-03-26 15:06:48 +00:00
[XmlAttribute("audioCodec")]
2014-03-13 19:08:02 +00:00
public string AudioCodec { get; set; }
2014-03-18 01:45:41 +00:00
2014-03-28 19:58:18 +00:00
[XmlAttribute("protocol")]
public string Protocol { get; set; }
2014-03-26 15:06:48 +00:00
[XmlAttribute("estimateContentLength")]
2014-03-23 00:48:34 +00:00
public bool EstimateContentLength { get; set; }
2014-03-26 15:06:48 +00:00
[XmlAttribute("enableMpegtsM2TsMode")]
2014-03-25 05:25:03 +00:00
public bool EnableMpegtsM2TsMode { get; set; }
2014-03-26 15:06:48 +00:00
[XmlAttribute("transcodeSeekInfo")]
2014-03-23 00:48:34 +00:00
public TranscodeSeekInfo TranscodeSeekInfo { get; set; }
2014-03-23 16:42:02 +00:00
public TranscodingSetting[] Settings { get; set; }
2014-03-18 01:45:41 +00:00
public TranscodingProfile()
{
2014-03-23 16:42:02 +00:00
Settings = new TranscodingSetting[] { };
2014-03-18 01:45:41 +00:00
}
2014-03-23 16:42:02 +00:00
2014-03-25 05:25:03 +00:00
public List<string> GetAudioCodecs()
{
return (AudioCodec ?? string.Empty).Split(',').Where(i => !string.IsNullOrWhiteSpace(i)).ToList();
}
2014-03-18 01:45:41 +00:00
}
public class TranscodingSetting
{
2014-03-26 15:06:48 +00:00
[XmlAttribute("name")]
2014-03-18 01:45:41 +00:00
public TranscodingSettingType Name { get; set; }
2014-03-26 15:06:48 +00:00
[XmlAttribute("value")]
2014-03-18 01:45:41 +00:00
public string Value { get; set; }
}
public enum TranscodingSettingType
{
2014-03-24 17:54:45 +00:00
VideoProfile = 0
2014-03-23 00:48:34 +00:00
}
public enum TranscodeSeekInfo
{
Auto = 0,
Bytes = 1
2014-03-13 19:08:02 +00:00
}
}