Skip to content

Commit a7c9905

Browse files
committed
Fix requested changes.
1 parent 0c0f2d7 commit a7c9905

3 files changed

Lines changed: 40 additions & 46 deletions

File tree

extractor/src/main/java/org/schabi/newpipe/extractor/services/youtube/extractors/YoutubeStreamExtractor.java

Lines changed: 10 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -502,7 +502,7 @@ public List<AudioStream> getAudioStreams() throws ExtractionException {
502502
for (Map.Entry<String, ItagItem> entry : getItags(ADAPTIVE_FORMATS, ItagItem.ItagType.AUDIO).entrySet()) {
503503
ItagItem itag = entry.getValue();
504504

505-
AudioStream audioStream = new AudioStream(entry.getKey(), itag.getMediaFormat(), itag.avgBitrate, itag.bitrate, itag.initStart, itag.initEnd, itag.indexStart, itag.indexEnd, itag.codec);
505+
AudioStream audioStream = new AudioStream(entry.getKey(), itag);
506506
if (!Stream.containSimilarStream(audioStream, audioStreams)) {
507507
audioStreams.add(audioStream);
508508
}
@@ -542,7 +542,7 @@ public List<VideoStream> getVideoOnlyStreams() throws ExtractionException {
542542
for (Map.Entry<String, ItagItem> entry : getItags(ADAPTIVE_FORMATS, ItagItem.ItagType.VIDEO_ONLY).entrySet()) {
543543
ItagItem itag = entry.getValue();
544544

545-
VideoStream videoStream = new VideoStream(entry.getKey(), itag.getMediaFormat(), itag.resolutionString, true, itag.bitrate, itag.initStart, itag.initEnd, itag.indexStart, itag.indexEnd, itag.codec, itag.width, itag.height);
545+
VideoStream videoStream = new VideoStream(entry.getKey(), true, itag);
546546
if (!Stream.containSimilarStream(videoStream, videoOnlyStreams)) {
547547
videoOnlyStreams.add(videoStream);
548548
}
@@ -949,27 +949,19 @@ private Map<String, ItagItem> getItags(final String streamingDataKey,
949949
+ deobfuscateSignature(cipher.get("s"));
950950
}
951951

952-
int bitrate = formatData.getInt("bitrate");
953-
int width = formatData.getInt("width");
954-
int height = formatData.getInt("height");
955952
JsonObject initRange = formatData.getObject("initRange");
956953
JsonObject indexRange = formatData.getObject("indexRange");
957-
int initStart = Integer.parseInt(initRange.getString("start", "-1"));
958-
int initEnd = Integer.parseInt(initRange.getString("end", "-1"));
959-
int indexStart = Integer.parseInt(indexRange.getString("start", "-1"));
960-
int indexEnd = Integer.parseInt(indexRange.getString("end", "-1"));
961-
int fps = formatData.getInt("fps");
962954
String mimeType = formatData.getString("mimeType", EMPTY_STRING);
963955
String codec = mimeType.contains("codecs") ? mimeType.split("\"")[1] : EMPTY_STRING;
964956

965-
itagItem.bitrate = bitrate;
966-
itagItem.width = width;
967-
itagItem.height = height;
968-
itagItem.initStart = initStart;
969-
itagItem.initEnd = initEnd;
970-
itagItem.indexStart = indexStart;
971-
itagItem.indexEnd = indexEnd;
972-
itagItem.fps = fps;
957+
itagItem.bitrate = formatData.getInt("bitrate");
958+
itagItem.width = formatData.getInt("width");
959+
itagItem.height = formatData.getInt("height");
960+
itagItem.initStart = Integer.parseInt(initRange.getString("start", "-1"));
961+
itagItem.initEnd = Integer.parseInt(initRange.getString("end", "-1"));
962+
itagItem.indexStart = Integer.parseInt(indexRange.getString("start", "-1"));
963+
itagItem.indexEnd = Integer.parseInt(indexRange.getString("end", "-1"));
964+
itagItem.fps = formatData.getInt("fps");
973965
itagItem.codec = codec;
974966

975967
urlAndItags.put(streamUrl, itagItem);

extractor/src/main/java/org/schabi/newpipe/extractor/stream/AudioStream.java

Lines changed: 10 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -21,6 +21,7 @@
2121
*/
2222

2323
import org.schabi.newpipe.extractor.MediaFormat;
24+
import org.schabi.newpipe.extractor.services.youtube.ItagItem;
2425

2526
public class AudioStream extends Stream {
2627
public int average_bitrate = -1;
@@ -50,15 +51,15 @@ public AudioStream(String url, MediaFormat format, int averageBitrate) {
5051
* @param format the format
5152
* @param averageBitrate the average bitrate
5253
*/
53-
public AudioStream(String url, MediaFormat format, int averageBitrate, int bitrate, int initStart, int initEnd, int indexStart, int indexEnd, String codec) {
54-
super(url, format);
55-
this.average_bitrate = averageBitrate;
56-
this.bitrate = bitrate;
57-
this.initStart = initStart;
58-
this.initEnd = initEnd;
59-
this.indexStart = indexStart;
60-
this.indexEnd = indexEnd;
61-
this.codec = codec;
54+
public AudioStream(String url, ItagItem itag) {
55+
super(url, itag.getMediaFormat());
56+
this.average_bitrate = itag.avgBitrate;
57+
this.bitrate = itag.bitrate;
58+
this.initStart = itag.initStart;
59+
this.initEnd = itag.initEnd;
60+
this.indexStart = itag.indexStart;
61+
this.indexEnd = itag.indexEnd;
62+
this.codec = itag.codec;
6263
}
6364

6465
@Override

extractor/src/main/java/org/schabi/newpipe/extractor/stream/VideoStream.java

Lines changed: 20 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -21,20 +21,21 @@
2121
*/
2222

2323
import org.schabi.newpipe.extractor.MediaFormat;
24+
import org.schabi.newpipe.extractor.services.youtube.ItagItem;
2425

2526
public class VideoStream extends Stream {
2627
public final String resolution;
2728
public final boolean isVideoOnly;
2829

2930
// Fields for Dash
30-
public int bitrate;
31-
public int initStart;
32-
public int initEnd;
33-
public int indexStart;
34-
public int indexEnd;
35-
public int width;
36-
public int height;
37-
public String codec;
31+
private int bitrate;
32+
private int initStart;
33+
private int initEnd;
34+
private int indexStart;
35+
private int indexEnd;
36+
private int width;
37+
private int height;
38+
private String codec;
3839

3940
public VideoStream(String url, MediaFormat format, String resolution) {
4041
this(url, format, resolution, false);
@@ -46,18 +47,18 @@ public VideoStream(String url, MediaFormat format, String resolution, boolean is
4647
this.isVideoOnly = isVideoOnly;
4748
}
4849

49-
public VideoStream(String url, MediaFormat format, String resolution, boolean isVideoOnly, int bitrate, int initStart, int initEnd, int indexStart, int indexEnd, String codec, int width, int height) {
50-
super(url, format);
51-
this.resolution = resolution;
50+
public VideoStream(String url, boolean isVideoOnly, ItagItem itag) {
51+
super(url, itag.getMediaFormat());
52+
this.resolution = itag.resolutionString;
5253
this.isVideoOnly = isVideoOnly;
53-
this.bitrate = bitrate;
54-
this.initStart = initStart;
55-
this.initEnd = initEnd;
56-
this.indexStart = indexStart;
57-
this.indexEnd = indexEnd;
58-
this.codec = codec;
59-
this.height = height;
60-
this.width = width;
54+
this.bitrate = itag.bitrate;
55+
this.initStart = itag.initStart;
56+
this.initEnd = itag.initEnd;
57+
this.indexStart = itag.indexStart;
58+
this.indexEnd = itag.indexEnd;
59+
this.codec = itag.codec;
60+
this.height = itag.height;
61+
this.width = itag.width;
6162
}
6263

6364
public VideoStream(String url, String torrentUrl, MediaFormat format, String resolution) {

0 commit comments

Comments
 (0)