rename widevineLicenseUri to drmLicenseUri

Changelog: changed
This commit is contained in:
Kai 2025-02-05 15:13:48 -06:00
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); super(obj);
this.plugin_type = "VideoUrlWidevineSource"; this.plugin_type = "VideoUrlWidevineSource";
this.widevineLicenseUri = obj.licenseUri; this.drmLicenseUri = obj.licenseUri;
if(obj.getLicenseRequestExecutor) if(obj.getLicenseRequestExecutor)
this.getLicenseRequestExecutor = obj.getLicenseRequestExecutor; this.getLicenseRequestExecutor = obj.getLicenseRequestExecutor;
} }
@ -409,7 +409,7 @@ class AudioUrlWidevineSource extends AudioUrlSource {
super(obj); super(obj);
this.plugin_type = "AudioUrlWidevineSource"; this.plugin_type = "AudioUrlWidevineSource";
this.widevineLicenseUri = obj.licenseUri; this.drmLicenseUri = obj.licenseUri;
if(obj.getLicenseRequestExecutor) if(obj.getLicenseRequestExecutor)
this.getLicenseRequestExecutor = obj.getLicenseRequestExecutor; this.getLicenseRequestExecutor = obj.getLicenseRequestExecutor;
@ -478,7 +478,7 @@ class DashWidevineSource extends DashSource {
super(obj); super(obj);
this.plugin_type = "DashWidevineSource"; this.plugin_type = "DashWidevineSource";
this.widevineLicenseUri = obj.licenseUri; this.drmLicenseUri = obj.licenseUri;
if(obj.getLicenseRequestExecutor) if(obj.getLicenseRequestExecutor)
this.getLicenseRequestExecutor = obj.getLicenseRequestExecutor; this.getLicenseRequestExecutor = obj.getLicenseRequestExecutor;
} }
@ -513,7 +513,7 @@ class DashManifestRawAudioSource {
this.manifest = obj.manifest ?? null; this.manifest = obj.manifest ?? null;
if(obj.requestModifier) if(obj.requestModifier)
this.requestModifier = obj.requestModifier; this.requestModifier = obj.requestModifier;
this.widevineLicenseUri = obj.widevineLicenseUri; this.drmLicenseUri = obj.drmLicenseUri;
if(obj.getLicenseRequestExecutor) if(obj.getLicenseRequestExecutor)
this.getLicenseRequestExecutor = 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 import com.futo.platformplayer.api.media.platforms.js.models.JSRequestExecutor
interface IWidevineSource { interface IWidevineSource {
val widevineLicenseUri: String? val drmLicenseUri: String?
val hasLicenseRequestExecutor: Boolean val hasLicenseRequestExecutor: Boolean
fun getLicenseRequestExecutor(): JSRequestExecutor? fun getLicenseRequestExecutor(): JSRequestExecutor?
} }

View file

@ -8,7 +8,7 @@ import com.futo.platformplayer.engine.V8Plugin
import com.futo.platformplayer.getOrThrow import com.futo.platformplayer.getOrThrow
class JSAudioUrlWidevineSource : JSAudioUrlSource, IAudioUrlWidevineSource { class JSAudioUrlWidevineSource : JSAudioUrlSource, IAudioUrlWidevineSource {
override val widevineLicenseUri: String override val drmLicenseUri: String
override val hasLicenseRequestExecutor: Boolean override val hasLicenseRequestExecutor: Boolean
@Suppress("ConvertSecondaryConstructorToPrimary") @Suppress("ConvertSecondaryConstructorToPrimary")
@ -16,7 +16,7 @@ class JSAudioUrlWidevineSource : JSAudioUrlSource, IAudioUrlWidevineSource {
val contextName = "JSAudioUrlWidevineSource" val contextName = "JSAudioUrlWidevineSource"
val config = plugin.config val config = plugin.config
widevineLicenseUri = _obj.getOrThrow(config, "widevineLicenseUri", contextName) drmLicenseUri = _obj.getOrThrow(config, "drmLicenseUri", contextName)
hasLicenseRequestExecutor = obj.has("getLicenseRequestExecutor") hasLicenseRequestExecutor = obj.has("getLicenseRequestExecutor")
} }
@ -36,6 +36,6 @@ class JSAudioUrlWidevineSource : JSAudioUrlSource, IAudioUrlWidevineSource {
override fun toString(): String { override fun toString(): String {
val url = getAudioUrl() 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 hasGenerate: Boolean;
override val widevineLicenseUri: String? override val drmLicenseUri: String?
override val hasLicenseRequestExecutor: Boolean override val hasLicenseRequestExecutor: Boolean
constructor(plugin: JSClient, obj: V8ValueObject) : super(TYPE_DASH_RAW, plugin, obj) { 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; language = _obj.getOrDefault(config, "language", contextName, Language.UNKNOWN) ?: Language.UNKNOWN;
hasGenerate = _obj.has("generate"); hasGenerate = _obj.has("generate");
widevineLicenseUri = _obj.getOrThrow(config, "widevineLicenseUri", contextName) drmLicenseUri = _obj.getOrThrow(config, "drmLicenseUri", contextName)
hasLicenseRequestExecutor = obj.has("getLicenseRequestExecutor") hasLicenseRequestExecutor = obj.has("getLicenseRequestExecutor")
} }

View file

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

View file

@ -8,7 +8,7 @@ import com.futo.platformplayer.engine.V8Plugin
import com.futo.platformplayer.getOrThrow import com.futo.platformplayer.getOrThrow
class JSVideoUrlWidevineSource : JSVideoUrlSource, IVideoUrlWidevineSource { class JSVideoUrlWidevineSource : JSVideoUrlSource, IVideoUrlWidevineSource {
override val widevineLicenseUri: String override val drmLicenseUri: String
override val hasLicenseRequestExecutor: Boolean override val hasLicenseRequestExecutor: Boolean
@Suppress("ConvertSecondaryConstructorToPrimary") @Suppress("ConvertSecondaryConstructorToPrimary")
@ -16,7 +16,7 @@ class JSVideoUrlWidevineSource : JSVideoUrlSource, IVideoUrlWidevineSource {
val contextName = "JSAudioUrlWidevineSource" val contextName = "JSAudioUrlWidevineSource"
val config = plugin.config val config = plugin.config
widevineLicenseUri = _obj.getOrThrow(config, "widevineLicenseUri", contextName) drmLicenseUri = _obj.getOrThrow(config, "drmLicenseUri", contextName)
hasLicenseRequestExecutor = obj.has("getLicenseRequestExecutor") hasLicenseRequestExecutor = obj.has("getLicenseRequestExecutor")
} }
@ -36,6 +36,6 @@ class JSVideoUrlWidevineSource : JSVideoUrlSource, IVideoUrlWidevineSource {
override fun toString(): String { override fun toString(): String {
val url = getVideoUrl() 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 return false
} }
fun isDownloadable(source: IVideoSource) = (source is IVideoUrlSource || source is IHLSManifestSource || source is JSDashManifestRawSource) && source !is IWidevineSource 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(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? { fun selectBestVideoSource(sources: Iterable<IVideoSource>, desiredPixelCount : Int, prefContainers : Array<String>) : IVideoSource? {
val targetVideo = if(desiredPixelCount > 0) { val targetVideo = if(desiredPixelCount > 0) {

View file

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