TweaksConfig
constructor(timeChangedInterval: Double = DEFAULT_TIME_CHANGED_EVENT_INTERVAL, languagePropertyNormalization: Boolean = true, localDynamicDashWindowUpdateInterval: Double? = null, useFiletypeExtractorFallbackForHls: Boolean = false, useDrmSessionForClearPeriods: Boolean = false, useDrmSessionForClearSources: Boolean = false, devicesThatRequireSurfaceWorkaround: List<DeviceDescription> = emptyList(), discardAdsWhileCasting: Boolean = false, allowChunklessPreparationForHls: Boolean = false, allowChunklessPreparationForHlsStreamingAds: Boolean = true, enableFrameAboutToBeRenderedEvent: Boolean = false, minForwardBufferLevelForQualityIncrease: Double? = null, maxForwardBufferLevelForQualityDecrease: Double? = null, enableMainContentDecodingDuringAds: Boolean = true, assumeEmsgMetadataForHlsChunklessPreparations: Boolean = false, forceReuseVideoCodecReasons: Set<ForceReuseVideoCodecReason> = emptySet(), releasePlayerTimeout: Double? = null, detachSurfaceTimeout: Double? = null, disableAudioTracksWhileInBackground: Boolean = false, disableVideoTracksWhileInBackground: Boolean = false, loadErrorFallbackConfig: LoadErrorFallbackConfig? = null, reuseAdsLoaderAcrossImaAds: Boolean = false, bandwidthMeterType: BandwidthMeterType = BandwidthMeterType.Default(), attemptVideoFreezeRecovery: Boolean = false, parseSubtitlesDuringExtraction: Boolean = true, httpResponseTypesToPreprocess: List<HttpRequestType> = listOf(
HttpRequestType.ManifestDash,
HttpRequestType.ManifestHlsMaster,
HttpRequestType.ManifestHlsVariant,
HttpRequestType.ManifestSmooth,
// [MediaProgressive] is excluded by default as it prevents the player from starting
// until the resource is fully downloaded and leads to OOM if the resource is too big.
HttpRequestType.MediaAudio,
HttpRequestType.MediaVideo,
HttpRequestType.MediaSubtitles,
HttpRequestType.MediaThumbnails,
HttpRequestType.DrmLicenseWidevine,
HttpRequestType.DrmLicenseNagraConnect,
HttpRequestType.DrmLicensePlayReady,
HttpRequestType.KeyHlsAes,
HttpRequestType.Unknown,
), enableDrmLicenseRenewRetry: Boolean = false, constantBitrateSeekingEnabled: Boolean = false, forceIncreasingHlsSegmentIndex: Boolean = false, doNotSwitchQualityOnHlsParts: Boolean = false, retryPlaybackConfig: RetryPlaybackConfig = RetryPlaybackConfig(
retryPlaybackCallback = { RetryPlaybackAction.None }
), relaxedPeriodDiscardingForLiveStreams: Boolean = true)