jellyfin/MediaBrowser.Model/LiveTv/LiveTvOptions.cs

114 lines
4.1 KiB
C#
Raw Normal View History

2015-07-20 11:32:55 -07:00
using System.Collections.Generic;
2016-06-06 11:22:42 -07:00
using MediaBrowser.Model.Dto;
2016-06-07 21:57:03 -07:00
using MediaBrowser.Model.Extensions;
2015-07-20 11:32:55 -07:00
namespace MediaBrowser.Model.LiveTv
{
public class LiveTvOptions
{
public int? GuideDays { get; set; }
2015-03-14 13:00:32 -07:00
public bool EnableMovieProviders { get; set; }
2015-07-20 11:32:55 -07:00
public string RecordingPath { get; set; }
2016-05-04 13:50:47 -07:00
public string MovieRecordingPath { get; set; }
public string SeriesRecordingPath { get; set; }
2016-02-12 00:01:38 -07:00
public bool EnableRecordingEncoding { get; set; }
2016-09-07 23:41:49 -07:00
public string RecordingEncodingFormat { get; set; }
2016-05-04 13:50:47 -07:00
public bool EnableRecordingSubfolders { get; set; }
public bool EnableOriginalAudioWithEncodedRecordings { get; set; }
2016-10-28 12:56:54 -07:00
public string RecordedVideoCodec { get; set; }
2015-03-14 18:42:09 -07:00
2015-07-22 22:25:55 -07:00
public List<TunerHostInfo> TunerHosts { get; set; }
public List<ListingsProviderInfo> ListingProviders { get; set; }
2015-08-23 19:08:20 -07:00
public int PrePaddingSeconds { get; set; }
public int PostPaddingSeconds { get; set; }
2016-02-24 12:06:26 -07:00
2016-05-20 08:57:07 -07:00
public string[] MediaLocationsCreated { get; set; }
2016-11-22 12:45:55 -07:00
public string RecordingPostProcessor { get; set; }
public string RecordingPostProcessorArguments { get; set; }
2015-03-14 18:42:09 -07:00
public LiveTvOptions()
{
EnableMovieProviders = true;
2015-07-20 11:32:55 -07:00
TunerHosts = new List<TunerHostInfo>();
2015-07-22 22:25:55 -07:00
ListingProviders = new List<ListingsProviderInfo>();
2016-05-20 08:57:07 -07:00
MediaLocationsCreated = new string[] { };
2016-09-07 23:41:49 -07:00
RecordingEncodingFormat = "mp4";
2016-11-22 12:45:55 -07:00
RecordingPostProcessorArguments = "\"{path}\"";
2015-03-14 18:42:09 -07:00
}
}
2015-07-20 11:32:55 -07:00
public class TunerHostInfo
{
2015-07-20 21:22:46 -07:00
public string Id { get; set; }
2015-07-20 11:32:55 -07:00
public string Url { get; set; }
public string Type { get; set; }
2016-03-07 22:00:03 -07:00
public string DeviceId { get; set; }
2015-07-25 11:11:46 -07:00
public bool ImportFavoritesOnly { get; set; }
public bool AllowHWTranscoding { get; set; }
2015-07-27 09:21:18 -07:00
public bool IsEnabled { get; set; }
2016-03-13 00:34:17 -07:00
public string M3UUrl { get; set; }
2016-03-16 14:39:49 -07:00
public string InfoUrl { get; set; }
2016-03-13 00:34:17 -07:00
public string FriendlyName { get; set; }
public int Tuners { get; set; }
2016-03-13 20:32:03 -07:00
public string DiseqC { get; set; }
2016-03-31 12:41:52 -07:00
public string SourceA { get; set; }
public string SourceB { get; set; }
public string SourceC { get; set; }
public string SourceD { get; set; }
2015-07-27 09:21:18 -07:00
2016-02-25 13:29:38 -07:00
public int DataVersion { get; set; }
2015-07-27 09:21:18 -07:00
public TunerHostInfo()
{
IsEnabled = true;
2016-10-12 11:23:09 -07:00
AllowHWTranscoding = true;
2015-07-27 09:21:18 -07:00
}
2015-07-20 11:32:55 -07:00
}
2015-07-22 22:25:55 -07:00
public class ListingsProviderInfo
{
2015-07-23 06:23:22 -07:00
public string Id { get; set; }
public string Type { get; set; }
2015-07-22 22:25:55 -07:00
public string Username { get; set; }
public string Password { get; set; }
public string ListingsId { get; set; }
2015-07-23 06:23:22 -07:00
public string ZipCode { get; set; }
2015-07-23 16:40:54 -07:00
public string Country { get; set; }
2016-02-16 20:07:15 -07:00
public string Path { get; set; }
2016-02-24 12:06:26 -07:00
public string[] EnabledTuners { get; set; }
public bool EnableAllTuners { get; set; }
2016-06-05 13:41:44 -07:00
public string[] NewsCategories { get; set; }
public string[] SportsCategories { get; set; }
public string[] KidsCategories { get; set; }
public string[] MovieCategories { get; set; }
2016-06-06 11:22:42 -07:00
public NameValuePair[] ChannelMappings { get; set; }
2016-11-15 10:55:26 -07:00
public string MoviePrefix { get; set; }
2016-02-24 12:06:26 -07:00
public ListingsProviderInfo()
{
2016-06-05 14:08:55 -07:00
NewsCategories = new string[] { "news", "journalism", "documentary", "current affairs" };
2016-06-05 13:41:44 -07:00
SportsCategories = new string[] { "sports", "basketball", "baseball", "football" };
2016-06-05 14:08:55 -07:00
KidsCategories = new string[] { "kids", "family", "children", "childrens", "disney" };
2016-06-05 13:41:44 -07:00
MovieCategories = new string[] { "movie" };
2016-02-24 12:06:26 -07:00
EnabledTuners = new string[] { };
EnableAllTuners = true;
2016-06-06 11:22:42 -07:00
ChannelMappings = new NameValuePair[] {};
2016-02-24 12:06:26 -07:00
}
2016-06-07 21:57:03 -07:00
public string GetMappedChannel(string channelNumber)
{
foreach (NameValuePair mapping in ChannelMappings)
{
if (StringHelper.EqualsIgnoreCase(mapping.Name, channelNumber))
{
return mapping.Value;
}
}
return channelNumber;
}
2015-07-22 22:25:55 -07:00
}
}