Optimize media3 okhttp

fongmi
jhengazuki 1 month ago
parent 161dfac28a
commit f66f86585c
  1. 2
      app/src/main/java/com/fongmi/android/tv/player/exo/MediaSourceFactory.java
  2. 7
      catvod/src/main/java/com/github/catvod/net/OkHttp.java

@ -98,7 +98,7 @@ public class MediaSourceFactory implements MediaSource.Factory {
}
private HttpDataSource.Factory getHttpDataSourceFactory() {
if (httpDataSourceFactory == null) httpDataSourceFactory = new OkHttpDataSource.Factory(OkHttp.client());
if (httpDataSourceFactory == null) httpDataSourceFactory = new OkHttpDataSource.Factory(OkHttp.player());
return httpDataSourceFactory;
}
}

@ -40,6 +40,7 @@ public class OkHttp {
private OkAuthenticator authenticator;
private OkProxySelector selector;
private OkHttpClient client;
private OkHttpClient player;
private OkDns dns;
private static class Loader {
@ -63,6 +64,7 @@ public class OkHttp {
public void setDoh(Doh doh) {
dns().setDoh(doh.getUrl().isEmpty() ? null : new DnsOverHttps.Builder().client(new OkHttpClient()).url(HttpUrl.get(doh.getUrl())).bootstrapDnsHosts(doh.getHosts()).build());
client = null;
player = null;
}
public static OkDns dns() {
@ -100,6 +102,11 @@ public class OkHttp {
return get().client = getBuilder().build();
}
public static OkHttpClient player() {
if (get().player != null) return get().player;
return get().player = getBuilder().build();
}
public static OkHttpClient client(long timeout) {
return client().newBuilder().connectTimeout(timeout, TimeUnit.MILLISECONDS).readTimeout(timeout, TimeUnit.MILLISECONDS).writeTimeout(timeout, TimeUnit.MILLISECONDS).build();
}

Loading…
Cancel
Save