Skip to content

Commit 5079d5e

Browse files
authored
Merge branch 'master' into invidious-support
2 parents 6390eb2 + d15f329 commit 5079d5e

39 files changed

Lines changed: 1378 additions & 94 deletions

extractor/.attach_pid31246

Whitespace-only changes.

extractor/src/main/java/org/schabi/newpipe/extractor/Info.java

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,7 @@ public abstract class Info implements Serializable {
2727
*
2828
* @see Extractor#getOriginalUrl()
2929
*/
30-
private final String originalUrl;
30+
private String originalUrl;
3131
private final String name;
3232

3333
private final List<Throwable> errors = new ArrayList<>();
@@ -62,6 +62,12 @@ public String toString() {
6262
return getClass().getSimpleName() + "[url=\"" + url + "\"" + ifDifferentString + ", name=\"" + name + "\"]";
6363
}
6464

65+
// if you use an api and want to handle the website url
66+
// overriding original url is essential
67+
public void setOriginalUrl(String url) {
68+
originalUrl = url;
69+
}
70+
6571
public int getServiceId() {
6672
return serviceId;
6773
}

extractor/src/main/java/org/schabi/newpipe/extractor/MediaFormat.java

Lines changed: 13 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -30,20 +30,21 @@ public enum MediaFormat {
3030
//video and audio combined formats
3131
// id name suffix mime type
3232
MPEG_4 (0x0, "MPEG-4", "mp4", "video/mp4"),
33-
v3GPP (0x1, "3GPP", "3gp", "video/3gpp"),
34-
WEBM (0x2, "WebM", "webm", "video/webm"),
33+
v3GPP (0x10, "3GPP", "3gp", "video/3gpp"),
34+
WEBM (0x20, "WebM", "webm", "video/webm"),
3535
// audio formats
36-
M4A (0x3, "m4a", "m4a", "audio/mp4"),
37-
WEBMA (0x4, "WebM", "webm", "audio/webm"),
38-
MP3 (0x5, "MP3", "mp3", "audio/mpeg"),
39-
OPUS (0x6, "opus", "opus", "audio/opus"),
36+
M4A (0x100, "m4a", "m4a", "audio/mp4"),
37+
WEBMA (0x200, "WebM", "webm", "audio/webm"),
38+
MP3 (0x300, "MP3", "mp3", "audio/mpeg"),
39+
OPUS (0x400, "opus", "opus", "audio/opus"),
40+
OGG (0x500, "ogg", "ogg", "audio/ogg"),
4041
// subtitles formats
41-
VTT (0x7, "WebVTT", "vtt", "text/vtt"),
42-
TTML (0x8, "Timed Text Markup Language", "ttml", "application/ttml+xml"),
43-
TRANSCRIPT1 (0x9, "TranScript v1", "srv1", "text/xml"),
44-
TRANSCRIPT2 (0xA, "TranScript v2", "srv2", "text/xml"),
45-
TRANSCRIPT3 (0xB, "TranScript v3", "srv3", "text/xml"),
46-
SRT (0xC, "SubRip file format", "srt", "text/srt");
42+
VTT (0x1000, "WebVTT", "vtt", "text/vtt"),
43+
TTML (0x2000, "Timed Text Markup Language", "ttml", "application/ttml+xml"),
44+
TRANSCRIPT1 (0x3000, "TranScript v1", "srv1", "text/xml"),
45+
TRANSCRIPT2 (0x4000, "TranScript v2", "srv2", "text/xml"),
46+
TRANSCRIPT3 (0x5000, "TranScript v3", "srv3", "text/xml"),
47+
SRT (0x6000, "SubRip file format", "srt", "text/srt");
4748

4849
public final int id;
4950
public final String name;

extractor/src/main/java/org/schabi/newpipe/extractor/ServiceList.java

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
package org.schabi.newpipe.extractor;
22

3+
import org.schabi.newpipe.extractor.services.media_ccc.MediaCCCService;
34
import org.schabi.newpipe.extractor.services.soundcloud.SoundcloudService;
45
import org.schabi.newpipe.extractor.services.youtube.YoutubeService;
56

@@ -36,6 +37,7 @@ private ServiceList() {
3637

3738
public static final YoutubeService YouTube;
3839
public static final SoundcloudService SoundCloud;
40+
public static final MediaCCCService MediaCCC;
3941

4042
/**
4143
* When creating a new service, put this service in the end of this list,
@@ -44,7 +46,8 @@ private ServiceList() {
4446
private static final List<StreamingService> SERVICES = unmodifiableList(
4547
asList(
4648
YouTube = new YoutubeService(0),
47-
SoundCloud = new SoundcloudService(1)
49+
SoundCloud = new SoundcloudService(1),
50+
MediaCCC = new MediaCCCService(2)
4851
));
4952

5053
/**

extractor/src/main/java/org/schabi/newpipe/extractor/channel/ChannelExtractor.java

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -38,5 +38,4 @@ public ChannelExtractor(StreamingService service, ListLinkHandler linkHandler, L
3838
public abstract String getFeedUrl() throws ParsingException;
3939
public abstract long getSubscriberCount() throws ParsingException;
4040
public abstract String getDescription() throws ParsingException;
41-
public abstract String[] getDonationLinks() throws ParsingException;
4241
}

extractor/src/main/java/org/schabi/newpipe/extractor/channel/ChannelInfo.java

Lines changed: 5 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -61,7 +61,11 @@ public static ChannelInfo getInfo(ChannelExtractor extractor) throws IOException
6161
extractor.getLinkHandler(),
6262
extractor.getName());
6363

64-
64+
try {
65+
info.setOriginalUrl(extractor.getOriginalUrl());
66+
} catch (Exception e) {
67+
info.addError(e);
68+
}
6569
try {
6670
info.setAvatarUrl(extractor.getAvatarUrl());
6771
} catch (Exception e) {
@@ -92,11 +96,6 @@ public static ChannelInfo getInfo(ChannelExtractor extractor) throws IOException
9296
} catch (Exception e) {
9397
info.addError(e);
9498
}
95-
try {
96-
info.setDonationLinks(extractor.getDonationLinks());
97-
} catch (Exception e) {
98-
info.addError(e);
99-
}
10099

101100
return info;
102101
}

extractor/src/main/java/org/schabi/newpipe/extractor/kiosk/KioskExtractor.java

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -20,6 +20,7 @@
2020
* along with NewPipe. If not, see <http://www.gnu.org/licenses/>.
2121
*/
2222

23+
import org.schabi.newpipe.extractor.InfoItem;
2324
import org.schabi.newpipe.extractor.ListExtractor;
2425
import org.schabi.newpipe.extractor.StreamingService;
2526
import org.schabi.newpipe.extractor.exceptions.ParsingException;
@@ -29,7 +30,7 @@
2930

3031
import javax.annotation.Nonnull;
3132

32-
public abstract class KioskExtractor extends ListExtractor<StreamInfoItem> {
33+
public abstract class KioskExtractor<T extends InfoItem> extends ListExtractor<T> {
3334
private final String id;
3435

3536
public KioskExtractor(StreamingService streamingService,

extractor/src/main/java/org/schabi/newpipe/extractor/kiosk/KioskList.java

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -49,6 +49,11 @@ public void setDefaultKiosk(String kioskType) {
4949
defaultKiosk = kioskType;
5050
}
5151

52+
public KioskExtractor getDefaultKioskExtractor()
53+
throws ExtractionException, IOException {
54+
return getDefaultKioskExtractor("");
55+
}
56+
5257
public KioskExtractor getDefaultKioskExtractor(String nextPageUrl)
5358
throws ExtractionException, IOException {
5459
return getDefaultKioskExtractor(nextPageUrl, NewPipe.getPreferredLocalization());

extractor/src/main/java/org/schabi/newpipe/extractor/playlist/PlaylistInfo.java

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -47,6 +47,11 @@ public static PlaylistInfo getInfo(PlaylistExtractor extractor) throws Extractio
4747
extractor.getLinkHandler(),
4848
extractor.getName());
4949

50+
try {
51+
info.setOriginalUrl(extractor.getOriginalUrl());
52+
} catch (Exception e) {
53+
info.addError(e);
54+
}
5055
try {
5156
info.setStreamCount(extractor.getStreamCount());
5257
} catch (Exception e) {

extractor/src/main/java/org/schabi/newpipe/extractor/search/SearchInfo.java

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -37,6 +37,11 @@ public static SearchInfo getInfo(SearchExtractor extractor) throws ExtractionExc
3737
extractor.getLinkHandler(),
3838
extractor.getSearchString());
3939

40+
try {
41+
info.setOriginalUrl(extractor.getOriginalUrl());
42+
} catch (Exception e) {
43+
info.addError(e);
44+
}
4045
try {
4146
info.searchSuggestion = extractor.getSearchSuggestion();
4247
} catch (Exception e) {

0 commit comments

Comments
 (0)