public PreparePlayVideoResult(string contentId, NiconicoSession niconicoSession, NicoVideoSessionOwnershipManager ownershipManager, DmcWatchData dmcWatchData) : this(contentId, niconicoSession) { _ownershipManager = ownershipManager; _dmcWatchData = dmcWatchData; IsSuccess = _dmcWatchData != null; if (_dmcWatchData?.DmcWatchResponse.Video.DmcInfo != null) { AvailableQualities = _dmcWatchData.DmcWatchResponse.Video.DmcInfo.Quality.Videos .Select(x => new NicoVideoQualityEntity(x.Available, QualityIdToNicoVideoQuality(x.Id), x.Id, x.Bitrate, x.Resolution?.Width, x.Resolution?.Height)) .ToImmutableArray(); } else if (_dmcWatchData.DmcWatchResponse.Video.SmileInfo != null) { var video = _dmcWatchData.DmcWatchResponse.Video; var smileInfo = _dmcWatchData.DmcWatchResponse.Video.SmileInfo; var quality = smileInfo.Url.EndsWith("low") ? NicoVideoQuality.Smile_Low : NicoVideoQuality.Smile_Original; AvailableQualities = new[] { new NicoVideoQualityEntity(false, NicoVideoQuality.Smile_Low, "", null, video.Width, video.Height), new NicoVideoQualityEntity(false, NicoVideoQuality.Smile_Original, "", null, video.Width, video.Height), } .ToImmutableArray(); } }
public NicoVideoSessionProvider( NicoVideoProvider nicoVideoProvider, NiconicoSession niconicoSession, NicoVideoSessionOwnershipManager nicoVideoSessionOwnershipManager ) { _nicoVideoProvider = nicoVideoProvider; _niconicoSession = niconicoSession; _nicoVideoSessionOwnershipManager = nicoVideoSessionOwnershipManager; }
public PreparePlayVideoResult(string contentId, NiconicoSession niconicoSession, NicoVideoSessionOwnershipManager ownershipManager, WatchApiResponse watchApiResponse) : this(contentId, niconicoSession) { _ownershipManager = ownershipManager; _watchApiResponse = watchApiResponse; IsSuccess = _watchApiResponse != null; var quality = _watchApiResponse.VideoUrl.OriginalString.EndsWith("low") ? NicoVideoQuality.Smile_Low : NicoVideoQuality.Smile_Original; AvailableQualities = new[] { new NicoVideoQualityEntity(true, quality, quality.ToString()) } .ToImmutableArray(); // Note: スマイル鯖はいずれ無くなると見て対応を限定的にしてしまう }
internal VideoSessionOwnership(string videoId, NicoVideoSessionOwnershipManager ownershipManager) { VideoId = videoId; _ownershipManager = ownershipManager; }