pull/88/head
FongMi 1 year ago
parent cdb8366d6e
commit fb95d2a450
  1. 21
      app/src/main/java/com/github/catvod/spider/Bili.java
  2. BIN
      jar/custom_spider.jar
  3. 2
      jar/custom_spider.jar.md5

@ -38,7 +38,6 @@ import java.util.Map;
public class Bili extends Spider {
private static final String COOKIE = "buvid3=84B0395D-C9F2-C490-E92E-A09AB48FE26E71636infoc";
private static Map<String, String> audios;
private static String cookie;
private JsonObject extend;
@ -54,13 +53,6 @@ public class Bili extends Spider {
return headers;
}
private void setAudio() {
audios = new HashMap<>();
audios.put("30280", "192000");
audios.put("30232", "132000");
audios.put("30216", "64000");
}
private void setCookie() {
cookie = extend.get("cookie").getAsString();
if (cookie.startsWith("http")) cookie = OkHttp.string(cookie).trim();
@ -83,7 +75,6 @@ public class Bili extends Spider {
public void init(Context context, String extend) throws Exception {
this.extend = Json.safeObject(extend);
setCookie();
setAudio();
}
@Override
@ -231,9 +222,17 @@ public class Bili extends Spider {
return result;
}
private static HashMap<String, String> getAudioFormat() {
HashMap<String, String> audios = new HashMap<>();
audios.put("30280", "192000");
audios.put("30232", "132000");
audios.put("30216", "64000");
return audios;
}
private static void findAudio(Dash dash, StringBuilder sb) {
for (Media audio : dash.getAudio()) {
for (String key : audios.keySet()) {
for (String key : getAudioFormat().keySet()) {
if (audio.getId().equals(key)) {
sb.append(getMedia(audio));
}
@ -253,7 +252,7 @@ public class Bili extends Spider {
if (media.getMimeType().startsWith("video")) {
return getAdaptationSet(media, String.format(Locale.getDefault(), "height='%s' width='%s' frameRate='%s' sar='%s'", media.getHeight(), media.getWidth(), media.getFrameRate(), media.getSar()));
} else if (media.getMimeType().startsWith("audio")) {
return getAdaptationSet(media, String.format("numChannels='2' sampleRate='%s'", audios.get(media.getId())));
return getAdaptationSet(media, String.format("numChannels='2' sampleRate='%s'", getAudioFormat().get(media.getId())));
} else {
return "";
}

Binary file not shown.

@ -1 +1 @@
180e5301bc663f0f47928de94f1a8c94
9420d75153250b3e5d548637b60f66ee

Loading…
Cancel
Save