public class BandcampStreamExtractor extends StreamExtractor
StreamExtractor.Privacy
NO_AGE_LIMIT, UNKNOWN_SUBSCRIBER_COUNT
Constructor and Description |
---|
BandcampStreamExtractor(StreamingService service,
LinkHandler linkHandler) |
Modifier and Type | Method and Description |
---|---|
static com.grack.nanojson.JsonObject |
getAlbumInfoJson(String html)
Get the JSON that contains album's metadata from page
|
List<AudioStream> |
getAudioStreams()
This should return a list of available
AudioStream s. |
String |
getCategory()
The name of the category of the stream.
|
Description |
getDescription()
This is the stream description.
|
String |
getLicence()
The name of the licence of the stream.
|
String |
getName()
Get the name
|
PlaylistInfoItemsCollector |
getRelatedItems()
Should return a list of streams related to the current handled.
|
StreamType |
getStreamType()
Get the
StreamType . |
List<String> |
getTags()
The list of tags of the stream.
|
String |
getTextualUploadDate()
The original textual date provided by the service.
|
String |
getThumbnailUrl()
This will return the url to the thumbnail of the stream.
|
DateWrapper |
getUploadDate()
A more general
Calendar instance set to the date provided by the service.Implementations usually will just parse the date returned from the StreamExtractor.getTextualUploadDate() . |
String |
getUploaderAvatarUrl()
The url to the image file/profile picture/avatar of the creator/uploader of the stream.
|
String |
getUploaderName()
The name of the creator/uploader of the stream.
|
String |
getUploaderUrl()
The Url to the page of the creator/uploader of the stream.
|
String |
getUrl() |
List<VideoStream> |
getVideoOnlyStreams()
This should return a list of available
VideoStream s. |
List<VideoStream> |
getVideoStreams()
This should return a list of available
VideoStream s. |
void |
onFetchPage(Downloader downloader)
Fetch the current page.
|
getAgeLimit, getDashMpdUrl, getDislikeCount, getErrorMessage, getFrames, getHlsUrl, getHost, getLanguageInfo, getLength, getLikeCount, getMetaInfo, getPrivacy, getRelatedStreams, getStreamSegments, getSubChannelAvatarUrl, getSubChannelName, getSubChannelUrl, getSubtitles, getSubtitlesDefault, getSupportInfo, getTimeStamp, getTimestampSeconds, getUploaderSubscriberCount, getViewCount, isUploaderVerified
assertPageFetched, fetchPage, forceContentCountry, forceLocalization, getBaseUrl, getDownloader, getExtractorContentCountry, getExtractorLocalization, getId, getLinkHandler, getOriginalUrl, getService, getServiceId, getTimeAgoParser, isPageFetched
public BandcampStreamExtractor(StreamingService service, LinkHandler linkHandler)
public void onFetchPage(@Nonnull Downloader downloader) throws IOException, ExtractionException
Extractor
onFetchPage
in class Extractor
downloader
- the downloader to useIOException
- if the page can not be loadedExtractionException
- if the pages content is not understoodpublic static com.grack.nanojson.JsonObject getAlbumInfoJson(String html) throws ParsingException
html
- WebsiteParsingException
- In case of a faulty website@Nonnull public String getName() throws ParsingException
Extractor
getName
in class Extractor
ParsingException
- if the name cannot be extracted@Nonnull public String getUploaderUrl() throws ParsingException
StreamExtractor
ChannelExtractor
, so be sure to implement that one before you return a value here,
otherwise NewPipe will crash if one selects this url.getUploaderUrl
in class StreamExtractor
ParsingException
@Nonnull public String getUrl() throws ParsingException
getUrl
in class Extractor
ParsingException
@Nonnull public String getUploaderName() throws ParsingException
StreamExtractor
getUploaderName
in class StreamExtractor
ParsingException
@Nullable public String getTextualUploadDate()
StreamExtractor
StreamExtractor.getUploadDate()
isn't provided by the service, or it fails for some reason.
If the stream is a live stream, null
should be returned.
getTextualUploadDate
in class StreamExtractor
null
.StreamExtractor.getUploadDate()
@Nullable public DateWrapper getUploadDate() throws ParsingException
StreamExtractor
Calendar
instance set to the date provided by the service.StreamExtractor.getTextualUploadDate()
.
If the stream is a live stream, null
should be returned.
getUploadDate
in class StreamExtractor
null
.ParsingException
- if there is an error in the extraction
or the extracted date couldn't be parsed.StreamExtractor.getTextualUploadDate()
@Nonnull public String getThumbnailUrl() throws ParsingException
StreamExtractor
getThumbnailUrl
in class StreamExtractor
ParsingException
@Nonnull public String getUploaderAvatarUrl()
StreamExtractor
getUploaderAvatarUrl
in class StreamExtractor
@Nonnull public Description getDescription()
StreamExtractor
getDescription
in class StreamExtractor
Description.EMPTY_DESCRIPTION
if the
description is empty.public List<AudioStream> getAudioStreams()
StreamExtractor
AudioStream
s.
You can also return null or an empty list, however be aware that if you don't return anything
in getVideoStreams(), getVideoOnlyStreams() and getDashMpdUrl() either the Collector will
handle this as a failed extraction procedure.getAudioStreams
in class StreamExtractor
public List<VideoStream> getVideoStreams()
StreamExtractor
VideoStream
s.
Be aware this is the list of video streams which do contain an audio stream.
You can also return null or an empty list, however be aware that if you don't return anything
in getAudioStreams(), getVideoOnlyStreams() and getDashMpdUrl() either the Collector will
handle this as a failed extraction procedure.getVideoStreams
in class StreamExtractor
public List<VideoStream> getVideoOnlyStreams()
StreamExtractor
VideoStream
s.
Be aware this is the list of video streams which do NOT contain an audio stream.
You can also return null or an empty list, however be aware that if you don't return anything
in getAudioStreams(), getVideoStreams() and getDashMpdUrl() either the Collector will handle
this as a failed extraction procedure.getVideoOnlyStreams
in class StreamExtractor
public StreamType getStreamType()
StreamExtractor
StreamType
.getStreamType
in class StreamExtractor
public PlaylistInfoItemsCollector getRelatedItems()
StreamExtractor
null
.getRelatedItems
in class StreamExtractor
@Nonnull public String getCategory()
StreamExtractor
getCategory
in class StreamExtractor
@Nonnull public String getLicence()
StreamExtractor
getLicence
in class StreamExtractor
@Nonnull public List<String> getTags()
StreamExtractor
getTags
in class StreamExtractor