2020-02-03 19:49:27 -05:00
|
|
|
#pragma warning disable CS1591
|
|
|
|
#pragma warning disable SA1600
|
|
|
|
|
2019-01-13 15:02:23 -05:00
|
|
|
using System;
|
2019-01-13 14:26:15 -05:00
|
|
|
using MediaBrowser.Model.Dlna;
|
2018-12-27 18:27:57 -05:00
|
|
|
|
|
|
|
namespace MediaBrowser.Model.MediaInfo
|
|
|
|
{
|
|
|
|
public class LiveStreamRequest
|
|
|
|
{
|
|
|
|
public string OpenToken { get; set; }
|
|
|
|
public Guid UserId { get; set; }
|
|
|
|
public string PlaySessionId { get; set; }
|
|
|
|
public long? MaxStreamingBitrate { get; set; }
|
|
|
|
public long? StartTimeTicks { get; set; }
|
|
|
|
public int? AudioStreamIndex { get; set; }
|
|
|
|
public int? SubtitleStreamIndex { get; set; }
|
|
|
|
public int? MaxAudioChannels { get; set; }
|
|
|
|
public Guid ItemId { get; set; }
|
|
|
|
public DeviceProfile DeviceProfile { get; set; }
|
|
|
|
|
|
|
|
public bool EnableDirectPlay { get; set; }
|
|
|
|
public bool EnableDirectStream { get; set; }
|
|
|
|
public MediaProtocol[] DirectPlayProtocols { get; set; }
|
|
|
|
|
|
|
|
public LiveStreamRequest()
|
|
|
|
{
|
|
|
|
EnableDirectPlay = true;
|
|
|
|
EnableDirectStream = true;
|
|
|
|
DirectPlayProtocols = new MediaProtocol[] { MediaProtocol.Http };
|
|
|
|
}
|
|
|
|
|
|
|
|
public LiveStreamRequest(AudioOptions options)
|
|
|
|
{
|
|
|
|
MaxStreamingBitrate = options.MaxBitrate;
|
|
|
|
ItemId = options.ItemId;
|
|
|
|
DeviceProfile = options.Profile;
|
|
|
|
MaxAudioChannels = options.MaxAudioChannels;
|
|
|
|
|
|
|
|
DirectPlayProtocols = new MediaProtocol[] { MediaProtocol.Http };
|
|
|
|
|
2019-01-13 15:37:13 -05:00
|
|
|
var videoOptions = options as VideoOptions;
|
2018-12-27 18:27:57 -05:00
|
|
|
if (videoOptions != null)
|
|
|
|
{
|
|
|
|
AudioStreamIndex = videoOptions.AudioStreamIndex;
|
|
|
|
SubtitleStreamIndex = videoOptions.SubtitleStreamIndex;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|