From d9fd2788046e3a67e9c644792a65fb90c18fff0a Mon Sep 17 00:00:00 2001 From: Horis <8674809+821938089@users.noreply.github.com> Date: Wed, 14 Jan 2026 13:49:25 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BC=98=E5=8C=96=20#5655?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../io/legado/app/help/exoplayer/ExoPlayerHelper.kt | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/app/src/main/java/io/legado/app/help/exoplayer/ExoPlayerHelper.kt b/app/src/main/java/io/legado/app/help/exoplayer/ExoPlayerHelper.kt index 7e4fe8cca..35956f59b 100644 --- a/app/src/main/java/io/legado/app/help/exoplayer/ExoPlayerHelper.kt +++ b/app/src/main/java/io/legado/app/help/exoplayer/ExoPlayerHelper.kt @@ -16,6 +16,7 @@ import androidx.media3.datasource.okhttp.OkHttpDataSource import androidx.media3.exoplayer.DefaultLoadControl import androidx.media3.exoplayer.ExoPlayer import androidx.media3.exoplayer.source.DefaultMediaSourceFactory +import androidx.media3.extractor.DefaultExtractorsFactory import com.google.gson.reflect.TypeToken import io.legado.app.help.http.okHttpClient import io.legado.app.utils.GSON @@ -51,15 +52,15 @@ object ExoPlayerHelper { ).build() ).setMediaSourceFactory( - DefaultMediaSourceFactory(context) - .setDataSourceFactory(resolvingDataSource) + DefaultMediaSourceFactory( + context, + DefaultExtractorsFactory().setConstantBitrateSeekingEnabled(true) + ).setDataSourceFactory(resolvingDataSource) .setLiveTargetOffsetMs(5000) ).build() } - - private val resolvingDataSource: ResolvingDataSource.Factory by lazy { ResolvingDataSource.Factory(cacheDataSourceFactory) { var res = it @@ -86,7 +87,7 @@ object ExoPlayerHelper { */ private val cacheDataSourceFactory by lazy { //使用自定义的CacheDataSource以支持设置UA - return@lazy CacheDataSource.Factory() + CacheDataSource.Factory() .setCache(cache) .setUpstreamDataSourceFactory(okhttpDataFactory) .setCacheReadDataSourceFactory(FileDataSource.Factory())