mirror of
https://github.com/TeamPiped/Piped-Backend.git
synced 2024-08-14 23:51:41 +00:00
feat: support for meta info of videos
This commit is contained in:
parent
36edf34793
commit
adacbfe285
4 changed files with 31 additions and 2 deletions
|
@ -64,13 +64,18 @@ public class CollectionUtils {
|
||||||
|
|
||||||
final List<ContentItem> relatedStreams = collectRelatedItems(info.getRelatedItems());
|
final List<ContentItem> relatedStreams = collectRelatedItems(info.getRelatedItems());
|
||||||
|
|
||||||
|
final List<MetaInfo> metaInfo = new ObjectArrayList<>();
|
||||||
|
info.getMetaInfo().forEach(metaInfoItem -> {
|
||||||
|
metaInfo.add(new MetaInfo(metaInfoItem.getTitle(), metaInfoItem.getContent().getContent(), metaInfoItem.getUrls(), metaInfoItem.getUrlTexts()));
|
||||||
|
});
|
||||||
|
|
||||||
return new Streams(info.getName(), info.getDescription().getContent(),
|
return new Streams(info.getName(), info.getDescription().getContent(),
|
||||||
info.getTextualUploadDate(), info.getUploaderName(), substringYouTube(info.getUploaderUrl()),
|
info.getTextualUploadDate(), info.getUploaderName(), substringYouTube(info.getUploaderUrl()),
|
||||||
rewriteURL(info.getUploaderAvatarUrl()), rewriteURL(info.getThumbnailUrl()), info.getDuration(),
|
rewriteURL(info.getUploaderAvatarUrl()), rewriteURL(info.getThumbnailUrl()), info.getDuration(),
|
||||||
info.getViewCount(), info.getLikeCount(), info.getDislikeCount(), info.getUploaderSubscriberCount(), info.isUploaderVerified(),
|
info.getViewCount(), info.getLikeCount(), info.getDislikeCount(), info.getUploaderSubscriberCount(), info.isUploaderVerified(),
|
||||||
audioStreams, videoStreams, relatedStreams, subtitles, livestream, rewriteVideoURL(info.getHlsUrl()),
|
audioStreams, videoStreams, relatedStreams, subtitles, livestream, rewriteVideoURL(info.getHlsUrl()),
|
||||||
rewriteVideoURL(info.getDashMpdUrl()), null, info.getCategory(), info.getLicence(),
|
rewriteVideoURL(info.getDashMpdUrl()), null, info.getCategory(), info.getLicence(),
|
||||||
info.getPrivacy().name().toLowerCase(), info.getTags(), chapters, previewFrames);
|
info.getPrivacy().name().toLowerCase(), info.getTags(), metaInfo, chapters, previewFrames);
|
||||||
}
|
}
|
||||||
|
|
||||||
public static List<ContentItem> collectRelatedItems(List<? extends InfoItem> items) {
|
public static List<ContentItem> collectRelatedItems(List<? extends InfoItem> items) {
|
||||||
|
|
17
src/main/java/me/kavin/piped/utils/obj/MetaInfo.java
Normal file
17
src/main/java/me/kavin/piped/utils/obj/MetaInfo.java
Normal file
|
@ -0,0 +1,17 @@
|
||||||
|
package me.kavin.piped.utils.obj;
|
||||||
|
|
||||||
|
import java.util.List;
|
||||||
|
import java.net.URL;
|
||||||
|
|
||||||
|
public class MetaInfo {
|
||||||
|
public String title, description;
|
||||||
|
public List<URL> urls;
|
||||||
|
public List<String> urlTexts;
|
||||||
|
|
||||||
|
public MetaInfo(String title, String description, List<URL> urls, List<String> urlTexts) {
|
||||||
|
this.title = title;
|
||||||
|
this.description = description;
|
||||||
|
this.urls = urls;
|
||||||
|
this.urlTexts = urlTexts;
|
||||||
|
}
|
||||||
|
}
|
|
@ -13,6 +13,8 @@ public class Streams {
|
||||||
|
|
||||||
public List<String> tags;
|
public List<String> tags;
|
||||||
|
|
||||||
|
public List<MetaInfo> metaInfo;
|
||||||
|
|
||||||
public boolean uploaderVerified;
|
public boolean uploaderVerified;
|
||||||
|
|
||||||
public long duration, views, likes, dislikes, uploaderSubscriberCount;
|
public long duration, views, likes, dislikes, uploaderSubscriberCount;
|
||||||
|
@ -35,7 +37,8 @@ public class Streams {
|
||||||
String uploaderAvatar, String thumbnailUrl, long duration, long views, long likes, long dislikes, long uploaderSubscriberCount,
|
String uploaderAvatar, String thumbnailUrl, long duration, long views, long likes, long dislikes, long uploaderSubscriberCount,
|
||||||
boolean uploaderVerified, List<PipedStream> audioStreams, List<PipedStream> videoStreams,
|
boolean uploaderVerified, List<PipedStream> audioStreams, List<PipedStream> videoStreams,
|
||||||
List<ContentItem> relatedStreams, List<Subtitle> subtitles, boolean livestream, String hls, String dash,
|
List<ContentItem> relatedStreams, List<Subtitle> subtitles, boolean livestream, String hls, String dash,
|
||||||
String lbryId, String category, String license, String visibility, List<String> tags, List<ChapterSegment> chapters, List<PreviewFrames> previewFrames) {
|
String lbryId, String category, String license, String visibility, List<String> tags, List<MetaInfo> metaInfo,
|
||||||
|
List<ChapterSegment> chapters, List<PreviewFrames> previewFrames) {
|
||||||
this.title = title;
|
this.title = title;
|
||||||
this.description = description;
|
this.description = description;
|
||||||
this.uploadDate = uploadDate;
|
this.uploadDate = uploadDate;
|
||||||
|
@ -62,6 +65,7 @@ public class Streams {
|
||||||
this.category = category;
|
this.category = category;
|
||||||
this.license = license;
|
this.license = license;
|
||||||
this.tags = tags;
|
this.tags = tags;
|
||||||
|
this.metaInfo = metaInfo;
|
||||||
this.visibility = visibility;
|
this.visibility = visibility;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -39,6 +39,9 @@ curl "${CURLOPTS[@]}" $HOST/clips/Ugkx71jS31nwsms_Cc65oi7yXF1mILflhhrO || exit 1
|
||||||
# Streams
|
# Streams
|
||||||
curl "${CURLOPTS[@]}" $HOST/streams/BtN-goy9VOY || exit 1
|
curl "${CURLOPTS[@]}" $HOST/streams/BtN-goy9VOY || exit 1
|
||||||
|
|
||||||
|
# Streams with meta info
|
||||||
|
curl "${CURLOPTS[@]}" $HOST/streams/cJ9to6EmElQ || exit 1
|
||||||
|
|
||||||
# Comments
|
# Comments
|
||||||
curl "${CURLOPTS[@]}" $HOST/comments/BtN-goy9VOY || exit 1
|
curl "${CURLOPTS[@]}" $HOST/comments/BtN-goy9VOY || exit 1
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue