jellyfin/MediaBrowser.Dlna/Profiles/PanasonicVieraProfile.cs

216 lines
6.5 KiB
C#
Raw Normal View History

2014-04-23 22:08:10 -07:00
using MediaBrowser.Model.Dlna;
using System.Xml.Serialization;
2014-03-23 09:42:02 -07:00
namespace MediaBrowser.Dlna.Profiles
{
2014-03-26 08:06:48 -07:00
[XmlRoot("Profile")]
public class PanasonicVieraProfile : DefaultProfile
2014-03-23 09:42:02 -07:00
{
2014-03-26 08:06:48 -07:00
public PanasonicVieraProfile()
{
Name = "Panasonic Viera";
2014-03-23 09:42:02 -07:00
2014-03-26 08:06:48 -07:00
Identification = new DeviceIdentification
{
FriendlyName = @"VIERA",
Manufacturer = "Panasonic",
2014-03-23 09:42:02 -07:00
2014-03-26 08:06:48 -07:00
Headers = new[]
2014-03-23 09:42:02 -07:00
{
new HttpHeaderInfo
{
Name = "User-Agent",
Value = "Panasonic MIL DLNA",
Match = HeaderMatchType.Substring
}
}
2014-03-26 08:06:48 -07:00
};
2014-03-23 09:42:02 -07:00
2015-05-08 09:28:06 -07:00
AddXmlRootAttribute("xmlns:pv", "http://www.pv.com/pvns/");
2014-04-23 22:08:10 -07:00
2014-03-26 08:06:48 -07:00
TimelineOffsetSeconds = 10;
2014-03-23 09:42:02 -07:00
2014-03-26 08:06:48 -07:00
TranscodingProfiles = new[]
2014-03-23 09:42:02 -07:00
{
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
}
};
2014-03-26 08:06:48 -07:00
DirectPlayProfiles = new[]
2014-03-23 09:42:02 -07:00
{
new DirectPlayProfile
{
2014-10-30 21:57:24 -07:00
Container = "mpeg,mpg",
2014-03-23 09:42:02 -07:00
VideoCodec = "mpeg2video,mpeg4",
2014-10-30 21:57:24 -07:00
AudioCodec = "ac3,mp3,pcm_dvd",
2014-03-23 09:42:02 -07:00
Type = DlnaProfileType.Video
},
new DirectPlayProfile
{
Container = "mkv",
2014-10-30 21:57:24 -07:00
VideoCodec = "h264,mpeg2video",
2016-08-30 10:39:15 -07:00
AudioCodec = "aac,ac3,dca,mp3,mp2,pcm,dts",
2014-03-23 09:42:02 -07:00
Type = DlnaProfileType.Video
},
new DirectPlayProfile
{
Container = "ts",
2014-10-30 21:57:24 -07:00
VideoCodec = "h264,mpeg2video",
AudioCodec = "aac,mp3,mp2",
2014-03-23 09:42:02 -07:00
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
}
};
2014-03-26 08:06:48 -07:00
ContainerProfiles = new[]
2014-03-23 09:42:02 -07:00
{
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"
}
}
}
};
2014-03-26 08:06:48 -07:00
CodecProfiles = new[]
2014-03-23 09:42:02 -07:00
{
new CodecProfile
{
Type = CodecType.Video,
2014-03-23 09:42:02 -07:00
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
}
}
}
};
2014-07-16 20:17:14 -07:00
SubtitleProfiles = new[]
2014-07-16 20:17:14 -07:00
{
2016-08-27 11:39:48 -07:00
new SubtitleProfile
{
Format = "srt",
Method = SubtitleDeliveryMethod.Embed
},
2014-07-16 20:17:14 -07:00
new SubtitleProfile
{
Format = "srt",
Method = SubtitleDeliveryMethod.External
2014-07-16 20:17:14 -07:00
}
};
2014-10-23 21:54:35 -07:00
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"
}
};
2014-03-26 08:06:48 -07:00
}
2014-03-23 09:42:02 -07:00
}
}