mirror of
https://github.com/recloudstream/cloudstream.git
synced 2024-08-15 01:53:11 +00:00
CS3IPlayer: fix buffer lost when seeked to backward
This commit is contained in:
parent
4f9016713f
commit
d526861649
1 changed files with 10 additions and 5 deletions
|
@ -670,6 +670,11 @@ class CS3IPlayer : IPlayer {
|
||||||
**/
|
**/
|
||||||
maxVideoHeight: Int? = null
|
maxVideoHeight: Int? = null
|
||||||
): ExoPlayer {
|
): ExoPlayer {
|
||||||
|
val bufferDurationMs = if (videoBufferMs <= 0) {
|
||||||
|
DefaultLoadControl.DEFAULT_MAX_BUFFER_MS
|
||||||
|
} else {
|
||||||
|
videoBufferMs.toInt()
|
||||||
|
}
|
||||||
val exoPlayerBuilder =
|
val exoPlayerBuilder =
|
||||||
ExoPlayer.Builder(context)
|
ExoPlayer.Builder(context)
|
||||||
.setRenderersFactory { eventHandler, videoRendererEventListener, audioRendererEventListener, textRendererOutput, metadataRendererOutput ->
|
.setRenderersFactory { eventHandler, videoRendererEventListener, audioRendererEventListener, textRendererOutput, metadataRendererOutput ->
|
||||||
|
@ -712,13 +717,13 @@ class CS3IPlayer : IPlayer {
|
||||||
if (cacheSize > Int.MAX_VALUE) Int.MAX_VALUE else cacheSize.toInt()
|
if (cacheSize > Int.MAX_VALUE) Int.MAX_VALUE else cacheSize.toInt()
|
||||||
}
|
}
|
||||||
)
|
)
|
||||||
|
.setBackBuffer(
|
||||||
|
bufferDurationMs,
|
||||||
|
true
|
||||||
|
)
|
||||||
.setBufferDurationsMs(
|
.setBufferDurationsMs(
|
||||||
DefaultLoadControl.DEFAULT_MIN_BUFFER_MS,
|
DefaultLoadControl.DEFAULT_MIN_BUFFER_MS,
|
||||||
if (videoBufferMs <= 0) {
|
bufferDurationMs,
|
||||||
DefaultLoadControl.DEFAULT_MAX_BUFFER_MS
|
|
||||||
} else {
|
|
||||||
videoBufferMs.toInt()
|
|
||||||
},
|
|
||||||
DefaultLoadControl.DEFAULT_BUFFER_FOR_PLAYBACK_MS,
|
DefaultLoadControl.DEFAULT_BUFFER_FOR_PLAYBACK_MS,
|
||||||
DefaultLoadControl.DEFAULT_BUFFER_FOR_PLAYBACK_AFTER_REBUFFER_MS
|
DefaultLoadControl.DEFAULT_BUFFER_FOR_PLAYBACK_AFTER_REBUFFER_MS
|
||||||
).build()
|
).build()
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue