diff --git a/extractor/src/main/java/org/schabi/newpipe/extractor/comments/CommentsInfoItem.java b/extractor/src/main/java/org/schabi/newpipe/extractor/comments/CommentsInfoItem.java index d2790927..f3271060 100644 --- a/extractor/src/main/java/org/schabi/newpipe/extractor/comments/CommentsInfoItem.java +++ b/extractor/src/main/java/org/schabi/newpipe/extractor/comments/CommentsInfoItem.java @@ -20,6 +20,9 @@ public class CommentsInfoItem extends InfoItem { private String textualLikeCount; private boolean heartedByUploader; private boolean pinned; + private int streamPosition; + + public static final int NO_STREAM_POSITION = -1; public CommentsInfoItem(int serviceId, String url, String name) { super(InfoType.COMMENT, serviceId, url, name); @@ -121,4 +124,17 @@ public class CommentsInfoItem extends InfoItem { public boolean isUploaderVerified() { return uploaderVerified; } + + public void setStreamPosition(final int streamPosition) { + this.streamPosition = streamPosition; + } + + /** + * Get the playback position of the stream to which this comment belongs. + * This is not supported by all services. + * @return the playback position in seconds or {@link #NO_STREAM_POSITION} if not available + */ + public int getStreamPosition() { + return streamPosition; + } } diff --git a/extractor/src/main/java/org/schabi/newpipe/extractor/comments/CommentsInfoItemExtractor.java b/extractor/src/main/java/org/schabi/newpipe/extractor/comments/CommentsInfoItemExtractor.java index 15266e2e..fb1af7ab 100644 --- a/extractor/src/main/java/org/schabi/newpipe/extractor/comments/CommentsInfoItemExtractor.java +++ b/extractor/src/main/java/org/schabi/newpipe/extractor/comments/CommentsInfoItemExtractor.java @@ -94,4 +94,12 @@ public interface CommentsInfoItemExtractor extends InfoItemExtractor { default boolean isUploaderVerified() throws ParsingException { return false; } + + /** + * The playback position of the stream to which this comment belongs. + * @see CommentsInfoItem#getStreamPosition() + */ + default int getStreamPosition() throws ParsingException { + return CommentsInfoItem.NO_STREAM_POSITION; + } } diff --git a/extractor/src/main/java/org/schabi/newpipe/extractor/comments/CommentsInfoItemsCollector.java b/extractor/src/main/java/org/schabi/newpipe/extractor/comments/CommentsInfoItemsCollector.java index 97d394e1..3dc2d95f 100644 --- a/extractor/src/main/java/org/schabi/newpipe/extractor/comments/CommentsInfoItemsCollector.java +++ b/extractor/src/main/java/org/schabi/newpipe/extractor/comments/CommentsInfoItemsCollector.java @@ -87,6 +87,12 @@ public class CommentsInfoItemsCollector extends InfoItemsCollector