Skip to content
This repository has been archived by the owner on Dec 20, 2023. It is now read-only.

Commit

Permalink
修复综合动态序列解析溢出的问题 (#1533)
Browse files Browse the repository at this point in the history
  • Loading branch information
Richasy authored Oct 21, 2022
1 parent 0e3aa10 commit cd2c5e2
Show file tree
Hide file tree
Showing 3 changed files with 13 additions and 13 deletions.
4 changes: 2 additions & 2 deletions src/Adapter/Adapter.Implementation/PgcAdapter.cs
Original file line number Diff line number Diff line change
Expand Up @@ -133,7 +133,7 @@ public EpisodeInformation ConvertToEpisodeInformation(MdlDynPGC pgc)
var aid = pgc.Aid.ToString();
var isPv = pgc.IsPreview;
var cover = _imageAdapter.ConvertToVideoCardCover(pgc.Cover);
var duration = Convert.ToInt32(pgc.Duration);
var duration = pgc.Duration;

var identifier = new VideoIdentifier(epid, title, duration, cover);
return new EpisodeInformation(identifier, ssid, aid, isPv: isPv);
Expand All @@ -148,7 +148,7 @@ public EpisodeInformation ConvertToEpisodeInformation(MdlDynArchive archive)
var aid = archive.Avid.ToString();
var isPv = archive.IsPreview;
var cover = _imageAdapter.ConvertToVideoCardCover(archive.Cover);
var duration = Convert.ToInt32(archive.Duration);
var duration = archive.Duration;

var identifier = new VideoIdentifier(epid, title, duration, cover);
return new EpisodeInformation(identifier, ssid, aid, isPv: isPv);
Expand Down
18 changes: 9 additions & 9 deletions src/Adapter/Adapter.Implementation/VideoAdapter.cs
Original file line number Diff line number Diff line change
Expand Up @@ -114,7 +114,7 @@ public VideoInformation ConvertToVideoInformation(MdlDynArchive dynamicVideo)
var title = _textToolkit.ConvertToTraditionalChineseIfNeeded(dynamicVideo.Title);
var id = dynamicVideo.Avid.ToString();
var bvid = dynamicVideo.Bvid;
var duration = Convert.ToInt32(dynamicVideo.Duration);
var duration = dynamicVideo.Duration;
var cover = _imageAdapter.ConvertToImage(dynamicVideo.Cover, AppConstants.DynamicCoverWidth, AppConstants.DynamicCoverHeight);
var communityInfo = _communityAdapter.ConvertToVideoCommunityInformation(dynamicVideo);
var identifier = new VideoIdentifier(id, title, duration, cover);
Expand Down Expand Up @@ -154,10 +154,10 @@ public VideoInformation ConvertToVideoInformation(Item rankVideo)
{
var id = rankVideo.Param;
var title = _textToolkit.ConvertToTraditionalChineseIfNeeded(rankVideo.Title);
var duration = Convert.ToInt32(rankVideo.Duration);
var duration = rankVideo.Duration;
var publishTime = DateTimeOffset.FromUnixTimeSeconds(rankVideo.PubDate).ToLocalTime();

var user = _userAdapter.ConvertToUserProfile(Convert.ToInt32(rankVideo.Mid), rankVideo.Name, rankVideo.Face, Models.Enums.App.AvatarSize.Size48);
var user = _userAdapter.ConvertToUserProfile(rankVideo.Mid, rankVideo.Name, rankVideo.Face, Models.Enums.App.AvatarSize.Size48);
var publisher = new RoleProfile(user);
var cover = _imageAdapter.ConvertToVideoCardCover(rankVideo.Cover);
var communityInfo = _communityAdapter.ConvertToVideoCommunityInformation(rankVideo);
Expand Down Expand Up @@ -217,7 +217,7 @@ public VideoInformation ConvertToVideoInformation(Relate relatedVideo)
{
var title = _textToolkit.ConvertToTraditionalChineseIfNeeded(relatedVideo.Title);
var id = relatedVideo.Aid.ToString();
var duration = Convert.ToInt32(relatedVideo.Duration);
var duration = relatedVideo.Duration;
var description = _textToolkit.ConvertToTraditionalChineseIfNeeded(relatedVideo.Desc);
var publisher = _userAdapter.ConvertToRoleProfile(relatedVideo.Author);
var cover = _imageAdapter.ConvertToVideoCardCover(relatedVideo.Pic);
Expand Down Expand Up @@ -291,7 +291,7 @@ public VideoInformation ConvertToVideoInformation(CursorItem historyVideo)
var id = historyVideo.Kid.ToString();
var bvid = video.Bvid;
var subtitle = $"{video.Name} · {TimeSpan.FromSeconds(video.Progress)}";
var duration = Convert.ToInt32(video.Duration);
var duration = video.Duration;
var cover = _imageAdapter.ConvertToVideoCardCover(video.Cover);

var identifier = new VideoIdentifier(id, title, duration, cover);
Expand Down Expand Up @@ -329,7 +329,7 @@ public VideoInformation ConvertToVideoInformation(Arc video)
title = _textToolkit.ConvertToTraditionalChineseIfNeeded(title);
var id = archive.Aid.ToString();
var publisher = _userAdapter.ConvertToRoleProfile(archive.Author);
var duration = Convert.ToInt32(archive.Duration);
var duration = archive.Duration;
var cover = _imageAdapter.ConvertToVideoCardCover(archive.Pic);
var communityInfo = _communityAdapter.ConvertToVideoCommunityInformation(archive.Stat);
var publishTime = DateTimeOffset.FromUnixTimeSeconds(archive.Pubdate).DateTime;
Expand Down Expand Up @@ -431,7 +431,7 @@ private VideoInformation GetVideoInformationFromEpisode(Episode episode)
var id = episode.Aid.ToString();
var cid = episode.Cid.ToString();
var title = Regex.Replace(episode.Title, "<[^>]+>", string.Empty);
var duration = Convert.ToInt32(episode.Page.Duration);
var duration = episode.Page.Duration;
var publisher = _userAdapter.ConvertToRoleProfile(episode.Author);
var communityInfo = _communityAdapter.ConvertToVideoCommunityInformation(episode.Stat);
var cover = _imageAdapter.ConvertToVideoCardCover(episode.Cover);
Expand All @@ -447,7 +447,7 @@ private VideoInformation GetVideoInformationFromViewReply(ViewReply videoDetail)
var title = _textToolkit.ConvertToTraditionalChineseIfNeeded(arc.Title);
var id = arc.Aid.ToString();
var bvid = videoDetail.Bvid;
var duration = Convert.ToInt32(arc.Duration);
var duration = arc.Duration;
var cover = _imageAdapter.ConvertToImage(arc.Pic);
var collaborators = videoDetail.Staff.Count > 0
? videoDetail.Staff.Select(p => _userAdapter.ConvertToRoleProfile(p, Models.Enums.App.AvatarSize.Size32))
Expand Down Expand Up @@ -479,7 +479,7 @@ private IEnumerable<VideoIdentifier> GetSubVideosFromViewReply(ViewReply videoDe
{
var cid = page.Page.Cid.ToString();
var title = _textToolkit.ConvertToTraditionalChineseIfNeeded(page.Page.Part);
var duration = Convert.ToInt32(page.Page.Duration);
var duration = page.Page.Duration;
var identifier = new VideoIdentifier(cid, title, duration, null);
subVideos.Add(identifier);
}
Expand Down
4 changes: 2 additions & 2 deletions src/Models/Models.Data/Video/VideoIdentifier.cs
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@ public struct VideoIdentifier
/// <param name="title">视频名称.</param>
/// <param name="duration">视频时长.</param>
/// <param name="cover">封面.</param>
public VideoIdentifier(string id, string title, int duration, Image cover)
public VideoIdentifier(string id, string title, long duration, Image cover)
{
Id = id;
Title = title;
Expand All @@ -38,7 +38,7 @@ public VideoIdentifier(string id, string title, int duration, Image cover)
/// <summary>
/// 视频时长,以秒为单位.
/// </summary>
public int Duration { get; }
public long Duration { get; }

/// <summary>
/// 视频 Id,属于网站的资源标识符.
Expand Down

0 comments on commit cd2c5e2

Please sign in to comment.