rename widevineLicenseUri to drmLicenseUri

Changelog: changed
This commit is contained in:
Kai 2025-02-05 15:13:48 -06:00
parent 8967615e0d
commit 89beb8af43
No known key found for this signature in database
8 changed files with 27 additions and 27 deletions

View file

@ -372,7 +372,7 @@ class VideoUrlWidevineSource extends VideoUrlSource {
super(obj);
this.plugin_type = "VideoUrlWidevineSource";
this.widevineLicenseUri = obj.licenseUri;
this.drmLicenseUri = obj.licenseUri;
if(obj.getLicenseRequestExecutor)
this.getLicenseRequestExecutor = obj.getLicenseRequestExecutor;
}
@ -409,7 +409,7 @@ class AudioUrlWidevineSource extends AudioUrlSource {
super(obj);
this.plugin_type = "AudioUrlWidevineSource";
this.widevineLicenseUri = obj.licenseUri;
this.drmLicenseUri = obj.licenseUri;
if(obj.getLicenseRequestExecutor)
this.getLicenseRequestExecutor = obj.getLicenseRequestExecutor;
@ -478,7 +478,7 @@ class DashWidevineSource extends DashSource {
super(obj);
this.plugin_type = "DashWidevineSource";
this.widevineLicenseUri = obj.licenseUri;
this.drmLicenseUri = obj.licenseUri;
if(obj.getLicenseRequestExecutor)
this.getLicenseRequestExecutor = obj.getLicenseRequestExecutor;
}
@ -513,7 +513,7 @@ class DashManifestRawAudioSource {
this.manifest = obj.manifest ?? null;
if(obj.requestModifier)
this.requestModifier = obj.requestModifier;
this.widevineLicenseUri = obj.widevineLicenseUri;
this.drmLicenseUri = obj.drmLicenseUri;
if(obj.getLicenseRequestExecutor)
this.getLicenseRequestExecutor = obj.getLicenseRequestExecutor;
}

View file

@ -3,7 +3,7 @@ package com.futo.platformplayer.api.media.models.streams.sources
import com.futo.platformplayer.api.media.platforms.js.models.JSRequestExecutor
interface IWidevineSource {
val widevineLicenseUri: String?
val drmLicenseUri: String?
val hasLicenseRequestExecutor: Boolean
fun getLicenseRequestExecutor(): JSRequestExecutor?
}

View file

@ -8,7 +8,7 @@ import com.futo.platformplayer.engine.V8Plugin
import com.futo.platformplayer.getOrThrow
class JSAudioUrlWidevineSource : JSAudioUrlSource, IAudioUrlWidevineSource {
override val widevineLicenseUri: String
override val drmLicenseUri: String
override val hasLicenseRequestExecutor: Boolean
@Suppress("ConvertSecondaryConstructorToPrimary")
@ -16,7 +16,7 @@ class JSAudioUrlWidevineSource : JSAudioUrlSource, IAudioUrlWidevineSource {
val contextName = "JSAudioUrlWidevineSource"
val config = plugin.config
widevineLicenseUri = _obj.getOrThrow(config, "widevineLicenseUri", contextName)
drmLicenseUri = _obj.getOrThrow(config, "drmLicenseUri", contextName)
hasLicenseRequestExecutor = obj.has("getLicenseRequestExecutor")
}
@ -36,6 +36,6 @@ class JSAudioUrlWidevineSource : JSAudioUrlSource, IAudioUrlWidevineSource {
override fun toString(): String {
val url = getAudioUrl()
return "(name=$name, container=$container, bitrate=$bitrate, codec=$codec, url=$url, language=$language, duration=$duration, hasLicenseRequestExecutor=${hasLicenseRequestExecutor}, widevineLicenseUri=$widevineLicenseUri)"
return "(name=$name, container=$container, bitrate=$bitrate, codec=$codec, url=$url, language=$language, duration=$duration, hasLicenseRequestExecutor=${hasLicenseRequestExecutor}, drmLicenseUri=$drmLicenseUri)"
}
}

View file

@ -27,7 +27,7 @@ class JSDashManifestRawAudioSource : JSSource, IAudioSource, IJSDashManifestRawS
override val hasGenerate: Boolean;
override val widevineLicenseUri: String?
override val drmLicenseUri: String?
override val hasLicenseRequestExecutor: Boolean
constructor(plugin: JSClient, obj: V8ValueObject) : super(TYPE_DASH_RAW, plugin, obj) {
@ -43,7 +43,7 @@ class JSDashManifestRawAudioSource : JSSource, IAudioSource, IJSDashManifestRawS
language = _obj.getOrDefault(config, "language", contextName, Language.UNKNOWN) ?: Language.UNKNOWN;
hasGenerate = _obj.has("generate");
widevineLicenseUri = _obj.getOrThrow(config, "widevineLicenseUri", contextName)
drmLicenseUri = _obj.getOrThrow(config, "drmLicenseUri", contextName)
hasLicenseRequestExecutor = obj.has("getLicenseRequestExecutor")
}

View file

@ -23,7 +23,7 @@ class JSDashManifestWidevineSource : IVideoUrlSource, IDashManifestSource,
override var priority: Boolean = false
override val widevineLicenseUri: String
override val drmLicenseUri: String
override val hasLicenseRequestExecutor: Boolean
@Suppress("ConvertSecondaryConstructorToPrimary")
@ -36,7 +36,7 @@ class JSDashManifestWidevineSource : IVideoUrlSource, IDashManifestSource,
priority = obj.getOrNull(config, "priority", contextName) ?: false
widevineLicenseUri = _obj.getOrThrow(config, "widevineLicenseUri", contextName)
drmLicenseUri = _obj.getOrThrow(config, "drmLicenseUri", contextName)
hasLicenseRequestExecutor = obj.has("getLicenseRequestExecutor")
}

View file

@ -8,7 +8,7 @@ import com.futo.platformplayer.engine.V8Plugin
import com.futo.platformplayer.getOrThrow
class JSVideoUrlWidevineSource : JSVideoUrlSource, IVideoUrlWidevineSource {
override val widevineLicenseUri: String
override val drmLicenseUri: String
override val hasLicenseRequestExecutor: Boolean
@Suppress("ConvertSecondaryConstructorToPrimary")
@ -16,7 +16,7 @@ class JSVideoUrlWidevineSource : JSVideoUrlSource, IVideoUrlWidevineSource {
val contextName = "JSAudioUrlWidevineSource"
val config = plugin.config
widevineLicenseUri = _obj.getOrThrow(config, "widevineLicenseUri", contextName)
drmLicenseUri = _obj.getOrThrow(config, "drmLicenseUri", contextName)
hasLicenseRequestExecutor = obj.has("getLicenseRequestExecutor")
}
@ -36,6 +36,6 @@ class JSVideoUrlWidevineSource : JSVideoUrlSource, IVideoUrlWidevineSource {
override fun toString(): String {
val url = getVideoUrl()
return "(width=$width, height=$height, container=$container, codec=$codec, name=$name, bitrate=$bitrate, duration=$duration, url=$url, hasLicenseRequestExecutor=$hasLicenseRequestExecutor, widevineLicenseUri=$widevineLicenseUri)"
return "(width=$width, height=$height, container=$container, codec=$codec, name=$name, bitrate=$bitrate, duration=$duration, url=$url, hasLicenseRequestExecutor=$hasLicenseRequestExecutor, drmLicenseUri=$drmLicenseUri)"
}
}

View file

@ -46,7 +46,7 @@ class VideoHelper {
return false
}
fun isDownloadable(source: IVideoSource) = (source is IVideoUrlSource || source is IHLSManifestSource || source is JSDashManifestRawSource) && source !is IWidevineSource
fun isDownloadable(source: IAudioSource) = (source is IAudioUrlSource || source is IHLSManifestAudioSource || source is JSDashManifestRawAudioSource) && source !is IWidevineSource && !(source is JSDashManifestRawAudioSource && source.widevineLicenseUri != null)
fun isDownloadable(source: IAudioSource) = (source is IAudioUrlSource || source is IHLSManifestAudioSource || source is JSDashManifestRawAudioSource) && source !is IWidevineSource && !(source is JSDashManifestRawAudioSource && source.drmLicenseUri != null)
fun selectBestVideoSource(desc: IVideoSourceDescriptor, desiredPixelCount : Int, prefContainers : Array<String>) : IVideoSource? = selectBestVideoSource(desc.videoSources.toList(), desiredPixelCount, prefContainers);
fun selectBestVideoSource(sources: Iterable<IVideoSource>, desiredPixelCount : Int, prefContainers : Array<String>) : IVideoSource? {
val targetVideo = if(desiredPixelCount > 0) {

View file

@ -494,10 +494,10 @@ abstract class FutoVideoPlayerBase : RelativeLayout {
else
DefaultHttpDataSource.Factory().setUserAgent(DEFAULT_USER_AGENT)
val baseCallback = HttpMediaDrmCallback(videoSource.widevineLicenseUri, dataSource)
val baseCallback = HttpMediaDrmCallback(videoSource.drmLicenseUri, dataSource)
val callback = if (videoSource.hasLicenseRequestExecutor) {
PluginMediaDrmCallback(baseCallback, videoSource.getLicenseRequestExecutor()!!, videoSource.widevineLicenseUri!!)
PluginMediaDrmCallback(baseCallback, videoSource.getLicenseRequestExecutor()!!, videoSource.drmLicenseUri!!)
} else {
baseCallback
}
@ -534,10 +534,10 @@ abstract class FutoVideoPlayerBase : RelativeLayout {
if (videoSource is JSSource && (videoSource.requiresCustomDatasource)) videoSource.getHttpDataSourceFactory()
else DefaultHttpDataSource.Factory().setUserAgent(DEFAULT_USER_AGENT)
val baseCallback = HttpMediaDrmCallback(videoSource.widevineLicenseUri, dataSource)
val baseCallback = HttpMediaDrmCallback(videoSource.drmLicenseUri, dataSource)
val callback = if (videoSource.hasLicenseRequestExecutor) {
PluginMediaDrmCallback(baseCallback, videoSource.getLicenseRequestExecutor()!!, videoSource.widevineLicenseUri!!)
PluginMediaDrmCallback(baseCallback, videoSource.getLicenseRequestExecutor()!!, videoSource.drmLicenseUri!!)
} else {
baseCallback
}
@ -668,11 +668,11 @@ abstract class FutoVideoPlayerBase : RelativeLayout {
else
DefaultHttpDataSource.Factory().setUserAgent(DEFAULT_USER_AGENT)
val baseCallback = HttpMediaDrmCallback(audioSource.widevineLicenseUri, dataSource)
val baseCallback = HttpMediaDrmCallback(audioSource.drmLicenseUri, dataSource)
val callback =
if (audioSource.hasLicenseRequestExecutor && audioSource.widevineLicenseUri != null) {
PluginMediaDrmCallback(baseCallback, audioSource.getLicenseRequestExecutor()!!, audioSource.widevineLicenseUri)
if (audioSource.hasLicenseRequestExecutor && audioSource.drmLicenseUri != null) {
PluginMediaDrmCallback(baseCallback, audioSource.getLicenseRequestExecutor()!!, audioSource.drmLicenseUri)
} else {
baseCallback
}
@ -687,7 +687,7 @@ abstract class FutoVideoPlayerBase : RelativeLayout {
if (generated != null) {
withContext(Dispatchers.Main) {
val factory = DashMediaSource.Factory(dataSource)
if (audioSource.widevineLicenseUri != null) {
if (audioSource.drmLicenseUri != null) {
if (!MediaDrm.isCryptoSchemeSupported(C.WIDEVINE_UUID)) {
throw IllegalArgumentException("Device does not support Widevine")
}
@ -709,7 +709,7 @@ abstract class FutoVideoPlayerBase : RelativeLayout {
return false
} else {
val factory = DashMediaSource.Factory(dataSource)
if (audioSource.widevineLicenseUri != null) {
if (audioSource.drmLicenseUri != null) {
if (!MediaDrm.isCryptoSchemeSupported(C.WIDEVINE_UUID)) {
throw IllegalArgumentException("Device does not support Widevine")
}
@ -741,10 +741,10 @@ abstract class FutoVideoPlayerBase : RelativeLayout {
else
DefaultHttpDataSource.Factory().setUserAgent(DEFAULT_USER_AGENT)
val baseCallback = HttpMediaDrmCallback(audioSource.widevineLicenseUri, dataSource)
val baseCallback = HttpMediaDrmCallback(audioSource.drmLicenseUri, dataSource)
val callback = if (audioSource.hasLicenseRequestExecutor) {
PluginMediaDrmCallback(baseCallback, audioSource.getLicenseRequestExecutor()!!, audioSource.widevineLicenseUri!!)
PluginMediaDrmCallback(baseCallback, audioSource.getLicenseRequestExecutor()!!, audioSource.drmLicenseUri!!)
} else {
baseCallback
}