LiveStreamRequest.cs 1.6 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849
  1. #pragma warning disable CS1591
  2. using System;
  3. using MediaBrowser.Model.Dlna;
  4. namespace MediaBrowser.Model.MediaInfo
  5. {
  6. public class LiveStreamRequest
  7. {
  8. public string OpenToken { get; set; }
  9. public Guid UserId { get; set; }
  10. public string PlaySessionId { get; set; }
  11. public long? MaxStreamingBitrate { get; set; }
  12. public long? StartTimeTicks { get; set; }
  13. public int? AudioStreamIndex { get; set; }
  14. public int? SubtitleStreamIndex { get; set; }
  15. public int? MaxAudioChannels { get; set; }
  16. public Guid ItemId { get; set; }
  17. public DeviceProfile DeviceProfile { get; set; }
  18. public bool EnableDirectPlay { get; set; }
  19. public bool EnableDirectStream { get; set; }
  20. public MediaProtocol[] DirectPlayProtocols { get; set; }
  21. public LiveStreamRequest()
  22. {
  23. EnableDirectPlay = true;
  24. EnableDirectStream = true;
  25. DirectPlayProtocols = new MediaProtocol[] { MediaProtocol.Http };
  26. }
  27. public LiveStreamRequest(AudioOptions options)
  28. {
  29. MaxStreamingBitrate = options.MaxBitrate;
  30. ItemId = options.ItemId;
  31. DeviceProfile = options.Profile;
  32. MaxAudioChannels = options.MaxAudioChannels;
  33. DirectPlayProtocols = new MediaProtocol[] { MediaProtocol.Http };
  34. var videoOptions = options as VideoOptions;
  35. if (videoOptions != null)
  36. {
  37. AudioStreamIndex = videoOptions.AudioStreamIndex;
  38. SubtitleStreamIndex = videoOptions.SubtitleStreamIndex;
  39. }
  40. }
  41. }
  42. }