mirror of
https://github.com/recloudstream/cloudstream.git
synced 2024-08-15 01:53:11 +00:00
Small player release fix
This commit is contained in:
parent
09e04033e7
commit
30511906a8
1 changed files with 12 additions and 5 deletions
|
@ -46,6 +46,7 @@ import com.lagradost.cloudstream3.AcraApplication.Companion.getKey
|
|||
import com.lagradost.cloudstream3.AcraApplication.Companion.setKey
|
||||
import com.lagradost.cloudstream3.USER_AGENT
|
||||
import com.lagradost.cloudstream3.app
|
||||
import com.lagradost.cloudstream3.mvvm.debugAssert
|
||||
import com.lagradost.cloudstream3.mvvm.logError
|
||||
import com.lagradost.cloudstream3.mvvm.normalSafeApiCall
|
||||
import com.lagradost.cloudstream3.ui.subtitles.SaveCaptionStyle
|
||||
|
@ -78,6 +79,12 @@ const val toleranceAfterUs = 300_000L
|
|||
class CS3IPlayer : IPlayer {
|
||||
private var isPlaying = false
|
||||
private var exoPlayer: ExoPlayer? = null
|
||||
set(value) {
|
||||
// If the old value is not null then the player has not been properly released.
|
||||
debugAssert({ field != null && value != null }, { "Previous player instance should be released!" })
|
||||
field = value
|
||||
}
|
||||
|
||||
var cacheSize = 0L
|
||||
var simpleCacheSize = 0L
|
||||
var videoBufferMs = 0L
|
||||
|
@ -710,13 +717,13 @@ class CS3IPlayer : IPlayer {
|
|||
metadataRendererOutput
|
||||
).map {
|
||||
if (it is TextRenderer) {
|
||||
currentTextRenderer = CustomTextRenderer(
|
||||
val currentTextRenderer = CustomTextRenderer(
|
||||
subtitleOffset,
|
||||
textRendererOutput,
|
||||
eventHandler.looper,
|
||||
CustomSubtitleDecoderFactory()
|
||||
)
|
||||
currentTextRenderer!!
|
||||
).also { this.currentTextRenderer = it }
|
||||
currentTextRenderer
|
||||
} else it
|
||||
}.toTypedArray()
|
||||
}
|
||||
|
@ -1259,7 +1266,7 @@ class CS3IPlayer : IPlayer {
|
|||
HttpsURLConnection.setDefaultSSLSocketFactory(sslContext.socketFactory)
|
||||
}
|
||||
|
||||
val mime = when(link.type) {
|
||||
val mime = when (link.type) {
|
||||
ExtractorLinkType.M3U8 -> MimeTypes.APPLICATION_M3U8
|
||||
ExtractorLinkType.DASH -> MimeTypes.APPLICATION_MPD
|
||||
ExtractorLinkType.VIDEO -> MimeTypes.VIDEO_MP4
|
||||
|
@ -1307,7 +1314,7 @@ class CS3IPlayer : IPlayer {
|
|||
override fun reloadPlayer(context: Context) {
|
||||
Log.i(TAG, "reloadPlayer")
|
||||
|
||||
exoPlayer?.release()
|
||||
releasePlayer(false)
|
||||
currentLink?.let {
|
||||
loadOnlinePlayer(context, it)
|
||||
} ?: currentDownloadedFile?.let {
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue