@mediakind/mkplayer 1.5.0 → 1.7.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +6 -6
- package/mkplayer.js +1 -1
- package/package.json +4 -4
- package/{alias → types/alias}/index.d.ts +1 -0
- package/types/alias/index.js +3 -0
- package/types/alias/index.js.map +1 -0
- package/types/classes/common/MKAzukiResponseUtils.js +249 -0
- package/types/classes/common/MKAzukiResponseUtils.js.map +1 -0
- package/types/classes/common/MKEventBase.js +20 -0
- package/types/classes/common/MKEventBase.js.map +1 -0
- package/types/classes/common/MKLocalStorage.js +88 -0
- package/types/classes/common/MKLocalStorage.js.map +1 -0
- package/types/classes/common/MKLog.js +46 -0
- package/types/classes/common/MKLog.js.map +1 -0
- package/types/classes/common/MKPlatform.js +212 -0
- package/types/classes/common/MKPlatform.js.map +1 -0
- package/types/classes/common/MKProgramManager.js +72 -0
- package/types/classes/common/MKProgramManager.js.map +1 -0
- package/types/classes/common/MKSecureUrlManager.js +155 -0
- package/types/classes/common/MKSecureUrlManager.js.map +1 -0
- package/types/classes/common/MKSubtitleOverlay.js +188 -0
- package/types/classes/common/MKSubtitleOverlay.js.map +1 -0
- package/types/classes/common/MKThumbnailManager.js +305 -0
- package/types/classes/common/MKThumbnailManager.js.map +1 -0
- package/types/classes/common/MKUtils.js +157 -0
- package/types/classes/common/MKUtils.js.map +1 -0
- package/{classes → types/classes}/common/index.d.ts +1 -0
- package/types/classes/common/index.js +24 -0
- package/types/classes/common/index.js.map +1 -0
- package/types/classes/error/MKAdobeSessionConcurrencyError.js +40 -0
- package/types/classes/error/MKAdobeSessionConcurrencyError.js.map +1 -0
- package/types/classes/error/MKAzukiRequestError.js +39 -0
- package/types/classes/error/MKAzukiRequestError.js.map +1 -0
- package/types/classes/error/MKBitmovinPlayerError.js +39 -0
- package/types/classes/error/MKBitmovinPlayerError.js.map +1 -0
- package/types/classes/error/MKHttpError.js +12 -0
- package/types/classes/error/MKHttpError.js.map +1 -0
- package/types/classes/error/MKPlayerError.js +13 -0
- package/types/classes/error/MKPlayerError.js.map +1 -0
- package/types/classes/error/MKProgramRestrictionError.js +176 -0
- package/types/classes/error/MKProgramRestrictionError.js.map +1 -0
- package/types/classes/error/index.js +16 -0
- package/types/classes/error/index.js.map +1 -0
- package/types/classes/index.js +21 -0
- package/types/classes/index.js.map +1 -0
- package/types/classes/player/MKBitmovinPlayer.js +1258 -0
- package/types/classes/player/MKBitmovinPlayer.js.map +1 -0
- package/{classes → types/classes}/player/MKPlayer.d.ts +7 -1
- package/types/classes/player/MKPlayer.js +1160 -0
- package/types/classes/player/MKPlayer.js.map +1 -0
- package/types/classes/player/MKStubPlayer.js +377 -0
- package/types/classes/player/MKStubPlayer.js.map +1 -0
- package/types/classes/player/index.js +8 -0
- package/types/classes/player/index.js.map +1 -0
- package/types/classes/request/MKAdobeSessionConcurrencyRequest.js +167 -0
- package/types/classes/request/MKAdobeSessionConcurrencyRequest.js.map +1 -0
- package/types/classes/request/MKAzukiRequest.js +337 -0
- package/types/classes/request/MKAzukiRequest.js.map +1 -0
- package/types/classes/request/MKHttpRequest.js +121 -0
- package/types/classes/request/MKHttpRequest.js.map +1 -0
- package/types/classes/request/index.js +10 -0
- package/types/classes/request/index.js.map +1 -0
- package/types/constants/MKAzukiRequestEndpoint.js +89 -0
- package/types/constants/MKAzukiRequestEndpoint.js.map +1 -0
- package/types/constants/MKConstants.js +23 -0
- package/types/constants/MKConstants.js.map +1 -0
- package/types/constants/MKCustomError.js +19 -0
- package/types/constants/MKCustomError.js.map +1 -0
- package/types/constants/index.js +10 -0
- package/types/constants/index.js.map +1 -0
- package/types/enums/MKAdQuartile.js +10 -0
- package/types/enums/MKAdQuartile.js.map +1 -0
- package/types/enums/MKAdType.js +11 -0
- package/types/enums/MKAdType.js.map +1 -0
- package/types/enums/MKAssetType.js +12 -0
- package/types/enums/MKAssetType.js.map +1 -0
- package/types/enums/MKBufferType.js +9 -0
- package/types/enums/MKBufferType.js.map +1 -0
- package/{enums → types/enums}/MKDrmType.d.ts +1 -0
- package/types/enums/MKDrmType.js +12 -0
- package/types/enums/MKDrmType.js.map +1 -0
- package/types/enums/MKErrorCode.js +66 -0
- package/types/enums/MKErrorCode.js.map +1 -0
- package/types/enums/MKHttpRequestType.js +26 -0
- package/types/enums/MKHttpRequestType.js.map +1 -0
- package/types/enums/MKHttpResponseType.js +12 -0
- package/types/enums/MKHttpResponseType.js.map +1 -0
- package/types/enums/MKLatencyMode.js +11 -0
- package/types/enums/MKLatencyMode.js.map +1 -0
- package/types/enums/MKLiveSynchronizationMethod.js +10 -0
- package/types/enums/MKLiveSynchronizationMethod.js.map +1 -0
- package/types/enums/MKLocalStorageKeys.js +11 -0
- package/types/enums/MKLocalStorageKeys.js.map +1 -0
- package/types/enums/MKLogLevel.js +12 -0
- package/types/enums/MKLogLevel.js.map +1 -0
- package/types/enums/MKMediaType.js +9 -0
- package/types/enums/MKMediaType.js.map +1 -0
- package/types/enums/MKMetadataType.js +15 -0
- package/types/enums/MKMetadataType.js.map +1 -0
- package/types/enums/MKPlatformType.js +9 -0
- package/types/enums/MKPlatformType.js.map +1 -0
- package/{enums → types/enums}/MKPlayerEvent.d.ts +1 -0
- package/types/enums/MKPlayerEvent.js +88 -0
- package/types/enums/MKPlayerEvent.js.map +1 -0
- package/types/enums/MKPlayerType.js +11 -0
- package/types/enums/MKPlayerType.js.map +1 -0
- package/types/enums/MKProgramRestrictionType.js +24 -0
- package/types/enums/MKProgramRestrictionType.js.map +1 -0
- package/types/enums/MKRightsMode.js +9 -0
- package/types/enums/MKRightsMode.js.map +1 -0
- package/types/enums/MKRttEstimationMethod.js +9 -0
- package/types/enums/MKRttEstimationMethod.js.map +1 -0
- package/types/enums/MKStartOffsetTimelineReference.js +9 -0
- package/types/enums/MKStartOffsetTimelineReference.js.map +1 -0
- package/types/enums/MKStreamType.js +14 -0
- package/types/enums/MKStreamType.js.map +1 -0
- package/types/enums/MKTimeMode.js +9 -0
- package/types/enums/MKTimeMode.js.map +1 -0
- package/types/enums/MKViewMode.js +10 -0
- package/types/enums/MKViewMode.js.map +1 -0
- package/types/enums/index.js +52 -0
- package/types/enums/index.js.map +1 -0
- package/types/index.js +22 -0
- package/types/index.js.map +1 -0
- package/types/interfaces/MKAdCompanion.js +3 -0
- package/types/interfaces/MKAdCompanion.js.map +1 -0
- package/types/interfaces/MKAdVerification.d.ts +5 -0
- package/types/interfaces/MKAdVerification.js +3 -0
- package/types/interfaces/MKAdVerification.js.map +1 -0
- package/types/interfaces/MKAdaptationConfig.js +3 -0
- package/types/interfaces/MKAdaptationConfig.js.map +1 -0
- package/types/interfaces/MKAdaptationData.js +3 -0
- package/types/interfaces/MKAdaptationData.js.map +1 -0
- package/types/interfaces/MKAdaptationPlatformConfig.js +4 -0
- package/types/interfaces/MKAdaptationPlatformConfig.js.map +1 -0
- package/types/interfaces/MKAdobePrimetimeConfig.js +3 -0
- package/types/interfaces/MKAdobePrimetimeConfig.js.map +1 -0
- package/types/interfaces/MKAnalyticsConfig.js +3 -0
- package/types/interfaces/MKAnalyticsConfig.js.map +1 -0
- package/types/interfaces/MKAudioAdaptationData.js +4 -0
- package/types/interfaces/MKAudioAdaptationData.js.map +1 -0
- package/types/interfaces/MKAudioQuality.js +3 -0
- package/types/interfaces/MKAudioQuality.js.map +1 -0
- package/types/interfaces/MKAudioTrack.js +3 -0
- package/types/interfaces/MKAudioTrack.js.map +1 -0
- package/types/interfaces/MKBitrateLimitationConfig.js +3 -0
- package/types/interfaces/MKBitrateLimitationConfig.js.map +1 -0
- package/types/interfaces/MKBufferConfig.js +4 -0
- package/types/interfaces/MKBufferConfig.js.map +1 -0
- package/types/interfaces/MKBufferLevel.js +3 -0
- package/types/interfaces/MKBufferLevel.js.map +1 -0
- package/types/interfaces/MKBufferMediaTypeConfig.js +4 -0
- package/types/interfaces/MKBufferMediaTypeConfig.js.map +1 -0
- package/types/interfaces/MKCastConfig.js +3 -0
- package/types/interfaces/MKCastConfig.js.map +1 -0
- package/types/interfaces/MKCdn.js +3 -0
- package/types/interfaces/MKCdn.js.map +1 -0
- package/types/interfaces/MKCdnOptions.js +3 -0
- package/types/interfaces/MKCdnOptions.js.map +1 -0
- package/types/interfaces/MKClearKeyDRMConfig.d.ts +14 -0
- package/types/interfaces/MKClearKeyDRMConfig.js +3 -0
- package/types/interfaces/MKClearKeyDRMConfig.js.map +1 -0
- package/types/interfaces/MKDownloadedAudioData.js +3 -0
- package/types/interfaces/MKDownloadedAudioData.js.map +1 -0
- package/types/interfaces/MKDownloadedData.js +3 -0
- package/types/interfaces/MKDownloadedData.js.map +1 -0
- package/types/interfaces/MKDownloadedVideoData.js +3 -0
- package/types/interfaces/MKDownloadedVideoData.js.map +1 -0
- package/{interfaces → types/interfaces}/MKDrmConfig.d.ts +2 -0
- package/types/interfaces/MKDrmConfig.js +4 -0
- package/types/interfaces/MKDrmConfig.js.map +1 -0
- package/types/interfaces/MKDrmLicense.js +3 -0
- package/types/interfaces/MKDrmLicense.js.map +1 -0
- package/{interfaces → types/interfaces}/MKEnvironmentConfig.d.ts +1 -1
- package/types/interfaces/MKEnvironmentConfig.js +3 -0
- package/types/interfaces/MKEnvironmentConfig.js.map +1 -0
- package/types/interfaces/MKError.js +3 -0
- package/types/interfaces/MKError.js.map +1 -0
- package/types/interfaces/MKFairplayDrmConfig.js +3 -0
- package/types/interfaces/MKFairplayDrmConfig.js.map +1 -0
- package/types/interfaces/MKHttpRequestOptions.js +3 -0
- package/types/interfaces/MKHttpRequestOptions.js.map +1 -0
- package/types/interfaces/MKHttpResponse.js +3 -0
- package/types/interfaces/MKHttpResponse.js.map +1 -0
- package/types/interfaces/MKImageMediaPlaylist.js +3 -0
- package/types/interfaces/MKImageMediaPlaylist.js.map +1 -0
- package/types/interfaces/MKLiveConfig.js +3 -0
- package/types/interfaces/MKLiveConfig.js.map +1 -0
- package/types/interfaces/MKLogConfig.js +3 -0
- package/types/interfaces/MKLogConfig.js.map +1 -0
- package/types/interfaces/MKLowLatencyConfig.js +3 -0
- package/types/interfaces/MKLowLatencyConfig.js.map +1 -0
- package/types/interfaces/MKLowLatencySyncConfig.js +3 -0
- package/types/interfaces/MKLowLatencySyncConfig.js.map +1 -0
- package/types/interfaces/MKMediaTrack.js +3 -0
- package/types/interfaces/MKMediaTrack.js.map +1 -0
- package/types/interfaces/MKMediaTrackRole.js +3 -0
- package/types/interfaces/MKMediaTrackRole.js.map +1 -0
- package/types/interfaces/MKMetadata.js +3 -0
- package/types/interfaces/MKMetadata.js.map +1 -0
- package/types/interfaces/MKPeriodContentInformation.js +3 -0
- package/types/interfaces/MKPeriodContentInformation.js.map +1 -0
- package/types/interfaces/MKPeriodInformation.js +3 -0
- package/types/interfaces/MKPeriodInformation.js.map +1 -0
- package/types/interfaces/MKPeriodSwitchObject.js +3 -0
- package/types/interfaces/MKPeriodSwitchObject.js.map +1 -0
- package/types/interfaces/MKPlayReadyDrmConfig.js +3 -0
- package/types/interfaces/MKPlayReadyDrmConfig.js.map +1 -0
- package/types/interfaces/MKPlaybackConfig.js +3 -0
- package/types/interfaces/MKPlaybackConfig.js.map +1 -0
- package/{interfaces → types/interfaces}/MKPlayerAPI.d.ts +1 -1
- package/types/interfaces/MKPlayerAPI.js +3 -0
- package/types/interfaces/MKPlayerAPI.js.map +1 -0
- package/{interfaces → types/interfaces}/MKPlayerConfig.d.ts +1 -0
- package/types/interfaces/MKPlayerConfig.js +3 -0
- package/types/interfaces/MKPlayerConfig.js.map +1 -0
- package/types/interfaces/MKPlayerCoreAPI.js +3 -0
- package/types/interfaces/MKPlayerCoreAPI.js.map +1 -0
- package/types/interfaces/MKPlayerEventCallback.js +3 -0
- package/types/interfaces/MKPlayerEventCallback.js.map +1 -0
- package/types/interfaces/MKPlayerEventConfig.js +3 -0
- package/types/interfaces/MKPlayerEventConfig.js.map +1 -0
- package/types/interfaces/MKPlayerTechnology.js +3 -0
- package/types/interfaces/MKPlayerTechnology.js.map +1 -0
- package/types/interfaces/MKPreferredTechnology.js +3 -0
- package/types/interfaces/MKPreferredTechnology.js.map +1 -0
- package/types/interfaces/MKProgramInfo.js +3 -0
- package/types/interfaces/MKProgramInfo.js.map +1 -0
- package/types/interfaces/MKProgramRestrictions.js +3 -0
- package/types/interfaces/MKProgramRestrictions.js.map +1 -0
- package/types/interfaces/MKProgressiveSource.js +3 -0
- package/types/interfaces/MKProgressiveSource.js.map +1 -0
- package/types/interfaces/MKQuality.js +3 -0
- package/types/interfaces/MKQuality.js.map +1 -0
- package/types/interfaces/MKQualityMetadata.js +3 -0
- package/types/interfaces/MKQualityMetadata.js.map +1 -0
- package/{interfaces → types/interfaces}/MKRegisteredSource.d.ts +1 -1
- package/types/interfaces/MKRegisteredSource.js +3 -0
- package/types/interfaces/MKRegisteredSource.js.map +1 -0
- package/types/interfaces/MKRollInfo.d.ts +1 -0
- package/types/interfaces/MKRollInfo.js +3 -0
- package/types/interfaces/MKRollInfo.js.map +1 -0
- package/types/interfaces/MKSessionConcurrencyAPI.d.ts +1 -0
- package/types/interfaces/MKSessionConcurrencyAPI.js +3 -0
- package/types/interfaces/MKSessionConcurrencyAPI.js.map +1 -0
- package/types/interfaces/MKSourceConfig.js +3 -0
- package/types/interfaces/MKSourceConfig.js.map +1 -0
- package/types/interfaces/MKSourceLabelingConfig.js +3 -0
- package/types/interfaces/MKSourceLabelingConfig.js.map +1 -0
- package/types/interfaces/MKSourceLabelingStreamTypeConfig.js +3 -0
- package/types/interfaces/MKSourceLabelingStreamTypeConfig.js.map +1 -0
- package/types/interfaces/MKSourceOptions.js +3 -0
- package/types/interfaces/MKSourceOptions.js.map +1 -0
- package/types/interfaces/MKSubtitleCue.js +3 -0
- package/types/interfaces/MKSubtitleCue.js.map +1 -0
- package/types/interfaces/MKSubtitleCuePosition.js +3 -0
- package/types/interfaces/MKSubtitleCuePosition.js.map +1 -0
- package/types/interfaces/MKSubtitleTrack.js +3 -0
- package/types/interfaces/MKSubtitleTrack.js.map +1 -0
- package/types/interfaces/MKSynchronizationConfigEntry.js +3 -0
- package/types/interfaces/MKSynchronizationConfigEntry.js.map +1 -0
- package/types/interfaces/MKTextTrack.js +3 -0
- package/types/interfaces/MKTextTrack.js.map +1 -0
- package/types/interfaces/MKThumbnail.js +3 -0
- package/types/interfaces/MKThumbnail.js.map +1 -0
- package/types/interfaces/MKThumbnailTrack.js +3 -0
- package/types/interfaces/MKThumbnailTrack.js.map +1 -0
- package/types/interfaces/MKTimeRange.js +3 -0
- package/types/interfaces/MKTimeRange.js.map +1 -0
- package/types/interfaces/MKTrackMetadata.js +3 -0
- package/types/interfaces/MKTrackMetadata.js.map +1 -0
- package/types/interfaces/MKUllSource.js +3 -0
- package/types/interfaces/MKUllSource.js.map +1 -0
- package/types/interfaces/MKVTTProperties.js +3 -0
- package/types/interfaces/MKVTTProperties.js.map +1 -0
- package/types/interfaces/MKVTTRegionProperties.js +3 -0
- package/types/interfaces/MKVTTRegionProperties.js.map +1 -0
- package/types/interfaces/MKVideoAdaptationData.js +4 -0
- package/types/interfaces/MKVideoAdaptationData.js.map +1 -0
- package/types/interfaces/MKVideoQuality.js +3 -0
- package/types/interfaces/MKVideoQuality.js.map +1 -0
- package/types/interfaces/MKVideoSizeLimitationConfig.js +3 -0
- package/types/interfaces/MKVideoSizeLimitationConfig.js.map +1 -0
- package/types/interfaces/MKVideoTrack.js +3 -0
- package/types/interfaces/MKVideoTrack.js.map +1 -0
- package/types/interfaces/MKViewModeOptions.js +3 -0
- package/types/interfaces/MKViewModeOptions.js.map +1 -0
- package/types/interfaces/MKWidevineModularDrmConfig.js +3 -0
- package/types/interfaces/MKWidevineModularDrmConfig.js.map +1 -0
- package/types/interfaces/events/MKAdBreakFinishedEvent.js +3 -0
- package/types/interfaces/events/MKAdBreakFinishedEvent.js.map +1 -0
- package/types/interfaces/events/MKAdBreakStartedEvent.js +3 -0
- package/types/interfaces/events/MKAdBreakStartedEvent.js.map +1 -0
- package/types/interfaces/events/MKAdClickThroughEvent.js +3 -0
- package/types/interfaces/events/MKAdClickThroughEvent.js.map +1 -0
- package/types/interfaces/events/MKAdCompanionEvent.js +3 -0
- package/types/interfaces/events/MKAdCompanionEvent.js.map +1 -0
- package/types/interfaces/events/MKAdFinishedEvent.js +3 -0
- package/types/interfaces/events/MKAdFinishedEvent.js.map +1 -0
- package/types/interfaces/events/MKAdMarkerEvent.js +3 -0
- package/types/interfaces/events/MKAdMarkerEvent.js.map +1 -0
- package/types/interfaces/events/MKAdQuartileEvent.js +3 -0
- package/types/interfaces/events/MKAdQuartileEvent.js.map +1 -0
- package/types/interfaces/events/MKAdStartedEvent.js +3 -0
- package/types/interfaces/events/MKAdStartedEvent.js.map +1 -0
- package/types/interfaces/events/MKAdVerificationEvent.d.ts +6 -0
- package/types/interfaces/events/MKAdVerificationEvent.js +3 -0
- package/types/interfaces/events/MKAdVerificationEvent.js.map +1 -0
- package/types/interfaces/events/MKAdaptationEvent.js +3 -0
- package/types/interfaces/events/MKAdaptationEvent.js.map +1 -0
- package/types/interfaces/events/MKAirplayChangedEvent.js +3 -0
- package/types/interfaces/events/MKAirplayChangedEvent.js.map +1 -0
- package/types/interfaces/events/MKAspectRatioChangedEvent.js +3 -0
- package/types/interfaces/events/MKAspectRatioChangedEvent.js.map +1 -0
- package/types/interfaces/events/MKAudioAdaptationEvent.js +3 -0
- package/types/interfaces/events/MKAudioAdaptationEvent.js.map +1 -0
- package/types/interfaces/events/MKAudioChangedEvent.js +3 -0
- package/types/interfaces/events/MKAudioChangedEvent.js.map +1 -0
- package/types/interfaces/events/MKAudioDownloadQualityChangeEvent.js +3 -0
- package/types/interfaces/events/MKAudioDownloadQualityChangeEvent.js.map +1 -0
- package/types/interfaces/events/MKAudioDownloadQualityChangedEvent.js +3 -0
- package/types/interfaces/events/MKAudioDownloadQualityChangedEvent.js.map +1 -0
- package/types/interfaces/events/MKAudioPlaybackQualityChangedEvent.js +3 -0
- package/types/interfaces/events/MKAudioPlaybackQualityChangedEvent.js.map +1 -0
- package/types/interfaces/events/MKAudioQualityChangedEvent.js +3 -0
- package/types/interfaces/events/MKAudioQualityChangedEvent.js.map +1 -0
- package/types/interfaces/events/MKAudioQualityEvent.js +3 -0
- package/types/interfaces/events/MKAudioQualityEvent.js.map +1 -0
- package/types/interfaces/events/MKAudioTrackEvent.js +3 -0
- package/types/interfaces/events/MKAudioTrackEvent.js.map +1 -0
- package/types/interfaces/events/MKCastAvailableEvent.js +3 -0
- package/types/interfaces/events/MKCastAvailableEvent.js.map +1 -0
- package/types/interfaces/events/MKCastStartedEvent.js +3 -0
- package/types/interfaces/events/MKCastStartedEvent.js.map +1 -0
- package/types/interfaces/events/MKCastWaitingForDeviceEvent.js +3 -0
- package/types/interfaces/events/MKCastWaitingForDeviceEvent.js.map +1 -0
- package/types/interfaces/events/MKCueEnterEvent.js +3 -0
- package/types/interfaces/events/MKCueEnterEvent.js.map +1 -0
- package/types/interfaces/events/MKCueExitEvent.js +3 -0
- package/types/interfaces/events/MKCueExitEvent.js.map +1 -0
- package/types/interfaces/events/MKCueParsedEvent.js +3 -0
- package/types/interfaces/events/MKCueParsedEvent.js.map +1 -0
- package/types/interfaces/events/MKCueUpdateEvent.js +3 -0
- package/types/interfaces/events/MKCueUpdateEvent.js.map +1 -0
- package/types/interfaces/events/MKDownloadFinishedEvent.js +3 -0
- package/types/interfaces/events/MKDownloadFinishedEvent.js.map +1 -0
- package/types/interfaces/events/MKDrmLicenseAddedEvent.js +3 -0
- package/types/interfaces/events/MKDrmLicenseAddedEvent.js.map +1 -0
- package/types/interfaces/events/MKDurationChangedEvent.js +3 -0
- package/types/interfaces/events/MKDurationChangedEvent.js.map +1 -0
- package/types/interfaces/events/MKErrorEvent.js +3 -0
- package/types/interfaces/events/MKErrorEvent.js.map +1 -0
- package/types/interfaces/events/MKFMTSASiDEvent.js +3 -0
- package/types/interfaces/events/MKFMTSASiDEvent.js.map +1 -0
- package/types/interfaces/events/MKLatencyModeChangedEvent.js +3 -0
- package/types/interfaces/events/MKLatencyModeChangedEvent.js.map +1 -0
- package/types/interfaces/events/MKMediaPlaybackQualityChangeEvent.js +3 -0
- package/types/interfaces/events/MKMediaPlaybackQualityChangeEvent.js.map +1 -0
- package/types/interfaces/events/MKMediaQualityChangeEvent.js +3 -0
- package/types/interfaces/events/MKMediaQualityChangeEvent.js.map +1 -0
- package/types/interfaces/events/MKMediaQualityEvent.js +3 -0
- package/types/interfaces/events/MKMediaQualityEvent.js.map +1 -0
- package/types/interfaces/events/MKMetadataChangedEvent.js +3 -0
- package/types/interfaces/events/MKMetadataChangedEvent.js.map +1 -0
- package/types/interfaces/events/MKMetadataEvent.js +3 -0
- package/types/interfaces/events/MKMetadataEvent.js.map +1 -0
- package/types/interfaces/events/MKMetadataParsedEvent.js +3 -0
- package/types/interfaces/events/MKMetadataParsedEvent.js.map +1 -0
- package/types/interfaces/events/MKPeriodSwitchedEvent.js +3 -0
- package/types/interfaces/events/MKPeriodSwitchedEvent.js.map +1 -0
- package/types/interfaces/events/MKPlaybackEvent.js +3 -0
- package/types/interfaces/events/MKPlaybackEvent.js.map +1 -0
- package/types/interfaces/events/MKPlaybackSpeedChangedEvent.js +3 -0
- package/types/interfaces/events/MKPlaybackSpeedChangedEvent.js.map +1 -0
- package/types/interfaces/events/MKPlayerEventBase.js +3 -0
- package/types/interfaces/events/MKPlayerEventBase.js.map +1 -0
- package/types/interfaces/events/MKPlayerResizedEvent.js +3 -0
- package/types/interfaces/events/MKPlayerResizedEvent.js.map +1 -0
- package/types/interfaces/events/MKProgramRestrictionsEvent.js +3 -0
- package/types/interfaces/events/MKProgramRestrictionsEvent.js.map +1 -0
- package/types/interfaces/events/MKProgramTimeChangedEvent.js +3 -0
- package/types/interfaces/events/MKProgramTimeChangedEvent.js.map +1 -0
- package/types/interfaces/events/MKSeekEvent.js +3 -0
- package/types/interfaces/events/MKSeekEvent.js.map +1 -0
- package/types/interfaces/events/MKSegmentPlaybackEvent.js +3 -0
- package/types/interfaces/events/MKSegmentPlaybackEvent.js.map +1 -0
- package/types/interfaces/events/MKSegmentRequestFinishedEvent.js +3 -0
- package/types/interfaces/events/MKSegmentRequestFinishedEvent.js.map +1 -0
- package/types/interfaces/events/MKSubtitleEvent.js +3 -0
- package/types/interfaces/events/MKSubtitleEvent.js.map +1 -0
- package/types/interfaces/events/MKTargetLatencyChangedEvent.js +3 -0
- package/types/interfaces/events/MKTargetLatencyChangedEvent.js.map +1 -0
- package/types/interfaces/events/MKTimeChangedEvent.js +3 -0
- package/types/interfaces/events/MKTimeChangedEvent.js.map +1 -0
- package/types/interfaces/events/MKUserInteractionEvent.js +3 -0
- package/types/interfaces/events/MKUserInteractionEvent.js.map +1 -0
- package/types/interfaces/events/MKVideoAdaptationEvent.js +3 -0
- package/types/interfaces/events/MKVideoAdaptationEvent.js.map +1 -0
- package/types/interfaces/events/MKVideoDownloadQualityChangeEvent.js +3 -0
- package/types/interfaces/events/MKVideoDownloadQualityChangeEvent.js.map +1 -0
- package/types/interfaces/events/MKVideoDownloadQualityChangedEvent.js +3 -0
- package/types/interfaces/events/MKVideoDownloadQualityChangedEvent.js.map +1 -0
- package/types/interfaces/events/MKVideoPlaybackQualityChangedEvent.js +3 -0
- package/types/interfaces/events/MKVideoPlaybackQualityChangedEvent.js.map +1 -0
- package/types/interfaces/events/MKVideoQualityChangedEvent.js +3 -0
- package/types/interfaces/events/MKVideoQualityChangedEvent.js.map +1 -0
- package/types/interfaces/events/MKVideoQualityEvent.js +3 -0
- package/types/interfaces/events/MKVideoQualityEvent.js.map +1 -0
- package/types/interfaces/events/MKViewModeChangedEvent.js +3 -0
- package/types/interfaces/events/MKViewModeChangedEvent.js.map +1 -0
- package/types/interfaces/events/MKVolumeChangedEvent.js +3 -0
- package/types/interfaces/events/MKVolumeChangedEvent.js.map +1 -0
- package/{interfaces → types/interfaces}/events/index.d.ts +1 -0
- package/types/interfaces/events/index.js +3 -0
- package/types/interfaces/events/index.js.map +1 -0
- package/{interfaces → types/interfaces}/index.d.ts +3 -1
- package/types/interfaces/index.js +18 -0
- package/types/interfaces/index.js.map +1 -0
- package/types/plugins/fmts/MKFMTSConfig.d.ts +10 -0
- package/types/plugins/fmts/MKFMTSController.d.ts +39 -0
- package/types/plugins/fmts/MKFMTSUtils.d.ts +4 -0
- package/types/plugins/fmts/index.d.ts +2 -0
- package/types/plugins/omsdk/MKOMSDKConfig.d.ts +6 -0
- package/types/plugins/omsdk/MKOMSDKConstants.d.ts +152 -0
- package/types/plugins/omsdk/MKOMSDKController.d.ts +58 -0
- package/types/plugins/omsdk/index.d.ts +2 -0
- package/types/src/alias/index.d.ts +11 -0
- package/types/src/classes/common/MKAzukiResponseUtils.d.ts +1 -0
- package/types/src/classes/common/MKEventBase.d.ts +1 -0
- package/types/src/classes/common/MKLocalStorage.d.ts +1 -0
- package/types/src/classes/common/MKLog.d.ts +1 -0
- package/types/src/classes/common/MKPlatform.d.ts +1 -0
- package/types/src/classes/common/MKProgramManager.d.ts +1 -0
- package/types/src/classes/common/MKSecureUrlManager.d.ts +1 -0
- package/types/src/classes/common/MKSubtitleOverlay.d.ts +1 -0
- package/types/src/classes/common/MKThumbnailManager.d.ts +1 -0
- package/types/src/classes/common/MKUtils.d.ts +1 -0
- package/types/src/classes/common/index.d.ts +10 -0
- package/types/src/classes/error/MKAdobeSessionConcurrencyError.d.ts +1 -0
- package/types/src/classes/error/MKAzukiRequestError.d.ts +1 -0
- package/types/src/classes/error/MKBitmovinPlayerError.d.ts +1 -0
- package/types/src/classes/error/MKHttpError.d.ts +1 -0
- package/types/src/classes/error/MKPlayerError.d.ts +1 -0
- package/types/src/classes/error/MKProgramRestrictionError.d.ts +1 -0
- package/types/src/classes/error/index.d.ts +6 -0
- package/types/src/classes/index.d.ts +4 -0
- package/types/src/classes/player/MKBitmovinPlayer.d.ts +1 -0
- package/types/src/classes/player/MKPlayer.d.ts +111 -0
- package/types/src/classes/player/MKStubPlayer.d.ts +1 -0
- package/types/src/classes/player/index.d.ts +2 -0
- package/types/src/classes/request/MKAdobeSessionConcurrencyRequest.d.ts +1 -0
- package/types/src/classes/request/MKAzukiRequest.d.ts +1 -0
- package/types/src/classes/request/MKHttpRequest.d.ts +1 -0
- package/types/src/classes/request/index.d.ts +3 -0
- package/types/src/constants/MKAzukiRequestEndpoint.d.ts +1 -0
- package/types/src/constants/MKConstants.d.ts +1 -0
- package/types/src/constants/MKCustomError.d.ts +1 -0
- package/types/src/constants/index.d.ts +3 -0
- package/types/src/enums/MKAdQuartile.d.ts +5 -0
- package/types/src/enums/MKAdType.d.ts +6 -0
- package/types/src/enums/MKAssetType.d.ts +7 -0
- package/types/src/enums/MKBufferType.d.ts +4 -0
- package/types/src/enums/MKDrmType.d.ts +7 -0
- package/types/src/enums/MKErrorCode.d.ts +61 -0
- package/types/src/enums/MKHttpRequestType.d.ts +21 -0
- package/types/src/enums/MKHttpResponseType.d.ts +7 -0
- package/types/src/enums/MKLatencyMode.d.ts +6 -0
- package/types/src/enums/MKLiveSynchronizationMethod.d.ts +5 -0
- package/types/src/enums/MKLocalStorageKeys.d.ts +1 -0
- package/types/src/enums/MKLogLevel.d.ts +7 -0
- package/types/src/enums/MKMediaType.d.ts +4 -0
- package/types/src/enums/MKMetadataType.d.ts +10 -0
- package/types/src/enums/MKPlatformType.d.ts +4 -0
- package/types/src/enums/MKPlayerEvent.d.ts +83 -0
- package/types/src/enums/MKPlayerType.d.ts +6 -0
- package/types/src/enums/MKProgramRestrictionType.d.ts +19 -0
- package/types/src/enums/MKRightsMode.d.ts +1 -0
- package/types/src/enums/MKRttEstimationMethod.d.ts +4 -0
- package/types/src/enums/MKStartOffsetTimelineReference.d.ts +4 -0
- package/types/src/enums/MKStreamType.d.ts +9 -0
- package/types/src/enums/MKTimeMode.d.ts +4 -0
- package/types/src/enums/MKViewMode.d.ts +5 -0
- package/types/src/enums/index.d.ts +24 -0
- package/types/src/index.d.ts +5 -0
- package/types/src/interfaces/MKAdCompanion.d.ts +2 -0
- package/types/src/interfaces/MKAdVerification.d.ts +5 -0
- package/types/src/interfaces/MKAdaptationConfig.d.ts +19 -0
- package/types/src/interfaces/MKAdaptationData.d.ts +7 -0
- package/types/src/interfaces/MKAdaptationPlatformConfig.d.ts +6 -0
- package/types/src/interfaces/MKAdobePrimetimeConfig.d.ts +11 -0
- package/types/src/interfaces/MKAnalyticsConfig.d.ts +41 -0
- package/types/src/interfaces/MKAudioAdaptationData.d.ts +3 -0
- package/types/src/interfaces/MKAudioQuality.d.ts +3 -0
- package/types/src/interfaces/MKAudioTrack.d.ts +6 -0
- package/types/src/interfaces/MKBitrateLimitationConfig.d.ts +7 -0
- package/types/src/interfaces/MKBufferConfig.d.ts +6 -0
- package/types/src/interfaces/MKBufferLevel.d.ts +7 -0
- package/types/src/interfaces/MKBufferMediaTypeConfig.d.ts +5 -0
- package/types/src/interfaces/MKCastConfig.d.ts +8 -0
- package/types/src/interfaces/MKCdn.d.ts +1 -0
- package/types/src/interfaces/MKCdnOptions.d.ts +5 -0
- package/types/src/interfaces/MKClearKeyDRMConfig.d.ts +14 -0
- package/types/src/interfaces/MKDownloadedAudioData.d.ts +3 -0
- package/types/src/interfaces/MKDownloadedData.d.ts +5 -0
- package/types/src/interfaces/MKDownloadedVideoData.d.ts +5 -0
- package/types/src/interfaces/MKDrmConfig.d.ts +14 -0
- package/types/src/interfaces/MKDrmLicense.d.ts +5 -0
- package/types/src/interfaces/MKEnvironmentConfig.d.ts +6 -0
- package/types/src/interfaces/MKError.d.ts +5 -0
- package/types/src/interfaces/MKFairplayDrmConfig.d.ts +20 -0
- package/types/src/interfaces/MKHttpRequestOptions.d.ts +8 -0
- package/types/src/interfaces/MKHttpResponse.d.ts +12 -0
- package/types/src/interfaces/MKImageMediaPlaylist.d.ts +1 -0
- package/types/src/interfaces/MKLiveConfig.d.ts +6 -0
- package/types/src/interfaces/MKLogConfig.d.ts +4 -0
- package/types/src/interfaces/MKLowLatencyConfig.d.ts +6 -0
- package/types/src/interfaces/MKLowLatencySyncConfig.d.ts +5 -0
- package/types/src/interfaces/MKMediaTrack.d.ts +6 -0
- package/types/src/interfaces/MKMediaTrackRole.d.ts +6 -0
- package/types/src/interfaces/MKMetadata.d.ts +7 -0
- package/types/src/interfaces/MKPeriodContentInformation.d.ts +5 -0
- package/types/src/interfaces/MKPeriodInformation.d.ts +5 -0
- package/types/src/interfaces/MKPeriodSwitchObject.d.ts +3 -0
- package/types/src/interfaces/MKPlayReadyDrmConfig.d.ts +12 -0
- package/types/src/interfaces/MKPlaybackConfig.d.ts +16 -0
- package/types/src/interfaces/MKPlayerAPI.d.ts +6 -0
- package/types/src/interfaces/MKPlayerConfig.d.ts +25 -0
- package/types/src/interfaces/MKPlayerCoreAPI.d.ts +1 -0
- package/types/src/interfaces/MKPlayerEventCallback.d.ts +4 -0
- package/types/src/interfaces/MKPlayerEventConfig.d.ts +4 -0
- package/types/src/interfaces/MKPlayerTechnology.d.ts +5 -0
- package/types/src/interfaces/MKPreferredTechnology.d.ts +4 -0
- package/types/src/interfaces/MKProgramInfo.d.ts +1 -0
- package/types/src/interfaces/MKProgramRestrictions.d.ts +5 -0
- package/types/src/interfaces/MKProgressiveSource.d.ts +7 -0
- package/types/src/interfaces/MKQuality.d.ts +7 -0
- package/types/src/interfaces/MKQualityMetadata.d.ts +9 -0
- package/types/src/interfaces/MKRegisteredSource.d.ts +10 -0
- package/types/src/interfaces/MKRollInfo.d.ts +1 -0
- package/types/src/interfaces/MKSessionConcurrencyAPI.d.ts +1 -0
- package/types/src/interfaces/MKSourceConfig.d.ts +32 -0
- package/types/src/interfaces/MKSourceLabelingConfig.d.ts +8 -0
- package/types/src/interfaces/MKSourceLabelingStreamTypeConfig.d.ts +5 -0
- package/types/src/interfaces/MKSourceOptions.d.ts +18 -0
- package/types/src/interfaces/MKSubtitleCue.d.ts +14 -0
- package/types/src/interfaces/MKSubtitleCuePosition.d.ts +4 -0
- package/types/src/interfaces/MKSubtitleTrack.d.ts +5 -0
- package/types/src/interfaces/MKSynchronizationConfigEntry.d.ts +5 -0
- package/types/src/interfaces/MKTextTrack.d.ts +7 -0
- package/types/src/interfaces/MKThumbnail.d.ts +10 -0
- package/types/src/interfaces/MKThumbnailTrack.d.ts +3 -0
- package/types/src/interfaces/MKTimeRange.d.ts +4 -0
- package/types/src/interfaces/MKTrackMetadata.d.ts +5 -0
- package/types/src/interfaces/MKUllSource.d.ts +4 -0
- package/types/src/interfaces/MKVTTProperties.d.ts +13 -0
- package/types/src/interfaces/MKVTTRegionProperties.d.ts +10 -0
- package/types/src/interfaces/MKVideoAdaptationData.d.ts +3 -0
- package/types/src/interfaces/MKVideoQuality.d.ts +6 -0
- package/types/src/interfaces/MKVideoSizeLimitationConfig.d.ts +6 -0
- package/types/src/interfaces/MKVideoTrack.d.ts +5 -0
- package/types/src/interfaces/MKViewModeOptions.d.ts +3 -0
- package/types/src/interfaces/MKWidevineModularDrmConfig.d.ts +13 -0
- package/types/src/interfaces/events/MKAdBreakFinishedEvent.d.ts +4 -0
- package/types/src/interfaces/events/MKAdBreakStartedEvent.d.ts +10 -0
- package/types/src/interfaces/events/MKAdClickThroughEvent.d.ts +6 -0
- package/types/src/interfaces/events/MKAdCompanionEvent.d.ts +6 -0
- package/types/src/interfaces/events/MKAdFinishedEvent.d.ts +4 -0
- package/types/src/interfaces/events/MKAdMarkerEvent.d.ts +5 -0
- package/types/src/interfaces/events/MKAdQuartileEvent.d.ts +6 -0
- package/types/src/interfaces/events/MKAdStartedEvent.d.ts +12 -0
- package/types/src/interfaces/events/MKAdVerificationEvent.d.ts +6 -0
- package/types/src/interfaces/events/MKAdaptationEvent.d.ts +4 -0
- package/types/src/interfaces/events/MKAirplayChangedEvent.d.ts +4 -0
- package/types/src/interfaces/events/MKAspectRatioChangedEvent.d.ts +5 -0
- package/types/src/interfaces/events/MKAudioAdaptationEvent.d.ts +3 -0
- package/types/src/interfaces/events/MKAudioChangedEvent.d.ts +6 -0
- package/types/src/interfaces/events/MKAudioDownloadQualityChangeEvent.d.ts +3 -0
- package/types/src/interfaces/events/MKAudioDownloadQualityChangedEvent.d.ts +3 -0
- package/types/src/interfaces/events/MKAudioPlaybackQualityChangedEvent.d.ts +3 -0
- package/types/src/interfaces/events/MKAudioQualityChangedEvent.d.ts +3 -0
- package/types/src/interfaces/events/MKAudioQualityEvent.d.ts +3 -0
- package/types/src/interfaces/events/MKAudioTrackEvent.d.ts +5 -0
- package/types/src/interfaces/events/MKCastAvailableEvent.d.ts +4 -0
- package/types/src/interfaces/events/MKCastStartedEvent.d.ts +5 -0
- package/types/src/interfaces/events/MKCastWaitingForDeviceEvent.d.ts +9 -0
- package/types/src/interfaces/events/MKCueEnterEvent.d.ts +4 -0
- package/types/src/interfaces/events/MKCueExitEvent.d.ts +4 -0
- package/types/src/interfaces/events/MKCueParsedEvent.d.ts +4 -0
- package/types/src/interfaces/events/MKCueUpdateEvent.d.ts +4 -0
- package/types/src/interfaces/events/MKDownloadFinishedEvent.d.ts +14 -0
- package/types/src/interfaces/events/MKDrmLicenseAddedEvent.d.ts +5 -0
- package/types/src/interfaces/events/MKDurationChangedEvent.d.ts +5 -0
- package/types/src/interfaces/events/MKErrorEvent.d.ts +4 -0
- package/types/src/interfaces/events/MKFMTSASiDEvent.d.ts +5 -0
- package/types/src/interfaces/events/MKLatencyModeChangedEvent.d.ts +6 -0
- package/types/src/interfaces/events/MKMediaPlaybackQualityChangeEvent.d.ts +6 -0
- package/types/src/interfaces/events/MKMediaQualityChangeEvent.d.ts +8 -0
- package/types/src/interfaces/events/MKMediaQualityEvent.d.ts +5 -0
- package/types/src/interfaces/events/MKMetadataChangedEvent.d.ts +3 -0
- package/types/src/interfaces/events/MKMetadataEvent.d.ts +8 -0
- package/types/src/interfaces/events/MKMetadataParsedEvent.d.ts +3 -0
- package/types/src/interfaces/events/MKPeriodSwitchedEvent.d.ts +6 -0
- package/types/src/interfaces/events/MKPlaybackEvent.d.ts +4 -0
- package/types/src/interfaces/events/MKPlaybackSpeedChangedEvent.d.ts +5 -0
- package/types/src/interfaces/events/MKPlayerEventBase.d.ts +5 -0
- package/types/src/interfaces/events/MKPlayerResizedEvent.d.ts +5 -0
- package/types/src/interfaces/events/MKProgramRestrictionsEvent.d.ts +5 -0
- package/types/src/interfaces/events/MKProgramTimeChangedEvent.d.ts +5 -0
- package/types/src/interfaces/events/MKSeekEvent.d.ts +5 -0
- package/types/src/interfaces/events/MKSegmentPlaybackEvent.d.ts +23 -0
- package/types/src/interfaces/events/MKSegmentRequestFinishedEvent.d.ts +11 -0
- package/types/src/interfaces/events/MKSubtitleEvent.d.ts +5 -0
- package/types/src/interfaces/events/MKTargetLatencyChangedEvent.d.ts +5 -0
- package/types/src/interfaces/events/MKTimeChangedEvent.d.ts +3 -0
- package/types/src/interfaces/events/MKUserInteractionEvent.d.ts +4 -0
- package/types/src/interfaces/events/MKVideoAdaptationEvent.d.ts +3 -0
- package/types/src/interfaces/events/MKVideoDownloadQualityChangeEvent.d.ts +3 -0
- package/types/src/interfaces/events/MKVideoDownloadQualityChangedEvent.d.ts +3 -0
- package/types/src/interfaces/events/MKVideoPlaybackQualityChangedEvent.d.ts +3 -0
- package/types/src/interfaces/events/MKVideoQualityChangedEvent.d.ts +3 -0
- package/types/src/interfaces/events/MKVideoQualityEvent.d.ts +3 -0
- package/types/src/interfaces/events/MKViewModeChangedEvent.d.ts +7 -0
- package/types/src/interfaces/events/MKVolumeChangedEvent.d.ts +5 -0
- package/types/src/interfaces/events/index.d.ts +61 -0
- package/types/src/interfaces/index.d.ts +79 -0
- /package/{classes → types/classes}/common/MKAzukiResponseUtils.d.ts +0 -0
- /package/{classes → types/classes}/common/MKEventBase.d.ts +0 -0
- /package/{classes → types/classes}/common/MKLocalStorage.d.ts +0 -0
- /package/{classes → types/classes}/common/MKLog.d.ts +0 -0
- /package/{classes → types/classes}/common/MKPlatform.d.ts +0 -0
- /package/{classes → types/classes}/common/MKProgramManager.d.ts +0 -0
- /package/{classes/common/MKSubtitleOverlay.d.ts → types/classes/common/MKSecureUrlManager.d.ts} +0 -0
- /package/{classes/common/MKThumbnailManager.d.ts → types/classes/common/MKSubtitleOverlay.d.ts} +0 -0
- /package/{classes/common/MKUtils.d.ts → types/classes/common/MKThumbnailManager.d.ts} +0 -0
- /package/{classes/error/MKAdobeSessionConcurrencyError.d.ts → types/classes/common/MKUtils.d.ts} +0 -0
- /package/{classes/error/MKAzukiRequestError.d.ts → types/classes/error/MKAdobeSessionConcurrencyError.d.ts} +0 -0
- /package/{classes/error/MKBitmovinPlayerError.d.ts → types/classes/error/MKAzukiRequestError.d.ts} +0 -0
- /package/{classes/error/MKHttpError.d.ts → types/classes/error/MKBitmovinPlayerError.d.ts} +0 -0
- /package/{classes/error/MKPlayerError.d.ts → types/classes/error/MKHttpError.d.ts} +0 -0
- /package/{classes/error/MKProgramRestrictionError.d.ts → types/classes/error/MKPlayerError.d.ts} +0 -0
- /package/{classes/player/MKBitmovinPlayer.d.ts → types/classes/error/MKProgramRestrictionError.d.ts} +0 -0
- /package/{classes → types/classes}/error/index.d.ts +0 -0
- /package/{classes → types/classes}/index.d.ts +0 -0
- /package/{classes/request/MKAdobeSessionConcurrencyRequest.d.ts → types/classes/player/MKBitmovinPlayer.d.ts} +0 -0
- /package/{classes/request/MKAzukiRequest.d.ts → types/classes/player/MKStubPlayer.d.ts} +0 -0
- /package/{classes → types/classes}/player/index.d.ts +0 -0
- /package/{classes/request/MKHttpRequest.d.ts → types/classes/request/MKAdobeSessionConcurrencyRequest.d.ts} +0 -0
- /package/{constants/MKAzukiRequestEndpoint.d.ts → types/classes/request/MKAzukiRequest.d.ts} +0 -0
- /package/{constants/MKConstants.d.ts → types/classes/request/MKHttpRequest.d.ts} +0 -0
- /package/{classes → types/classes}/request/index.d.ts +0 -0
- /package/{constants/MKCustomError.d.ts → types/constants/MKAzukiRequestEndpoint.d.ts} +0 -0
- /package/{enums/MKLocalStorageKeys.d.ts → types/constants/MKConstants.d.ts} +0 -0
- /package/{enums/MKRightsMode.d.ts → types/constants/MKCustomError.d.ts} +0 -0
- /package/{constants → types/constants}/index.d.ts +0 -0
- /package/{enums → types/enums}/MKAdQuartile.d.ts +0 -0
- /package/{enums → types/enums}/MKAdType.d.ts +0 -0
- /package/{enums → types/enums}/MKAssetType.d.ts +0 -0
- /package/{enums → types/enums}/MKBufferType.d.ts +0 -0
- /package/{enums → types/enums}/MKErrorCode.d.ts +0 -0
- /package/{enums → types/enums}/MKHttpRequestType.d.ts +0 -0
- /package/{enums → types/enums}/MKHttpResponseType.d.ts +0 -0
- /package/{enums → types/enums}/MKLatencyMode.d.ts +0 -0
- /package/{enums → types/enums}/MKLiveSynchronizationMethod.d.ts +0 -0
- /package/{interfaces/MKCdn.d.ts → types/enums/MKLocalStorageKeys.d.ts} +0 -0
- /package/{enums → types/enums}/MKLogLevel.d.ts +0 -0
- /package/{enums → types/enums}/MKMediaType.d.ts +0 -0
- /package/{enums → types/enums}/MKMetadataType.d.ts +0 -0
- /package/{enums → types/enums}/MKPlatformType.d.ts +0 -0
- /package/{enums → types/enums}/MKPlayerType.d.ts +0 -0
- /package/{enums → types/enums}/MKProgramRestrictionType.d.ts +0 -0
- /package/{interfaces/MKImageMediaPlaylist.d.ts → types/enums/MKRightsMode.d.ts} +0 -0
- /package/{enums → types/enums}/MKRttEstimationMethod.d.ts +0 -0
- /package/{enums → types/enums}/MKStartOffsetTimelineReference.d.ts +0 -0
- /package/{enums → types/enums}/MKStreamType.d.ts +0 -0
- /package/{enums → types/enums}/MKTimeMode.d.ts +0 -0
- /package/{enums → types/enums}/MKViewMode.d.ts +0 -0
- /package/{enums → types/enums}/index.d.ts +0 -0
- /package/{index.d.ts → types/index.d.ts} +0 -0
- /package/{interfaces → types/interfaces}/MKAdCompanion.d.ts +0 -0
- /package/{interfaces → types/interfaces}/MKAdaptationConfig.d.ts +0 -0
- /package/{interfaces → types/interfaces}/MKAdaptationData.d.ts +0 -0
- /package/{interfaces → types/interfaces}/MKAdaptationPlatformConfig.d.ts +0 -0
- /package/{interfaces → types/interfaces}/MKAdobePrimetimeConfig.d.ts +0 -0
- /package/{interfaces → types/interfaces}/MKAnalyticsConfig.d.ts +0 -0
- /package/{interfaces → types/interfaces}/MKAudioAdaptationData.d.ts +0 -0
- /package/{interfaces → types/interfaces}/MKAudioQuality.d.ts +0 -0
- /package/{interfaces → types/interfaces}/MKAudioTrack.d.ts +0 -0
- /package/{interfaces → types/interfaces}/MKBitrateLimitationConfig.d.ts +0 -0
- /package/{interfaces → types/interfaces}/MKBufferConfig.d.ts +0 -0
- /package/{interfaces → types/interfaces}/MKBufferLevel.d.ts +0 -0
- /package/{interfaces → types/interfaces}/MKBufferMediaTypeConfig.d.ts +0 -0
- /package/{interfaces → types/interfaces}/MKCastConfig.d.ts +0 -0
- /package/{interfaces/MKPlayerCoreAPI.d.ts → types/interfaces/MKCdn.d.ts} +0 -0
- /package/{interfaces → types/interfaces}/MKCdnOptions.d.ts +0 -0
- /package/{interfaces → types/interfaces}/MKDownloadedAudioData.d.ts +0 -0
- /package/{interfaces → types/interfaces}/MKDownloadedData.d.ts +0 -0
- /package/{interfaces → types/interfaces}/MKDownloadedVideoData.d.ts +0 -0
- /package/{interfaces → types/interfaces}/MKDrmLicense.d.ts +0 -0
- /package/{interfaces → types/interfaces}/MKError.d.ts +0 -0
- /package/{interfaces → types/interfaces}/MKFairplayDrmConfig.d.ts +0 -0
- /package/{interfaces → types/interfaces}/MKHttpRequestOptions.d.ts +0 -0
- /package/{interfaces → types/interfaces}/MKHttpResponse.d.ts +0 -0
- /package/{interfaces/MKProgramInfo.d.ts → types/interfaces/MKImageMediaPlaylist.d.ts} +0 -0
- /package/{interfaces → types/interfaces}/MKLiveConfig.d.ts +0 -0
- /package/{interfaces → types/interfaces}/MKLogConfig.d.ts +0 -0
- /package/{interfaces → types/interfaces}/MKLowLatencyConfig.d.ts +0 -0
- /package/{interfaces → types/interfaces}/MKLowLatencySyncConfig.d.ts +0 -0
- /package/{interfaces → types/interfaces}/MKMediaTrack.d.ts +0 -0
- /package/{interfaces → types/interfaces}/MKMediaTrackRole.d.ts +0 -0
- /package/{interfaces → types/interfaces}/MKMetadata.d.ts +0 -0
- /package/{interfaces → types/interfaces}/MKPeriodContentInformation.d.ts +0 -0
- /package/{interfaces → types/interfaces}/MKPeriodInformation.d.ts +0 -0
- /package/{interfaces → types/interfaces}/MKPeriodSwitchObject.d.ts +0 -0
- /package/{interfaces → types/interfaces}/MKPlayReadyDrmConfig.d.ts +0 -0
- /package/{interfaces → types/interfaces}/MKPlaybackConfig.d.ts +0 -0
- /package/{interfaces/MKRollInfo.d.ts → types/interfaces/MKPlayerCoreAPI.d.ts} +0 -0
- /package/{interfaces → types/interfaces}/MKPlayerEventCallback.d.ts +0 -0
- /package/{interfaces → types/interfaces}/MKPlayerEventConfig.d.ts +0 -0
- /package/{interfaces → types/interfaces}/MKPlayerTechnology.d.ts +0 -0
- /package/{interfaces → types/interfaces}/MKPreferredTechnology.d.ts +0 -0
- /package/{interfaces/MKSessionConcurrencyAPI.d.ts → types/interfaces/MKProgramInfo.d.ts} +0 -0
- /package/{interfaces → types/interfaces}/MKProgramRestrictions.d.ts +0 -0
- /package/{interfaces → types/interfaces}/MKProgressiveSource.d.ts +0 -0
- /package/{interfaces → types/interfaces}/MKQuality.d.ts +0 -0
- /package/{interfaces → types/interfaces}/MKQualityMetadata.d.ts +0 -0
- /package/{interfaces → types/interfaces}/MKSourceConfig.d.ts +0 -0
- /package/{interfaces → types/interfaces}/MKSourceLabelingConfig.d.ts +0 -0
- /package/{interfaces → types/interfaces}/MKSourceLabelingStreamTypeConfig.d.ts +0 -0
- /package/{interfaces → types/interfaces}/MKSourceOptions.d.ts +0 -0
- /package/{interfaces → types/interfaces}/MKSubtitleCue.d.ts +0 -0
- /package/{interfaces → types/interfaces}/MKSubtitleCuePosition.d.ts +0 -0
- /package/{interfaces → types/interfaces}/MKSubtitleTrack.d.ts +0 -0
- /package/{interfaces → types/interfaces}/MKSynchronizationConfigEntry.d.ts +0 -0
- /package/{interfaces → types/interfaces}/MKTextTrack.d.ts +0 -0
- /package/{interfaces → types/interfaces}/MKThumbnail.d.ts +0 -0
- /package/{interfaces → types/interfaces}/MKThumbnailTrack.d.ts +0 -0
- /package/{interfaces → types/interfaces}/MKTimeRange.d.ts +0 -0
- /package/{interfaces → types/interfaces}/MKTrackMetadata.d.ts +0 -0
- /package/{interfaces → types/interfaces}/MKUllSource.d.ts +0 -0
- /package/{interfaces → types/interfaces}/MKVTTProperties.d.ts +0 -0
- /package/{interfaces → types/interfaces}/MKVTTRegionProperties.d.ts +0 -0
- /package/{interfaces → types/interfaces}/MKVideoAdaptationData.d.ts +0 -0
- /package/{interfaces → types/interfaces}/MKVideoQuality.d.ts +0 -0
- /package/{interfaces → types/interfaces}/MKVideoSizeLimitationConfig.d.ts +0 -0
- /package/{interfaces → types/interfaces}/MKVideoTrack.d.ts +0 -0
- /package/{interfaces → types/interfaces}/MKViewModeOptions.d.ts +0 -0
- /package/{interfaces → types/interfaces}/MKWidevineModularDrmConfig.d.ts +0 -0
- /package/{interfaces → types/interfaces}/events/MKAdBreakFinishedEvent.d.ts +0 -0
- /package/{interfaces → types/interfaces}/events/MKAdBreakStartedEvent.d.ts +0 -0
- /package/{interfaces → types/interfaces}/events/MKAdClickThroughEvent.d.ts +0 -0
- /package/{interfaces → types/interfaces}/events/MKAdCompanionEvent.d.ts +0 -0
- /package/{interfaces → types/interfaces}/events/MKAdFinishedEvent.d.ts +0 -0
- /package/{interfaces → types/interfaces}/events/MKAdMarkerEvent.d.ts +0 -0
- /package/{interfaces → types/interfaces}/events/MKAdQuartileEvent.d.ts +0 -0
- /package/{interfaces → types/interfaces}/events/MKAdStartedEvent.d.ts +0 -0
- /package/{interfaces → types/interfaces}/events/MKAdaptationEvent.d.ts +0 -0
- /package/{interfaces → types/interfaces}/events/MKAirplayChangedEvent.d.ts +0 -0
- /package/{interfaces → types/interfaces}/events/MKAspectRatioChangedEvent.d.ts +0 -0
- /package/{interfaces → types/interfaces}/events/MKAudioAdaptationEvent.d.ts +0 -0
- /package/{interfaces → types/interfaces}/events/MKAudioChangedEvent.d.ts +0 -0
- /package/{interfaces → types/interfaces}/events/MKAudioDownloadQualityChangeEvent.d.ts +0 -0
- /package/{interfaces → types/interfaces}/events/MKAudioDownloadQualityChangedEvent.d.ts +0 -0
- /package/{interfaces → types/interfaces}/events/MKAudioPlaybackQualityChangedEvent.d.ts +0 -0
- /package/{interfaces → types/interfaces}/events/MKAudioQualityChangedEvent.d.ts +0 -0
- /package/{interfaces → types/interfaces}/events/MKAudioQualityEvent.d.ts +0 -0
- /package/{interfaces → types/interfaces}/events/MKAudioTrackEvent.d.ts +0 -0
- /package/{interfaces → types/interfaces}/events/MKCastAvailableEvent.d.ts +0 -0
- /package/{interfaces → types/interfaces}/events/MKCastStartedEvent.d.ts +0 -0
- /package/{interfaces → types/interfaces}/events/MKCastWaitingForDeviceEvent.d.ts +0 -0
- /package/{interfaces → types/interfaces}/events/MKCueEnterEvent.d.ts +0 -0
- /package/{interfaces → types/interfaces}/events/MKCueExitEvent.d.ts +0 -0
- /package/{interfaces → types/interfaces}/events/MKCueParsedEvent.d.ts +0 -0
- /package/{interfaces → types/interfaces}/events/MKCueUpdateEvent.d.ts +0 -0
- /package/{interfaces → types/interfaces}/events/MKDownloadFinishedEvent.d.ts +0 -0
- /package/{interfaces → types/interfaces}/events/MKDrmLicenseAddedEvent.d.ts +0 -0
- /package/{interfaces → types/interfaces}/events/MKDurationChangedEvent.d.ts +0 -0
- /package/{interfaces → types/interfaces}/events/MKErrorEvent.d.ts +0 -0
- /package/{interfaces → types/interfaces}/events/MKFMTSASiDEvent.d.ts +0 -0
- /package/{interfaces → types/interfaces}/events/MKLatencyModeChangedEvent.d.ts +0 -0
- /package/{interfaces → types/interfaces}/events/MKMediaPlaybackQualityChangeEvent.d.ts +0 -0
- /package/{interfaces → types/interfaces}/events/MKMediaQualityChangeEvent.d.ts +0 -0
- /package/{interfaces → types/interfaces}/events/MKMediaQualityEvent.d.ts +0 -0
- /package/{interfaces → types/interfaces}/events/MKMetadataChangedEvent.d.ts +0 -0
- /package/{interfaces → types/interfaces}/events/MKMetadataEvent.d.ts +0 -0
- /package/{interfaces → types/interfaces}/events/MKMetadataParsedEvent.d.ts +0 -0
- /package/{interfaces → types/interfaces}/events/MKPeriodSwitchedEvent.d.ts +0 -0
- /package/{interfaces → types/interfaces}/events/MKPlaybackEvent.d.ts +0 -0
- /package/{interfaces → types/interfaces}/events/MKPlaybackSpeedChangedEvent.d.ts +0 -0
- /package/{interfaces → types/interfaces}/events/MKPlayerEventBase.d.ts +0 -0
- /package/{interfaces → types/interfaces}/events/MKPlayerResizedEvent.d.ts +0 -0
- /package/{interfaces → types/interfaces}/events/MKProgramRestrictionsEvent.d.ts +0 -0
- /package/{interfaces → types/interfaces}/events/MKProgramTimeChangedEvent.d.ts +0 -0
- /package/{interfaces → types/interfaces}/events/MKSeekEvent.d.ts +0 -0
- /package/{interfaces → types/interfaces}/events/MKSegmentPlaybackEvent.d.ts +0 -0
- /package/{interfaces → types/interfaces}/events/MKSegmentRequestFinishedEvent.d.ts +0 -0
- /package/{interfaces → types/interfaces}/events/MKSubtitleEvent.d.ts +0 -0
- /package/{interfaces → types/interfaces}/events/MKTargetLatencyChangedEvent.d.ts +0 -0
- /package/{interfaces → types/interfaces}/events/MKTimeChangedEvent.d.ts +0 -0
- /package/{interfaces → types/interfaces}/events/MKUserInteractionEvent.d.ts +0 -0
- /package/{interfaces → types/interfaces}/events/MKVideoAdaptationEvent.d.ts +0 -0
- /package/{interfaces → types/interfaces}/events/MKVideoDownloadQualityChangeEvent.d.ts +0 -0
- /package/{interfaces → types/interfaces}/events/MKVideoDownloadQualityChangedEvent.d.ts +0 -0
- /package/{interfaces → types/interfaces}/events/MKVideoPlaybackQualityChangedEvent.d.ts +0 -0
- /package/{interfaces → types/interfaces}/events/MKVideoQualityChangedEvent.d.ts +0 -0
- /package/{interfaces → types/interfaces}/events/MKVideoQualityEvent.d.ts +0 -0
- /package/{interfaces → types/interfaces}/events/MKViewModeChangedEvent.d.ts +0 -0
- /package/{interfaces → types/interfaces}/events/MKVolumeChangedEvent.d.ts +0 -0
|
@@ -0,0 +1,1258 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.MKBitmovinPlayer = void 0;
|
|
4
|
+
const request_1 = require("../request");
|
|
5
|
+
const error_1 = require("../error");
|
|
6
|
+
const common_1 = require("../common");
|
|
7
|
+
const enums_1 = require("../../enums");
|
|
8
|
+
const bitmovin_player_1 = require("bitmovin-player");
|
|
9
|
+
const bitmovin_player_ui_1 = require("bitmovin-player-ui");
|
|
10
|
+
const MKStubPlayer_1 = require("./MKStubPlayer");
|
|
11
|
+
const isTest = typeof (process) !== "undefined" && process.env['isTest'];
|
|
12
|
+
class MKBitmovinPlayer extends common_1.MKEventBase {
|
|
13
|
+
constructor(videoContainer, playerConfig) {
|
|
14
|
+
var _a, _b, _c, _d, _e, _f;
|
|
15
|
+
super();
|
|
16
|
+
this.headers = null;
|
|
17
|
+
this.headersForHlsAes = {};
|
|
18
|
+
this.firstTimeChangedUpdate = false;
|
|
19
|
+
this.hasPreroll = false;
|
|
20
|
+
this.enableAdTrackingBeacons = true;
|
|
21
|
+
this.enableSubtitleOverlay = true;
|
|
22
|
+
this.adQuartileOffsets = [];
|
|
23
|
+
this.adTrackingList = [];
|
|
24
|
+
if (!playerConfig.key) {
|
|
25
|
+
throw new Error("Invalid player license key.");
|
|
26
|
+
}
|
|
27
|
+
this.videoContainer = videoContainer;
|
|
28
|
+
if (playerConfig.enableAdTrackingBeacons !== undefined) {
|
|
29
|
+
this.enableAdTrackingBeacons = playerConfig.enableAdTrackingBeacons;
|
|
30
|
+
}
|
|
31
|
+
this.playerUIEnabled = (_a = playerConfig.ui) !== null && _a !== void 0 ? _a : false;
|
|
32
|
+
this.enableSubtitleOverlay = this.playerUIEnabled ? false : (_b = playerConfig.enableSubtitleOverlay) !== null && _b !== void 0 ? _b : true;
|
|
33
|
+
this.playerConfig = {
|
|
34
|
+
key: playerConfig.key,
|
|
35
|
+
ui: false,
|
|
36
|
+
logs: {
|
|
37
|
+
bitmovin: false,
|
|
38
|
+
level: (_d = (_c = playerConfig.log) === null || _c === void 0 ? void 0 : _c.level) !== null && _d !== void 0 ? _d : bitmovin_player_1.LogLevel.ERROR
|
|
39
|
+
},
|
|
40
|
+
analytics: typeof (playerConfig.analytics) === "object" ? playerConfig.analytics : typeof (playerConfig.analytics) === "boolean" ? playerConfig.analytics : false,
|
|
41
|
+
live: playerConfig.live,
|
|
42
|
+
buffer: (_e = playerConfig.buffer) !== null && _e !== void 0 ? _e : MKBitmovinPlayer.DEFAULT_BUFFER_CONFIG,
|
|
43
|
+
playback: (_f = playerConfig.playback) !== null && _f !== void 0 ? _f : MKBitmovinPlayer.DEFAULT_PLAYBACK_CONFIG,
|
|
44
|
+
adaptation: playerConfig.adaptation,
|
|
45
|
+
remotecontrol: playerConfig.cast,
|
|
46
|
+
style: {
|
|
47
|
+
width: "100%",
|
|
48
|
+
aspectratio: "16:9",
|
|
49
|
+
},
|
|
50
|
+
tweaks: {
|
|
51
|
+
app_id: playerConfig.appId,
|
|
52
|
+
file_protocol: true,
|
|
53
|
+
native_hls_parsing: true,
|
|
54
|
+
enable_seek_for_live: true,
|
|
55
|
+
fairplay_ignore_duplicate_init_data_key_errors: true,
|
|
56
|
+
parse_emsg_boxes: !playerConfig.skipEmsgBoxes
|
|
57
|
+
},
|
|
58
|
+
network: {
|
|
59
|
+
preprocessHttpRequest: ((requestType, request) => {
|
|
60
|
+
var _a, _b, _c, _d;
|
|
61
|
+
if (request) {
|
|
62
|
+
if (requestType === bitmovin_player_1.HttpRequestType.DRM_CERTIFICATE_FAIRPLAY || requestType === bitmovin_player_1.HttpRequestType.DRM_LICENSE_FAIRPLAY) {
|
|
63
|
+
if (((_b = (_a = this.sourceConfig) === null || _a === void 0 ? void 0 : _a.drm) === null || _b === void 0 ? void 0 : _b.usingAzuki) !== false && this.fpsContentId && ((_d = (_c = this.sourceConfig) === null || _c === void 0 ? void 0 : _c.drm) === null || _d === void 0 ? void 0 : _d.fairplay)) {
|
|
64
|
+
request.url = common_1.MKUtils.updateURLQueryParams(request.url, { "key_id": this.fpsContentId });
|
|
65
|
+
}
|
|
66
|
+
}
|
|
67
|
+
if (Object.keys(this.headersForHlsAes).length > 0) {
|
|
68
|
+
if (requestType === bitmovin_player_1.HttpRequestType.KEY_HLS_AES) {
|
|
69
|
+
request.headers = this.headersForHlsAes;
|
|
70
|
+
}
|
|
71
|
+
}
|
|
72
|
+
if (this.headers && Object.keys(this.headers).length > 0) {
|
|
73
|
+
if (requestType === bitmovin_player_1.HttpRequestType.MANIFEST_DASH || requestType === bitmovin_player_1.HttpRequestType.MANIFEST_HLS_MASTER || requestType === bitmovin_player_1.HttpRequestType.MANIFEST_HLS_VARIANT) {
|
|
74
|
+
request.headers = this.headers;
|
|
75
|
+
}
|
|
76
|
+
}
|
|
77
|
+
}
|
|
78
|
+
return Promise.resolve(request);
|
|
79
|
+
})
|
|
80
|
+
},
|
|
81
|
+
events: {
|
|
82
|
+
[bitmovin_player_1.PlayerEvent.AirplayAvailable]: (event) => {
|
|
83
|
+
this.emit(enums_1.MKPlayerEvent.AirplayAvailable, event);
|
|
84
|
+
},
|
|
85
|
+
[bitmovin_player_1.PlayerEvent.AirplayChanged]: (event) => {
|
|
86
|
+
this.emit(enums_1.MKPlayerEvent.AirplayChanged, event);
|
|
87
|
+
},
|
|
88
|
+
[bitmovin_player_1.PlayerEvent.AspectRatioChanged]: (event) => {
|
|
89
|
+
this.emit(enums_1.MKPlayerEvent.AspectRatioChanged, event);
|
|
90
|
+
},
|
|
91
|
+
[bitmovin_player_1.PlayerEvent.AudioAdaptation]: (event) => {
|
|
92
|
+
this.emit(enums_1.MKPlayerEvent.AudioAdaptation, event);
|
|
93
|
+
},
|
|
94
|
+
[bitmovin_player_1.PlayerEvent.AudioAdded]: (event) => {
|
|
95
|
+
this.emit(enums_1.MKPlayerEvent.AudioAdded, event);
|
|
96
|
+
},
|
|
97
|
+
[bitmovin_player_1.PlayerEvent.AudioChanged]: (event) => {
|
|
98
|
+
this.emit(enums_1.MKPlayerEvent.AudioChanged, event);
|
|
99
|
+
},
|
|
100
|
+
[bitmovin_player_1.PlayerEvent.AudioDownloadQualityChange]: (event) => {
|
|
101
|
+
this.emit(enums_1.MKPlayerEvent.AudioDownloadQualityChange, event);
|
|
102
|
+
},
|
|
103
|
+
[bitmovin_player_1.PlayerEvent.AudioDownloadQualityChanged]: (event) => {
|
|
104
|
+
this.emit(enums_1.MKPlayerEvent.AudioDownloadQualityChanged, event);
|
|
105
|
+
},
|
|
106
|
+
[bitmovin_player_1.PlayerEvent.AudioPlaybackQualityChanged]: (event) => {
|
|
107
|
+
this.emit(enums_1.MKPlayerEvent.AudioPlaybackQualityChanged, event);
|
|
108
|
+
},
|
|
109
|
+
[bitmovin_player_1.PlayerEvent.AudioQualityAdded]: (event) => {
|
|
110
|
+
this.emit(enums_1.MKPlayerEvent.AudioQualityAdded, event);
|
|
111
|
+
},
|
|
112
|
+
[bitmovin_player_1.PlayerEvent.AudioQualityChanged]: (event) => {
|
|
113
|
+
this.emit(enums_1.MKPlayerEvent.AudioQualityChanged, event);
|
|
114
|
+
},
|
|
115
|
+
[bitmovin_player_1.PlayerEvent.AudioQualityRemoved]: (event) => {
|
|
116
|
+
this.emit(enums_1.MKPlayerEvent.AudioQualityRemoved, event);
|
|
117
|
+
},
|
|
118
|
+
[bitmovin_player_1.PlayerEvent.AudioRemoved]: (event) => {
|
|
119
|
+
this.emit(enums_1.MKPlayerEvent.AudioRemoved, event);
|
|
120
|
+
},
|
|
121
|
+
[bitmovin_player_1.PlayerEvent.CastAvailable]: (event) => {
|
|
122
|
+
this.emit(enums_1.MKPlayerEvent.CastAvailable, event);
|
|
123
|
+
},
|
|
124
|
+
[bitmovin_player_1.PlayerEvent.CastStart]: (event) => {
|
|
125
|
+
this.emit(enums_1.MKPlayerEvent.CastStart, event);
|
|
126
|
+
},
|
|
127
|
+
[bitmovin_player_1.PlayerEvent.CastStarted]: (event) => {
|
|
128
|
+
this.emit(enums_1.MKPlayerEvent.CastStarted, event);
|
|
129
|
+
},
|
|
130
|
+
[bitmovin_player_1.PlayerEvent.CastStopped]: (event) => {
|
|
131
|
+
this.emit(enums_1.MKPlayerEvent.CastStopped, event);
|
|
132
|
+
},
|
|
133
|
+
[bitmovin_player_1.PlayerEvent.CastWaitingForDevice]: (event) => {
|
|
134
|
+
this.emit(enums_1.MKPlayerEvent.CastWaitingForDevice, event);
|
|
135
|
+
},
|
|
136
|
+
[bitmovin_player_1.PlayerEvent.DVRWindowExceeded]: (event) => {
|
|
137
|
+
this.emit(enums_1.MKPlayerEvent.DVRWindowExceeded, event);
|
|
138
|
+
},
|
|
139
|
+
[bitmovin_player_1.PlayerEvent.Destroy]: (event) => {
|
|
140
|
+
this.emit(enums_1.MKPlayerEvent.Destroy, event);
|
|
141
|
+
},
|
|
142
|
+
[bitmovin_player_1.PlayerEvent.DownloadFinished]: (event) => {
|
|
143
|
+
this.emit(enums_1.MKPlayerEvent.DownloadFinished, event);
|
|
144
|
+
},
|
|
145
|
+
[bitmovin_player_1.PlayerEvent.DrmLicenseAdded]: (event) => {
|
|
146
|
+
this.emit(enums_1.MKPlayerEvent.DrmLicenseAdded, event);
|
|
147
|
+
},
|
|
148
|
+
[bitmovin_player_1.PlayerEvent.DurationChanged]: (event) => {
|
|
149
|
+
this.emit(enums_1.MKPlayerEvent.DurationChanged, event);
|
|
150
|
+
},
|
|
151
|
+
[bitmovin_player_1.PlayerEvent.Error]: (event) => {
|
|
152
|
+
const mkerror = new error_1.MKBitmovinPlayerError(event);
|
|
153
|
+
const mkerrorEvent = {
|
|
154
|
+
timestamp: event.timestamp,
|
|
155
|
+
type: enums_1.MKPlayerEvent.Error,
|
|
156
|
+
name: mkerror.name,
|
|
157
|
+
code: mkerror.code,
|
|
158
|
+
message: mkerror.message
|
|
159
|
+
};
|
|
160
|
+
this.emit(enums_1.MKPlayerEvent.Error, mkerrorEvent);
|
|
161
|
+
},
|
|
162
|
+
[bitmovin_player_1.PlayerEvent.LatencyModeChanged]: (event) => {
|
|
163
|
+
this.emit(enums_1.MKPlayerEvent.LatencyModeChanged, event);
|
|
164
|
+
},
|
|
165
|
+
[bitmovin_player_1.PlayerEvent.Metadata]: (event) => {
|
|
166
|
+
var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m;
|
|
167
|
+
const metadataEvent = event;
|
|
168
|
+
this.emit(enums_1.MKPlayerEvent.Metadata, metadataEvent);
|
|
169
|
+
if (metadataEvent.metadataType === enums_1.MKMetadataType.DATERANGE) {
|
|
170
|
+
const metadata = metadataEvent.metadata;
|
|
171
|
+
if ((metadata.class === "AD-BREAK" || metadata.class === "AD" || metadata.class === "ANALYTICS") &&
|
|
172
|
+
(metadata.clientAttributes && Object.keys(metadata.clientAttributes).length > 0)) {
|
|
173
|
+
if (metadata.class === "AD-BREAK") {
|
|
174
|
+
this.adQuartileOffsets = [];
|
|
175
|
+
this.adStartedEvent = undefined;
|
|
176
|
+
this.adBreakStartedEvent = undefined;
|
|
177
|
+
this.adBreakStartedEvent = {
|
|
178
|
+
id: (_a = metadata.id.replace("-start", "")) !== null && _a !== void 0 ? _a : "",
|
|
179
|
+
adType: metadata.clientAttributes.adType === "pre-roll" ? enums_1.MKAdType.Preroll : metadata.clientAttributes.adType === "mid-roll" ? enums_1.MKAdType.Midroll : metadata.clientAttributes.adType === "post-roll" ? enums_1.MKAdType.Postroll : enums_1.MKAdType.Unknown,
|
|
180
|
+
adsCount: (_c = (_b = metadata.clientAttributes.adsCount) !== null && _b !== void 0 ? _b : metadata.clientAttributes.adIndex.split(":")[1]) !== null && _c !== void 0 ? _c : 0,
|
|
181
|
+
duration: (_d = metadata.duration) !== null && _d !== void 0 ? _d : 0,
|
|
182
|
+
offset: {
|
|
183
|
+
start: (_e = metadataEvent.start) !== null && _e !== void 0 ? _e : 0,
|
|
184
|
+
end: (_f = metadataEvent.end) !== null && _f !== void 0 ? _f : 0
|
|
185
|
+
},
|
|
186
|
+
timestamp: event.timestamp,
|
|
187
|
+
type: enums_1.MKPlayerEvent.AdBreakStarted
|
|
188
|
+
};
|
|
189
|
+
this.emit(enums_1.MKPlayerEvent.AdBreakStarted, this.adBreakStartedEvent);
|
|
190
|
+
}
|
|
191
|
+
if (this.adBreakStartedEvent) {
|
|
192
|
+
if (metadata.class === "AD") {
|
|
193
|
+
if (this.adStartedEvent) {
|
|
194
|
+
const adFinishedEvent = {
|
|
195
|
+
id: this.adStartedEvent.id,
|
|
196
|
+
timestamp: common_1.MKUtils.getCurrentTimestamp(),
|
|
197
|
+
type: enums_1.MKPlayerEvent.AdFinished
|
|
198
|
+
};
|
|
199
|
+
this.emit(enums_1.MKPlayerEvent.AdFinished, adFinishedEvent);
|
|
200
|
+
this.adStartedEvent = undefined;
|
|
201
|
+
this.adQuartileOffsets = [];
|
|
202
|
+
}
|
|
203
|
+
this.adStartedEvent = {
|
|
204
|
+
id: (_h = (_g = metadata.clientAttributes.adId) !== null && _g !== void 0 ? _g : metadata.id) !== null && _h !== void 0 ? _h : "",
|
|
205
|
+
adIndex: (_j = metadata.clientAttributes.adIndex.split(":")[0]) !== null && _j !== void 0 ? _j : "",
|
|
206
|
+
title: metadata.clientAttributes.adTitle,
|
|
207
|
+
system: metadata.clientAttributes.adSystem,
|
|
208
|
+
creativeId: metadata.clientAttributes.creativeId,
|
|
209
|
+
creativeAdId: metadata.clientAttributes.creativeAdId,
|
|
210
|
+
duration: (_k = metadata.duration) !== null && _k !== void 0 ? _k : 0,
|
|
211
|
+
offset: {
|
|
212
|
+
start: (_l = metadataEvent.start) !== null && _l !== void 0 ? _l : 0,
|
|
213
|
+
end: (_m = metadataEvent.end) !== null && _m !== void 0 ? _m : 0
|
|
214
|
+
},
|
|
215
|
+
timestamp: event.timestamp,
|
|
216
|
+
type: enums_1.MKPlayerEvent.AdStarted
|
|
217
|
+
};
|
|
218
|
+
const companionAdsData = this.processCompanionAds(metadata.clientAttributes.companionAds);
|
|
219
|
+
if (companionAdsData) {
|
|
220
|
+
const companionAdEvent = {
|
|
221
|
+
id: this.adStartedEvent.id,
|
|
222
|
+
companionAd: companionAdsData,
|
|
223
|
+
timestamp: event.timestamp,
|
|
224
|
+
type: enums_1.MKPlayerEvent.AdCompanion
|
|
225
|
+
};
|
|
226
|
+
this.emit(enums_1.MKPlayerEvent.AdCompanion, companionAdEvent);
|
|
227
|
+
}
|
|
228
|
+
this.adQuartileOffsets = this.getAdQuartileOffsets(this.adStartedEvent.offset, this.adStartedEvent.duration);
|
|
229
|
+
this.emit(enums_1.MKPlayerEvent.AdStarted, this.adStartedEvent);
|
|
230
|
+
}
|
|
231
|
+
if (metadata.class === "ANALYTICS" && this.adStartedEvent) {
|
|
232
|
+
const adClickThroughEvent = {
|
|
233
|
+
id: this.adStartedEvent.id,
|
|
234
|
+
adClick: metadata.clientAttributes.adClick,
|
|
235
|
+
adClickTracking: metadata.clientAttributes.adClickTracking,
|
|
236
|
+
timestamp: event.timestamp,
|
|
237
|
+
type: enums_1.MKPlayerEvent.AdClickThrough
|
|
238
|
+
};
|
|
239
|
+
this.emit(enums_1.MKPlayerEvent.AdClickThrough, adClickThroughEvent);
|
|
240
|
+
if (this.enableAdTrackingBeacons) {
|
|
241
|
+
this.updateAdTrackingList(metadata.clientAttributes.adUrls);
|
|
242
|
+
}
|
|
243
|
+
const adVerificationData = this.getAdVerificationData(metadata.clientAttributes);
|
|
244
|
+
if (adVerificationData) {
|
|
245
|
+
const adVerificationEventData = {
|
|
246
|
+
id: this.adStartedEvent.id,
|
|
247
|
+
adVerification: adVerificationData,
|
|
248
|
+
timestamp: event.timestamp,
|
|
249
|
+
type: enums_1.MKPlayerEvent.AdVerification
|
|
250
|
+
};
|
|
251
|
+
this.emit(enums_1.MKPlayerEvent.AdVerification, adVerificationEventData);
|
|
252
|
+
}
|
|
253
|
+
}
|
|
254
|
+
}
|
|
255
|
+
}
|
|
256
|
+
}
|
|
257
|
+
},
|
|
258
|
+
[bitmovin_player_1.PlayerEvent.MetadataChanged]: (event) => {
|
|
259
|
+
this.emit(enums_1.MKPlayerEvent.MetadataChanged, event);
|
|
260
|
+
},
|
|
261
|
+
[bitmovin_player_1.PlayerEvent.MetadataParsed]: (event) => {
|
|
262
|
+
var _a, _b;
|
|
263
|
+
const metadataParsedEvent = event;
|
|
264
|
+
if (metadataParsedEvent.metadataType === enums_1.MKMetadataType.DATERANGE &&
|
|
265
|
+
"class" in metadataParsedEvent.metadata && metadataParsedEvent.metadata.class === "AD-BREAK" &&
|
|
266
|
+
"clientAttributes" in metadataParsedEvent.metadata && metadataParsedEvent.metadata.clientAttributes) {
|
|
267
|
+
const clientAttributes = metadataParsedEvent.metadata.clientAttributes;
|
|
268
|
+
if ("adType" in clientAttributes && "adsCount" in clientAttributes) {
|
|
269
|
+
if (clientAttributes.adType === "pre-roll")
|
|
270
|
+
this.hasPreroll = true;
|
|
271
|
+
const adMarkerEvent = {
|
|
272
|
+
adMarker: {
|
|
273
|
+
start: (_a = metadataParsedEvent.start) !== null && _a !== void 0 ? _a : 0,
|
|
274
|
+
end: (_b = metadataParsedEvent.end) !== null && _b !== void 0 ? _b : 0
|
|
275
|
+
},
|
|
276
|
+
timestamp: common_1.MKUtils.getCurrentTimestamp(),
|
|
277
|
+
type: enums_1.MKPlayerEvent.AdMarker
|
|
278
|
+
};
|
|
279
|
+
this.emit(enums_1.MKPlayerEvent.AdMarker, adMarkerEvent);
|
|
280
|
+
}
|
|
281
|
+
}
|
|
282
|
+
this.emit(enums_1.MKPlayerEvent.MetadataParsed, metadataParsedEvent);
|
|
283
|
+
},
|
|
284
|
+
[bitmovin_player_1.PlayerEvent.Muted]: (event) => {
|
|
285
|
+
this.emit(enums_1.MKPlayerEvent.Muted, event);
|
|
286
|
+
},
|
|
287
|
+
[bitmovin_player_1.PlayerEvent.Paused]: (event) => {
|
|
288
|
+
this.emit(enums_1.MKPlayerEvent.Paused, event);
|
|
289
|
+
},
|
|
290
|
+
[bitmovin_player_1.PlayerEvent.PeriodSwitch]: (event) => {
|
|
291
|
+
this.emit(enums_1.MKPlayerEvent.PeriodSwitch, event);
|
|
292
|
+
},
|
|
293
|
+
[bitmovin_player_1.PlayerEvent.PeriodSwitched]: (event) => {
|
|
294
|
+
this.emit(enums_1.MKPlayerEvent.PeriodSwitched, event);
|
|
295
|
+
},
|
|
296
|
+
[bitmovin_player_1.PlayerEvent.Play]: (event) => {
|
|
297
|
+
this.emit(enums_1.MKPlayerEvent.Play, event);
|
|
298
|
+
},
|
|
299
|
+
[bitmovin_player_1.PlayerEvent.PlaybackFinished]: (event) => {
|
|
300
|
+
var _a;
|
|
301
|
+
(_a = this.subtitleOverlay) === null || _a === void 0 ? void 0 : _a.hide();
|
|
302
|
+
this.emit(enums_1.MKPlayerEvent.PlaybackFinished, event);
|
|
303
|
+
},
|
|
304
|
+
[bitmovin_player_1.PlayerEvent.PlaybackSpeedChanged]: (event) => {
|
|
305
|
+
this.emit(enums_1.MKPlayerEvent.PlaybackSpeedChanged, event);
|
|
306
|
+
},
|
|
307
|
+
[bitmovin_player_1.PlayerEvent.PlayerResized]: (event) => {
|
|
308
|
+
var _a;
|
|
309
|
+
(_a = this.subtitleOverlay) === null || _a === void 0 ? void 0 : _a.updateFontSize();
|
|
310
|
+
this.emit(enums_1.MKPlayerEvent.PlayerResized, event);
|
|
311
|
+
},
|
|
312
|
+
[bitmovin_player_1.PlayerEvent.Playing]: (event) => {
|
|
313
|
+
this.emit(enums_1.MKPlayerEvent.Playing, event);
|
|
314
|
+
},
|
|
315
|
+
[bitmovin_player_1.PlayerEvent.Ready]: (event) => {
|
|
316
|
+
this.emit(enums_1.MKPlayerEvent.Ready, event);
|
|
317
|
+
},
|
|
318
|
+
[bitmovin_player_1.PlayerEvent.Seek]: (event) => {
|
|
319
|
+
var _a;
|
|
320
|
+
(_a = this.subtitleOverlay) === null || _a === void 0 ? void 0 : _a.hide();
|
|
321
|
+
this.emit(enums_1.MKPlayerEvent.Seek, event);
|
|
322
|
+
},
|
|
323
|
+
[bitmovin_player_1.PlayerEvent.Seeked]: (event) => {
|
|
324
|
+
this.emit(enums_1.MKPlayerEvent.Seeked, event);
|
|
325
|
+
this.playStart = undefined;
|
|
326
|
+
},
|
|
327
|
+
[bitmovin_player_1.PlayerEvent.SegmentPlayback]: (event) => {
|
|
328
|
+
this.emit(enums_1.MKPlayerEvent.SegmentPlayback, event);
|
|
329
|
+
},
|
|
330
|
+
[bitmovin_player_1.PlayerEvent.SegmentRequestFinished]: (event) => {
|
|
331
|
+
this.emit(enums_1.MKPlayerEvent.SegmentRequestFinished, event);
|
|
332
|
+
},
|
|
333
|
+
[bitmovin_player_1.PlayerEvent.TimeShift]: (event) => {
|
|
334
|
+
var _a;
|
|
335
|
+
(_a = this.subtitleOverlay) === null || _a === void 0 ? void 0 : _a.hide();
|
|
336
|
+
this.emit(enums_1.MKPlayerEvent.Seek, event);
|
|
337
|
+
},
|
|
338
|
+
[bitmovin_player_1.PlayerEvent.TimeShifted]: (event) => {
|
|
339
|
+
this.emit(enums_1.MKPlayerEvent.Seeked, event);
|
|
340
|
+
this.playStart = undefined;
|
|
341
|
+
},
|
|
342
|
+
[bitmovin_player_1.PlayerEvent.ShowAirplayTargetPicker]: (event) => {
|
|
343
|
+
this.emit(enums_1.MKPlayerEvent.ShowAirplayTargetPicker, event);
|
|
344
|
+
},
|
|
345
|
+
[bitmovin_player_1.PlayerEvent.SourceLoaded]: (event) => {
|
|
346
|
+
var _a;
|
|
347
|
+
if (this.playerUIEnabled) {
|
|
348
|
+
(_a = this.playerUI) === null || _a === void 0 ? void 0 : _a.release();
|
|
349
|
+
this.playerUI = bitmovin_player_ui_1.UIFactory.buildDefaultSmallScreenUI(this.player);
|
|
350
|
+
}
|
|
351
|
+
const videoElement = this.getVideoElement();
|
|
352
|
+
if (this.enableSubtitleOverlay && !this.subtitleOverlay && videoElement) {
|
|
353
|
+
try {
|
|
354
|
+
this.subtitleOverlay = new common_1.MKSubtitleOverlay(videoElement);
|
|
355
|
+
}
|
|
356
|
+
catch (error) {
|
|
357
|
+
common_1.MKLog.error(error);
|
|
358
|
+
}
|
|
359
|
+
}
|
|
360
|
+
this.emit(enums_1.MKPlayerEvent.SourceLoaded, event);
|
|
361
|
+
},
|
|
362
|
+
[bitmovin_player_1.PlayerEvent.SourceUnloaded]: (event) => {
|
|
363
|
+
this.emit(enums_1.MKPlayerEvent.SourceUnloaded, event);
|
|
364
|
+
},
|
|
365
|
+
[bitmovin_player_1.PlayerEvent.StallEnded]: (event) => {
|
|
366
|
+
this.emit(enums_1.MKPlayerEvent.StallEnded, event);
|
|
367
|
+
},
|
|
368
|
+
[bitmovin_player_1.PlayerEvent.StallStarted]: (event) => {
|
|
369
|
+
var _a;
|
|
370
|
+
(_a = this.subtitleOverlay) === null || _a === void 0 ? void 0 : _a.hide();
|
|
371
|
+
this.emit(enums_1.MKPlayerEvent.StallStarted, event);
|
|
372
|
+
},
|
|
373
|
+
[bitmovin_player_1.PlayerEvent.SubtitleAdded]: (event) => {
|
|
374
|
+
this.emit(enums_1.MKPlayerEvent.SubtitleAdded, event);
|
|
375
|
+
},
|
|
376
|
+
[bitmovin_player_1.PlayerEvent.SubtitleDisable]: (event) => {
|
|
377
|
+
this.emit(enums_1.MKPlayerEvent.SubtitleDisable, event);
|
|
378
|
+
},
|
|
379
|
+
[bitmovin_player_1.PlayerEvent.SubtitleDisabled]: (event) => {
|
|
380
|
+
var _a;
|
|
381
|
+
(_a = this.subtitleOverlay) === null || _a === void 0 ? void 0 : _a.disable();
|
|
382
|
+
this.emit(enums_1.MKPlayerEvent.SubtitleDisabled, event);
|
|
383
|
+
},
|
|
384
|
+
[bitmovin_player_1.PlayerEvent.SubtitleEnable]: (event) => {
|
|
385
|
+
this.emit(enums_1.MKPlayerEvent.SubtitleEnable, event);
|
|
386
|
+
},
|
|
387
|
+
[bitmovin_player_1.PlayerEvent.SubtitleEnabled]: (event) => {
|
|
388
|
+
var _a;
|
|
389
|
+
(_a = this.subtitleOverlay) === null || _a === void 0 ? void 0 : _a.enable();
|
|
390
|
+
this.emit(enums_1.MKPlayerEvent.SubtitleEnabled, event);
|
|
391
|
+
},
|
|
392
|
+
[bitmovin_player_1.PlayerEvent.CueEnter]: (event) => {
|
|
393
|
+
var _a;
|
|
394
|
+
const cueEnterEvent = event;
|
|
395
|
+
this.emit(enums_1.MKPlayerEvent.CueEnter, cueEnterEvent);
|
|
396
|
+
const subtitleCue = {
|
|
397
|
+
end: cueEnterEvent.end,
|
|
398
|
+
html: cueEnterEvent.html,
|
|
399
|
+
image: cueEnterEvent.image,
|
|
400
|
+
position: cueEnterEvent.position,
|
|
401
|
+
region: cueEnterEvent.region,
|
|
402
|
+
regionStyle: cueEnterEvent.regionStyle,
|
|
403
|
+
start: cueEnterEvent.start,
|
|
404
|
+
subtitleId: cueEnterEvent.subtitleId,
|
|
405
|
+
text: cueEnterEvent.text
|
|
406
|
+
};
|
|
407
|
+
(_a = this.subtitleOverlay) === null || _a === void 0 ? void 0 : _a.show(subtitleCue);
|
|
408
|
+
},
|
|
409
|
+
[bitmovin_player_1.PlayerEvent.CueExit]: (event) => {
|
|
410
|
+
var _a;
|
|
411
|
+
this.emit(enums_1.MKPlayerEvent.CueExit, event);
|
|
412
|
+
(_a = this.subtitleOverlay) === null || _a === void 0 ? void 0 : _a.hide();
|
|
413
|
+
},
|
|
414
|
+
[bitmovin_player_1.PlayerEvent.CueParsed]: (event) => {
|
|
415
|
+
this.emit(enums_1.MKPlayerEvent.CueParsed, event);
|
|
416
|
+
},
|
|
417
|
+
[bitmovin_player_1.PlayerEvent.CueUpdate]: (event) => {
|
|
418
|
+
this.emit(enums_1.MKPlayerEvent.CueUpdate, event);
|
|
419
|
+
},
|
|
420
|
+
[bitmovin_player_1.PlayerEvent.SubtitleRemoved]: (event) => {
|
|
421
|
+
var _a;
|
|
422
|
+
(_a = this.subtitleOverlay) === null || _a === void 0 ? void 0 : _a.hide();
|
|
423
|
+
this.emit(enums_1.MKPlayerEvent.SubtitleRemoved, event);
|
|
424
|
+
},
|
|
425
|
+
[bitmovin_player_1.PlayerEvent.TargetLatencyChanged]: (event) => {
|
|
426
|
+
this.emit(enums_1.MKPlayerEvent.TargetLatencyChanged, event);
|
|
427
|
+
},
|
|
428
|
+
[bitmovin_player_1.PlayerEvent.TimeChanged]: (event) => {
|
|
429
|
+
const timeChangedEventdata = event;
|
|
430
|
+
this.emit(enums_1.MKPlayerEvent.TimeChanged, timeChangedEventdata);
|
|
431
|
+
this.emitAdEvents(timeChangedEventdata.time);
|
|
432
|
+
if (this.enableAdTrackingBeacons) {
|
|
433
|
+
this.notifyAdTracking(timeChangedEventdata.time);
|
|
434
|
+
}
|
|
435
|
+
if (!this.firstTimeChangedUpdate) {
|
|
436
|
+
this.firstTimeChangedUpdate = true;
|
|
437
|
+
if (this.sourceConfig && !this.hasPreroll && this.playStart !== undefined) {
|
|
438
|
+
if (this.sourceConfig.assetType === enums_1.MKAssetType.Live || this.sourceConfig.assetType === enums_1.MKAssetType.Event) {
|
|
439
|
+
if (this.playStart === 1) {
|
|
440
|
+
common_1.MKLog.debug("Will seek to live edge!");
|
|
441
|
+
this.seekToLiveEdge();
|
|
442
|
+
}
|
|
443
|
+
else {
|
|
444
|
+
common_1.MKLog.debug(`Will seek to offset ${this.playStart}`);
|
|
445
|
+
this.seek(this.playStart);
|
|
446
|
+
}
|
|
447
|
+
}
|
|
448
|
+
else {
|
|
449
|
+
common_1.MKLog.debug(`Will seek to offset ${this.playStart}`);
|
|
450
|
+
this.seek(this.playStart);
|
|
451
|
+
}
|
|
452
|
+
}
|
|
453
|
+
}
|
|
454
|
+
},
|
|
455
|
+
[bitmovin_player_1.PlayerEvent.Unmuted]: (event) => {
|
|
456
|
+
this.emit(enums_1.MKPlayerEvent.Unmuted, event);
|
|
457
|
+
},
|
|
458
|
+
[bitmovin_player_1.PlayerEvent.VideoAdaptation]: (event) => {
|
|
459
|
+
this.emit(enums_1.MKPlayerEvent.VideoAdaptation, event);
|
|
460
|
+
},
|
|
461
|
+
[bitmovin_player_1.PlayerEvent.VideoDownloadQualityChange]: (event) => {
|
|
462
|
+
this.emit(enums_1.MKPlayerEvent.VideoDownloadQualityChange, event);
|
|
463
|
+
},
|
|
464
|
+
[bitmovin_player_1.PlayerEvent.VideoDownloadQualityChanged]: (event) => {
|
|
465
|
+
this.emit(enums_1.MKPlayerEvent.VideoDownloadQualityChanged, event);
|
|
466
|
+
},
|
|
467
|
+
[bitmovin_player_1.PlayerEvent.VideoPlaybackQualityChanged]: (event) => {
|
|
468
|
+
this.emit(enums_1.MKPlayerEvent.VideoPlaybackQualityChanged, event);
|
|
469
|
+
},
|
|
470
|
+
[bitmovin_player_1.PlayerEvent.VideoQualityAdded]: (event) => {
|
|
471
|
+
this.emit(enums_1.MKPlayerEvent.VideoQualityAdded, event);
|
|
472
|
+
},
|
|
473
|
+
[bitmovin_player_1.PlayerEvent.VideoQualityChanged]: (event) => {
|
|
474
|
+
this.emit(enums_1.MKPlayerEvent.VideoQualityChanged, event);
|
|
475
|
+
},
|
|
476
|
+
[bitmovin_player_1.PlayerEvent.VideoQualityRemoved]: (event) => {
|
|
477
|
+
this.emit(enums_1.MKPlayerEvent.VideoQualityRemoved, event);
|
|
478
|
+
},
|
|
479
|
+
[bitmovin_player_1.PlayerEvent.ViewModeChanged]: (event) => {
|
|
480
|
+
this.emit(enums_1.MKPlayerEvent.ViewModeChanged, event);
|
|
481
|
+
},
|
|
482
|
+
[bitmovin_player_1.PlayerEvent.VolumeChanged]: (event) => {
|
|
483
|
+
this.emit(enums_1.MKPlayerEvent.VolumeChanged, event);
|
|
484
|
+
},
|
|
485
|
+
[bitmovin_player_1.PlayerEvent.Warning]: (event) => {
|
|
486
|
+
if ("code" in event && event.code === 1401) {
|
|
487
|
+
const mkerror = new error_1.MKBitmovinPlayerError(event);
|
|
488
|
+
const mkerrorEvent = {
|
|
489
|
+
timestamp: event.timestamp,
|
|
490
|
+
type: enums_1.MKPlayerEvent.Error,
|
|
491
|
+
name: mkerror.name,
|
|
492
|
+
code: mkerror.code,
|
|
493
|
+
message: mkerror.message
|
|
494
|
+
};
|
|
495
|
+
this.emit(enums_1.MKPlayerEvent.Error, mkerrorEvent);
|
|
496
|
+
}
|
|
497
|
+
else {
|
|
498
|
+
common_1.MKLog.warn(JSON.stringify(event, null, 4));
|
|
499
|
+
}
|
|
500
|
+
}
|
|
501
|
+
}
|
|
502
|
+
};
|
|
503
|
+
if (this.playerConfig.tweaks) {
|
|
504
|
+
if (common_1.MKPlatform.isPlayStation5()) {
|
|
505
|
+
Object.assign(this.playerConfig.tweaks, {
|
|
506
|
+
playstation_5: { playmode: '2K' }
|
|
507
|
+
});
|
|
508
|
+
}
|
|
509
|
+
if (common_1.MKPlatform.isComcastX1()) {
|
|
510
|
+
Object.assign(this.playerConfig.tweaks, {
|
|
511
|
+
MINIMUM_ALLOWED_UPDATE_PERIOD: 6,
|
|
512
|
+
MINIMAL_BACKWARD_BUFFER_CLEARING_INTERVAL: 2,
|
|
513
|
+
MIN_SIZE_FOR_GAP_SKIPPING: 0.15,
|
|
514
|
+
DOWNLOAD_DURATION_SAFETY_MARGIN: 0.5,
|
|
515
|
+
MAXIMUM_DOWNLOAD_DURATION_MULTIPLIER: 1
|
|
516
|
+
});
|
|
517
|
+
}
|
|
518
|
+
if (common_1.MKPlatform.isTizenTV() || common_1.MKPlatform.isWebOS()) {
|
|
519
|
+
Object.assign(this.playerConfig.tweaks, {
|
|
520
|
+
HLS_PARSE_MANIFEST_IN_WORKER: true
|
|
521
|
+
});
|
|
522
|
+
}
|
|
523
|
+
}
|
|
524
|
+
if (!isTest) {
|
|
525
|
+
this.player = new bitmovin_player_1.Player(this.videoContainer, this.playerConfig);
|
|
526
|
+
}
|
|
527
|
+
else {
|
|
528
|
+
this.player = new MKStubPlayer_1.MKStubPlayer(this.videoContainer, this.playerConfig);
|
|
529
|
+
}
|
|
530
|
+
if (this.player.getContainer().classList.contains('bitmovinplayer-container')) {
|
|
531
|
+
this.player.getContainer().classList.remove('bitmovinplayer-container');
|
|
532
|
+
}
|
|
533
|
+
if (this.player.getContainer().classList.contains('aspect-16x9')) {
|
|
534
|
+
this.player.getContainer().classList.remove('aspect-16x9');
|
|
535
|
+
}
|
|
536
|
+
}
|
|
537
|
+
addCastMetadata(metadata) {
|
|
538
|
+
return this.player.addMetadata(bitmovin_player_1.MetadataType.CAST, metadata);
|
|
539
|
+
}
|
|
540
|
+
addSubtitle(subtitleTrack) {
|
|
541
|
+
this.player.subtitles.add(subtitleTrack);
|
|
542
|
+
}
|
|
543
|
+
castStop() {
|
|
544
|
+
this.player.castStop();
|
|
545
|
+
}
|
|
546
|
+
castVideo() {
|
|
547
|
+
this.player.castVideo();
|
|
548
|
+
}
|
|
549
|
+
destroy() {
|
|
550
|
+
var _a, _b, _c;
|
|
551
|
+
(_a = this.subtitleOverlay) === null || _a === void 0 ? void 0 : _a.disable();
|
|
552
|
+
(_b = this.subtitleOverlay) === null || _b === void 0 ? void 0 : _b.destroy();
|
|
553
|
+
this.subtitleOverlay = undefined;
|
|
554
|
+
(_c = this.playerUI) === null || _c === void 0 ? void 0 : _c.release();
|
|
555
|
+
return this.player.destroy();
|
|
556
|
+
}
|
|
557
|
+
disableSubtitle(subtitleID) {
|
|
558
|
+
this.player.subtitles.disable(subtitleID);
|
|
559
|
+
}
|
|
560
|
+
enableSubtitle(subtitleID) {
|
|
561
|
+
this.player.subtitles.enable(subtitleID);
|
|
562
|
+
}
|
|
563
|
+
getAspectRatio() {
|
|
564
|
+
return this.player.getAspectRatio();
|
|
565
|
+
}
|
|
566
|
+
getAudio() {
|
|
567
|
+
const audioTrack = this.player.getAudio();
|
|
568
|
+
if (audioTrack)
|
|
569
|
+
return audioTrack;
|
|
570
|
+
return null;
|
|
571
|
+
}
|
|
572
|
+
getAudioQuality() {
|
|
573
|
+
const audioQuality = this.player.getAudioQuality();
|
|
574
|
+
return audioQuality;
|
|
575
|
+
}
|
|
576
|
+
getAvailableAudio() {
|
|
577
|
+
const audioTracks = this.player.getAvailableAudio();
|
|
578
|
+
return audioTracks;
|
|
579
|
+
}
|
|
580
|
+
getAvailableAudioQualities() {
|
|
581
|
+
const audioQualities = this.player.getAvailableAudioQualities();
|
|
582
|
+
return audioQualities;
|
|
583
|
+
}
|
|
584
|
+
getAvailableSubtitles() {
|
|
585
|
+
const subtitleTracks = this.player.subtitles.list();
|
|
586
|
+
return subtitleTracks;
|
|
587
|
+
}
|
|
588
|
+
getAvailableVideoQualities() {
|
|
589
|
+
const videoQualities = this.player.getAvailableVideoQualities();
|
|
590
|
+
return videoQualities;
|
|
591
|
+
}
|
|
592
|
+
getBufferLevel(type, media) {
|
|
593
|
+
const bufferLevel = this.player.buffer.getLevel(type, media);
|
|
594
|
+
return bufferLevel;
|
|
595
|
+
}
|
|
596
|
+
getBufferedRanges() {
|
|
597
|
+
let bufferedRanges = this.player.getBufferedRanges();
|
|
598
|
+
return bufferedRanges;
|
|
599
|
+
}
|
|
600
|
+
getVersion() {
|
|
601
|
+
return bitmovin_player_1.Player.version;
|
|
602
|
+
}
|
|
603
|
+
getVideoContainer() {
|
|
604
|
+
return this.player.getContainer();
|
|
605
|
+
}
|
|
606
|
+
getCurrentTime(mode) {
|
|
607
|
+
return this.player.getCurrentTime(mode);
|
|
608
|
+
}
|
|
609
|
+
getDownloadedAudioData() {
|
|
610
|
+
const downloadedAudioData = this.player.getDownloadedAudioData();
|
|
611
|
+
return downloadedAudioData;
|
|
612
|
+
}
|
|
613
|
+
getDownloadedVideoData() {
|
|
614
|
+
const downloadedVideoData = this.player.getDownloadedVideoData();
|
|
615
|
+
return downloadedVideoData;
|
|
616
|
+
}
|
|
617
|
+
getDroppedVideoFrames() {
|
|
618
|
+
return this.player.getDroppedVideoFrames();
|
|
619
|
+
}
|
|
620
|
+
getDuration() {
|
|
621
|
+
if (this.isLive()) {
|
|
622
|
+
return (-1 * this.getMaxTimeShift());
|
|
623
|
+
}
|
|
624
|
+
return this.player.getDuration();
|
|
625
|
+
}
|
|
626
|
+
getMaxTimeShift() {
|
|
627
|
+
return this.player.getMaxTimeShift();
|
|
628
|
+
}
|
|
629
|
+
getPlaybackAudioData() {
|
|
630
|
+
const audioQuality = this.player.getPlaybackAudioData();
|
|
631
|
+
return audioQuality;
|
|
632
|
+
}
|
|
633
|
+
getPlaybackSpeed() {
|
|
634
|
+
return this.player.getPlaybackSpeed();
|
|
635
|
+
}
|
|
636
|
+
getPlaybackVideoData() {
|
|
637
|
+
const videoQuality = this.player.getPlaybackVideoData();
|
|
638
|
+
return videoQuality;
|
|
639
|
+
}
|
|
640
|
+
getSeekableRange(mode) {
|
|
641
|
+
if (mode == enums_1.MKTimeMode.RelativeTime && this.isLive()) {
|
|
642
|
+
const end = this.getCurrentTime(mode) + (-1 * this.getTimeShift());
|
|
643
|
+
const start = end - (-1 * this.getMaxTimeShift());
|
|
644
|
+
const seekableRange = {
|
|
645
|
+
start: start < 0 ? 0 : start,
|
|
646
|
+
end: end
|
|
647
|
+
};
|
|
648
|
+
return seekableRange;
|
|
649
|
+
}
|
|
650
|
+
const seekableRange = this.player.getSeekableRange();
|
|
651
|
+
return seekableRange;
|
|
652
|
+
}
|
|
653
|
+
getThumbnail(time) {
|
|
654
|
+
const thumbnail = this.player.getThumbnail(time);
|
|
655
|
+
if (thumbnail)
|
|
656
|
+
return thumbnail;
|
|
657
|
+
return null;
|
|
658
|
+
}
|
|
659
|
+
getTimeShift() {
|
|
660
|
+
return this.player.getTimeShift();
|
|
661
|
+
}
|
|
662
|
+
getTotalStalledTime() {
|
|
663
|
+
return this.player.getTotalStalledTime();
|
|
664
|
+
}
|
|
665
|
+
getVideoElement() {
|
|
666
|
+
return this.player.getVideoElement();
|
|
667
|
+
}
|
|
668
|
+
getVideoQuality() {
|
|
669
|
+
const videoQuality = this.player.getVideoQuality();
|
|
670
|
+
return videoQuality;
|
|
671
|
+
}
|
|
672
|
+
getViewMode() {
|
|
673
|
+
const viewMode = this.player.getViewMode();
|
|
674
|
+
return viewMode;
|
|
675
|
+
}
|
|
676
|
+
getVolume() {
|
|
677
|
+
return this.player.getVolume();
|
|
678
|
+
}
|
|
679
|
+
hasEnded() {
|
|
680
|
+
return this.player.hasEnded();
|
|
681
|
+
}
|
|
682
|
+
isAirplayActive() {
|
|
683
|
+
return this.player.isAirplayActive();
|
|
684
|
+
}
|
|
685
|
+
isAirplayAvailable() {
|
|
686
|
+
return this.player.isAirplayAvailable();
|
|
687
|
+
}
|
|
688
|
+
isCastAvailable() {
|
|
689
|
+
return this.player.isCastAvailable();
|
|
690
|
+
}
|
|
691
|
+
isCasting() {
|
|
692
|
+
return this.player.isCasting();
|
|
693
|
+
}
|
|
694
|
+
isLive() {
|
|
695
|
+
return this.player.isLive();
|
|
696
|
+
}
|
|
697
|
+
isMuted() {
|
|
698
|
+
return this.player.isMuted();
|
|
699
|
+
}
|
|
700
|
+
isPaused() {
|
|
701
|
+
return this.player.isPaused();
|
|
702
|
+
}
|
|
703
|
+
isPlaying() {
|
|
704
|
+
return this.player.isPlaying();
|
|
705
|
+
}
|
|
706
|
+
isStalled() {
|
|
707
|
+
return this.player.isStalled();
|
|
708
|
+
}
|
|
709
|
+
isViewModeAvailable(viewMode) {
|
|
710
|
+
return this.player.isViewModeAvailable(viewMode);
|
|
711
|
+
}
|
|
712
|
+
load(sourceConfig, disableSeeking) {
|
|
713
|
+
var _a;
|
|
714
|
+
this.hasPreroll = false;
|
|
715
|
+
this.adTrackingList = [];
|
|
716
|
+
this.headersForHlsAes = {};
|
|
717
|
+
this.playStart = undefined;
|
|
718
|
+
this.fpsContentId = undefined;
|
|
719
|
+
this.firstTimeChangedUpdate = false;
|
|
720
|
+
this.sourceConfig = Object.assign({}, sourceConfig);
|
|
721
|
+
let applyDefaultStartOffset = true;
|
|
722
|
+
const source = {};
|
|
723
|
+
if (isTest) {
|
|
724
|
+
source.videoDetails = sourceConfig.videoDetails;
|
|
725
|
+
}
|
|
726
|
+
source.title = sourceConfig.title;
|
|
727
|
+
source.description = sourceConfig.description;
|
|
728
|
+
source.poster = sourceConfig.poster;
|
|
729
|
+
source.hls = sourceConfig.hls;
|
|
730
|
+
source.dash = sourceConfig.dash;
|
|
731
|
+
source.progressive = sourceConfig.progressive;
|
|
732
|
+
source.smooth = sourceConfig.smooth;
|
|
733
|
+
source.labeling = sourceConfig.labeling;
|
|
734
|
+
source.analytics = sourceConfig.analytics;
|
|
735
|
+
source.subtitleTracks = sourceConfig.subtitleTracks;
|
|
736
|
+
source.thumbnailTrack = sourceConfig.thumbnailTrack;
|
|
737
|
+
if (sourceConfig.drm) {
|
|
738
|
+
source.drm = Object.assign({}, sourceConfig.drm);
|
|
739
|
+
if (sourceConfig.drm.usingAzuki !== false && source.drm.fairplay) {
|
|
740
|
+
source.drm.fairplay.prepareContentId = ((url) => {
|
|
741
|
+
const link = document.createElement('a');
|
|
742
|
+
link.href = url.substring(url.indexOf("skd://"));
|
|
743
|
+
if (link.href.length > 0) {
|
|
744
|
+
const urlParts = link.href.split("skd://", 2);
|
|
745
|
+
if (urlParts.length === 2) {
|
|
746
|
+
this.fpsContentId = urlParts[1];
|
|
747
|
+
return this.fpsContentId;
|
|
748
|
+
}
|
|
749
|
+
}
|
|
750
|
+
return link.hostname;
|
|
751
|
+
});
|
|
752
|
+
source.drm.fairplay.prepareCertificate = ((data) => {
|
|
753
|
+
var _a, _b;
|
|
754
|
+
const responseText = String.fromCharCode.apply(null, Array.from(new Uint8Array(data)));
|
|
755
|
+
const parser = new DOMParser();
|
|
756
|
+
const xmlDoc = parser.parseFromString(responseText, "text/xml");
|
|
757
|
+
const cert = (_b = (_a = xmlDoc.getElementsByTagName("cert")[0]) === null || _a === void 0 ? void 0 : _a.childNodes[0]) === null || _b === void 0 ? void 0 : _b.nodeValue;
|
|
758
|
+
const raw = common_1.MKUtils.base64Decode(cert !== null && cert !== void 0 ? cert : "", false);
|
|
759
|
+
const rawLength = raw.length;
|
|
760
|
+
let certificate = new Uint8Array(new ArrayBuffer(rawLength));
|
|
761
|
+
for (let i = 0; i < rawLength; i++) {
|
|
762
|
+
certificate[i] = raw.charCodeAt(i);
|
|
763
|
+
}
|
|
764
|
+
return certificate;
|
|
765
|
+
});
|
|
766
|
+
source.drm.fairplay.prepareMessage = ((event, _session) => {
|
|
767
|
+
return common_1.MKUtils.base64Encode(event.message);
|
|
768
|
+
});
|
|
769
|
+
source.drm.fairplay.prepareLicense = ((data) => {
|
|
770
|
+
var _a, _b;
|
|
771
|
+
const parser = new DOMParser();
|
|
772
|
+
const xmlDoc = parser.parseFromString(data, "text/xml");
|
|
773
|
+
const cert = (_b = (_a = xmlDoc.getElementsByTagName("ckc")[0]) === null || _a === void 0 ? void 0 : _a.childNodes[0]) === null || _b === void 0 ? void 0 : _b.nodeValue;
|
|
774
|
+
return cert !== null && cert !== void 0 ? cert : "";
|
|
775
|
+
});
|
|
776
|
+
}
|
|
777
|
+
if (source.drm.clearkey && source.drm.clearkey.hasOwnProperty("LA_URL")) {
|
|
778
|
+
const clearkeyConfig = Object.assign({}, source.drm.clearkey);
|
|
779
|
+
if (clearkeyConfig.LA_URL.toLowerCase() === "hls_aes" && clearkeyConfig.headers && Object.keys(clearkeyConfig.headers).length > 0) {
|
|
780
|
+
this.headersForHlsAes = Object.assign({}, clearkeyConfig.headers);
|
|
781
|
+
source.drm = undefined;
|
|
782
|
+
}
|
|
783
|
+
}
|
|
784
|
+
}
|
|
785
|
+
if (sourceConfig.sourceOptions !== undefined) {
|
|
786
|
+
source.options = {
|
|
787
|
+
audioCodecPriority: sourceConfig.sourceOptions.audioCodecPriority,
|
|
788
|
+
dashManifestWithCredentials: sourceConfig.sourceOptions.dashManifestWithCredentials,
|
|
789
|
+
dashWithCredentials: sourceConfig.sourceOptions.dashWithCredentials,
|
|
790
|
+
headers: sourceConfig.sourceOptions.headers,
|
|
791
|
+
hlsManifestWithCredentials: sourceConfig.sourceOptions.hlsManifestWithCredentials,
|
|
792
|
+
hlsWithCredentials: sourceConfig.sourceOptions.hlsWithCredentials,
|
|
793
|
+
manifestWithCredentials: sourceConfig.sourceOptions.manifestWithCredentials,
|
|
794
|
+
persistentPoster: sourceConfig.sourceOptions.persistentPoster,
|
|
795
|
+
shouldRecreateSourceBuffersOnPeriodSwitch: sourceConfig.sourceOptions.shouldRecreateSourceBuffersOnPeriodSwitch,
|
|
796
|
+
videoCodecPriority: sourceConfig.sourceOptions.videoCodecPriority,
|
|
797
|
+
withCredentials: sourceConfig.sourceOptions.withCredentials
|
|
798
|
+
};
|
|
799
|
+
if (sourceConfig.sourceOptions.startOffset !== undefined) {
|
|
800
|
+
applyDefaultStartOffset = false;
|
|
801
|
+
if (sourceConfig.assetType === enums_1.MKAssetType.Live || sourceConfig.assetType === enums_1.MKAssetType.Event) {
|
|
802
|
+
if (sourceConfig.sourceOptions.startOffset < 0) {
|
|
803
|
+
source.options.startOffset = sourceConfig.sourceOptions.startOffset;
|
|
804
|
+
source.options.startOffsetTimelineReference = sourceConfig.sourceOptions.startOffsetTimelineReference;
|
|
805
|
+
common_1.MKLog.debug(`Will start playback directly at offset ${sourceConfig.sourceOptions.startOffset}`);
|
|
806
|
+
}
|
|
807
|
+
else if (sourceConfig.sourceOptions.startOffset === 0) {
|
|
808
|
+
if (sourceConfig.assetType === enums_1.MKAssetType.Live) {
|
|
809
|
+
const timelineReferencePoint = (_a = sourceConfig.sourceOptions.startOffsetTimelineReference) !== null && _a !== void 0 ? _a : bitmovin_player_1.TimelineReferencePoint.End;
|
|
810
|
+
source.options.startOffset = -1;
|
|
811
|
+
source.options.startOffsetTimelineReference = timelineReferencePoint;
|
|
812
|
+
common_1.MKLog.debug(`Will start playback directly from ${timelineReferencePoint === bitmovin_player_1.TimelineReferencePoint.End ? "live edge" : "beginning"} for live.`);
|
|
813
|
+
}
|
|
814
|
+
else {
|
|
815
|
+
source.options.startOffset = -1;
|
|
816
|
+
source.options.startOffsetTimelineReference = bitmovin_player_1.TimelineReferencePoint.Start;
|
|
817
|
+
if (sourceConfig.sourceOptions.startOffsetTimelineReference === enums_1.MKStartOffsetTimelineReference.End) {
|
|
818
|
+
this.playStart = 1;
|
|
819
|
+
common_1.MKLog.debug("Will start playback directly from beginning, play preroll ad if available and then seek to live edge!");
|
|
820
|
+
}
|
|
821
|
+
else {
|
|
822
|
+
common_1.MKLog.debug("Will start playback directly from beginning!");
|
|
823
|
+
}
|
|
824
|
+
}
|
|
825
|
+
}
|
|
826
|
+
else {
|
|
827
|
+
this.playStart = sourceConfig.sourceOptions.startOffset;
|
|
828
|
+
common_1.MKLog.debug(`Will play preroll if available else seek to offset ${this.playStart} as soon as playback starts!`);
|
|
829
|
+
}
|
|
830
|
+
}
|
|
831
|
+
else {
|
|
832
|
+
if (sourceConfig.sourceOptions.startOffset > 0) {
|
|
833
|
+
if (sourceConfig.registered !== undefined) {
|
|
834
|
+
this.playStart = sourceConfig.sourceOptions.startOffset;
|
|
835
|
+
common_1.MKLog.debug(`Will play preroll if available else seek to offset ${this.playStart} as soon as playback starts!`);
|
|
836
|
+
}
|
|
837
|
+
else {
|
|
838
|
+
source.options.startOffset = sourceConfig.sourceOptions.startOffset;
|
|
839
|
+
common_1.MKLog.debug(`Will start playback directly at offset ${sourceConfig.sourceOptions.startOffset}`);
|
|
840
|
+
}
|
|
841
|
+
}
|
|
842
|
+
else {
|
|
843
|
+
common_1.MKLog.warn(`Unsupported startOffset: ${sourceConfig.sourceOptions.startOffset} specified in sourceOptions!`);
|
|
844
|
+
}
|
|
845
|
+
}
|
|
846
|
+
}
|
|
847
|
+
}
|
|
848
|
+
if (applyDefaultStartOffset && sourceConfig.assetType === enums_1.MKAssetType.DVR) {
|
|
849
|
+
applyDefaultStartOffset = false;
|
|
850
|
+
source.options = {
|
|
851
|
+
startOffset: -1,
|
|
852
|
+
startOffsetTimelineReference: bitmovin_player_1.TimelineReferencePoint.Start
|
|
853
|
+
};
|
|
854
|
+
}
|
|
855
|
+
if (common_1.MKPlatform.isTizenTV() || common_1.MKPlatform.isOperaTV() || common_1.MKPlatform.isComcastX1()) {
|
|
856
|
+
if (sourceConfig.drm) {
|
|
857
|
+
sourceConfig.drm.immediateLicenseRequest = true;
|
|
858
|
+
}
|
|
859
|
+
}
|
|
860
|
+
common_1.MKLog.debug(`Starting playback with source: ${JSON.stringify(source, null, 4)}`);
|
|
861
|
+
return this.player.load(source, undefined, disableSeeking);
|
|
862
|
+
}
|
|
863
|
+
reload(start, sourceOptions) {
|
|
864
|
+
if (!this.sourceConfig) {
|
|
865
|
+
return Promise.reject(new Error("Invalid source configuration!"));
|
|
866
|
+
}
|
|
867
|
+
const sourceConfig = Object.assign({}, this.sourceConfig);
|
|
868
|
+
sourceConfig.sourceOptions = Object.assign({}, sourceOptions);
|
|
869
|
+
if (start !== undefined) {
|
|
870
|
+
if (!this.player.isLive()) {
|
|
871
|
+
return Promise.reject(new Error("Not a live source, start time can only be specified for live!"));
|
|
872
|
+
}
|
|
873
|
+
if (!common_1.MKUtils.isValidISODateString(start)) {
|
|
874
|
+
return Promise.reject(new Error("Invalid start date-time specified!"));
|
|
875
|
+
}
|
|
876
|
+
if (!!sourceConfig.hls) {
|
|
877
|
+
sourceConfig.hls = common_1.MKUtils.updateURLQueryParams(sourceConfig.hls, { "start": start.toLocaleUpperCase(), "end": "END" });
|
|
878
|
+
}
|
|
879
|
+
if (!!sourceConfig.dash) {
|
|
880
|
+
sourceConfig.dash = common_1.MKUtils.updateURLQueryParams(sourceConfig.dash, { "start": start.toLocaleUpperCase(), "end": "END" });
|
|
881
|
+
}
|
|
882
|
+
}
|
|
883
|
+
return this.load(sourceConfig);
|
|
884
|
+
}
|
|
885
|
+
mute(issuer) {
|
|
886
|
+
this.player.mute(issuer);
|
|
887
|
+
}
|
|
888
|
+
pause(issuer) {
|
|
889
|
+
this.player.pause(issuer);
|
|
890
|
+
}
|
|
891
|
+
play(issuer) {
|
|
892
|
+
return this.player.play(issuer);
|
|
893
|
+
}
|
|
894
|
+
preload() {
|
|
895
|
+
this.player.preload();
|
|
896
|
+
}
|
|
897
|
+
removeSubtitle(subtitleID) {
|
|
898
|
+
this.player.subtitles.remove(subtitleID);
|
|
899
|
+
}
|
|
900
|
+
seek(time, issuer) {
|
|
901
|
+
if (this.isLive()) {
|
|
902
|
+
let seekableRange = this.getSeekableRange(enums_1.MKTimeMode.RelativeTime);
|
|
903
|
+
if (time > seekableRange.end) {
|
|
904
|
+
seekableRange = this.getSeekableRange();
|
|
905
|
+
}
|
|
906
|
+
let seekOffset = time - seekableRange.end;
|
|
907
|
+
seekOffset = seekOffset < this.getMaxTimeShift() ? this.getMaxTimeShift() : seekOffset > 0 ? 0 : seekOffset;
|
|
908
|
+
this.player.timeShift(seekOffset, issuer);
|
|
909
|
+
return true;
|
|
910
|
+
}
|
|
911
|
+
else {
|
|
912
|
+
return this.player.seek(time, issuer);
|
|
913
|
+
}
|
|
914
|
+
}
|
|
915
|
+
seekToLiveEdge(issuer) {
|
|
916
|
+
if (this.isLive()) {
|
|
917
|
+
this.player.timeShift(0, issuer);
|
|
918
|
+
}
|
|
919
|
+
}
|
|
920
|
+
setAspectRatio(aspectratio) {
|
|
921
|
+
this.player.setAspectRatio(aspectratio);
|
|
922
|
+
}
|
|
923
|
+
setAudio(trackID) {
|
|
924
|
+
this.player.setAudio(trackID);
|
|
925
|
+
}
|
|
926
|
+
setHttpHeaders(headers) {
|
|
927
|
+
this.headers = headers;
|
|
928
|
+
}
|
|
929
|
+
setAudioQuality(audioQualityID) {
|
|
930
|
+
this.player.setAudioQuality(audioQualityID);
|
|
931
|
+
}
|
|
932
|
+
setLogLevel(level) {
|
|
933
|
+
this.player.setLogLevel(level);
|
|
934
|
+
}
|
|
935
|
+
setPlaybackSpeed(speed) {
|
|
936
|
+
this.player.setPlaybackSpeed(speed);
|
|
937
|
+
}
|
|
938
|
+
setPosterImage(url, keepPersistent) {
|
|
939
|
+
this.player.setPosterImage(url, keepPersistent);
|
|
940
|
+
}
|
|
941
|
+
setTargetBufferLevel(type, value, media) {
|
|
942
|
+
this.player.buffer.setTargetLevel(type, value, media);
|
|
943
|
+
}
|
|
944
|
+
setVideoElement(videoElement) {
|
|
945
|
+
this.player.setVideoElement(videoElement);
|
|
946
|
+
}
|
|
947
|
+
setVideoQuality(videoQualityID) {
|
|
948
|
+
this.player.setVideoQuality(videoQualityID);
|
|
949
|
+
}
|
|
950
|
+
setViewMode(viewMode, options) {
|
|
951
|
+
const viewModeOptions = {};
|
|
952
|
+
if (options)
|
|
953
|
+
viewModeOptions;
|
|
954
|
+
this.player.setViewMode(viewMode, viewModeOptions);
|
|
955
|
+
}
|
|
956
|
+
setVolume(volume, issuer) {
|
|
957
|
+
this.player.setVolume(volume, issuer);
|
|
958
|
+
}
|
|
959
|
+
showAirplayTargetPicker() {
|
|
960
|
+
this.player.showAirplayTargetPicker();
|
|
961
|
+
}
|
|
962
|
+
unload() {
|
|
963
|
+
var _a, _b, _c;
|
|
964
|
+
(_a = this.subtitleOverlay) === null || _a === void 0 ? void 0 : _a.disable();
|
|
965
|
+
(_b = this.subtitleOverlay) === null || _b === void 0 ? void 0 : _b.destroy();
|
|
966
|
+
this.subtitleOverlay = undefined;
|
|
967
|
+
(_c = this.playerUI) === null || _c === void 0 ? void 0 : _c.release();
|
|
968
|
+
const posters = document.querySelectorAll('.bitmovinplayer-poster');
|
|
969
|
+
posters.forEach(poster => {
|
|
970
|
+
poster.remove();
|
|
971
|
+
});
|
|
972
|
+
return this.player.unload();
|
|
973
|
+
}
|
|
974
|
+
unmute(issuer) {
|
|
975
|
+
this.player.unmute(issuer);
|
|
976
|
+
}
|
|
977
|
+
getCatchupConfig() {
|
|
978
|
+
const config = this.player.lowlatency.getCatchupConfig();
|
|
979
|
+
return config;
|
|
980
|
+
}
|
|
981
|
+
getFallbackConfig() {
|
|
982
|
+
const config = this.player.lowlatency.getFallbackConfig();
|
|
983
|
+
return config;
|
|
984
|
+
}
|
|
985
|
+
getLatency() {
|
|
986
|
+
return this.player.lowlatency.getLatency();
|
|
987
|
+
}
|
|
988
|
+
getTargetLatency() {
|
|
989
|
+
return this.player.lowlatency.getTargetLatency();
|
|
990
|
+
}
|
|
991
|
+
setCatchupConfig(config) {
|
|
992
|
+
this.player.lowlatency.setCatchupConfig(config);
|
|
993
|
+
}
|
|
994
|
+
setFallbackConfig(config) {
|
|
995
|
+
this.player.lowlatency.setFallbackConfig(config);
|
|
996
|
+
}
|
|
997
|
+
setTargetLatency(latency) {
|
|
998
|
+
this.player.lowlatency.setTargetLatency(latency);
|
|
999
|
+
}
|
|
1000
|
+
getAdQuartileOffsets(adOffset, adDuration) {
|
|
1001
|
+
let quartileOffsets = [];
|
|
1002
|
+
if (adOffset.start >= 0 && adOffset.end > 0 && adDuration > 0) {
|
|
1003
|
+
quartileOffsets.push({
|
|
1004
|
+
quartile: enums_1.MKAdQuartile.FirstQuartile,
|
|
1005
|
+
startOffset: adOffset.start + (adDuration / 4)
|
|
1006
|
+
});
|
|
1007
|
+
quartileOffsets.push({
|
|
1008
|
+
quartile: enums_1.MKAdQuartile.Midpoint,
|
|
1009
|
+
startOffset: adOffset.start + (adDuration / 2)
|
|
1010
|
+
});
|
|
1011
|
+
quartileOffsets.push({
|
|
1012
|
+
quartile: enums_1.MKAdQuartile.ThirdQuartile,
|
|
1013
|
+
startOffset: adOffset.end - (adDuration / 4)
|
|
1014
|
+
});
|
|
1015
|
+
}
|
|
1016
|
+
return quartileOffsets;
|
|
1017
|
+
}
|
|
1018
|
+
emitAdEvents(currentTime) {
|
|
1019
|
+
var _a, _b;
|
|
1020
|
+
if (this.adBreakStartedEvent && this.adStartedEvent) {
|
|
1021
|
+
let adQuartileOffsetsLength = this.adQuartileOffsets.length;
|
|
1022
|
+
while (adQuartileOffsetsLength--) {
|
|
1023
|
+
if (currentTime >= this.adQuartileOffsets[adQuartileOffsetsLength].startOffset) {
|
|
1024
|
+
const adQuartileEvent = {
|
|
1025
|
+
id: (_b = (_a = this.adStartedEvent) === null || _a === void 0 ? void 0 : _a.id) !== null && _b !== void 0 ? _b : "",
|
|
1026
|
+
quartile: this.adQuartileOffsets[adQuartileOffsetsLength].quartile,
|
|
1027
|
+
timestamp: common_1.MKUtils.getCurrentTimestamp(),
|
|
1028
|
+
type: enums_1.MKPlayerEvent.AdQuartile
|
|
1029
|
+
};
|
|
1030
|
+
this.emit(enums_1.MKPlayerEvent.AdQuartile, adQuartileEvent);
|
|
1031
|
+
this.adQuartileOffsets.splice(adQuartileOffsetsLength, 1);
|
|
1032
|
+
}
|
|
1033
|
+
}
|
|
1034
|
+
if (currentTime >= this.adBreakStartedEvent.offset.end) {
|
|
1035
|
+
if (this.adStartedEvent) {
|
|
1036
|
+
const adFinishedEvent = {
|
|
1037
|
+
id: this.adStartedEvent.id,
|
|
1038
|
+
timestamp: common_1.MKUtils.getCurrentTimestamp(),
|
|
1039
|
+
type: enums_1.MKPlayerEvent.AdFinished
|
|
1040
|
+
};
|
|
1041
|
+
this.emit(enums_1.MKPlayerEvent.AdFinished, adFinishedEvent);
|
|
1042
|
+
this.adStartedEvent = undefined;
|
|
1043
|
+
this.adQuartileOffsets = [];
|
|
1044
|
+
}
|
|
1045
|
+
const adType = this.adBreakStartedEvent.adType;
|
|
1046
|
+
const adBreakFinishedEvent = {
|
|
1047
|
+
id: this.adBreakStartedEvent.id,
|
|
1048
|
+
timestamp: common_1.MKUtils.getCurrentTimestamp(),
|
|
1049
|
+
type: enums_1.MKPlayerEvent.AdBreakFinished
|
|
1050
|
+
};
|
|
1051
|
+
this.emit(enums_1.MKPlayerEvent.AdBreakFinished, adBreakFinishedEvent);
|
|
1052
|
+
this.adBreakStartedEvent = undefined;
|
|
1053
|
+
if (adType === enums_1.MKAdType.Preroll && this.sourceConfig && this.playStart !== undefined) {
|
|
1054
|
+
if (this.sourceConfig.assetType === enums_1.MKAssetType.Live || this.sourceConfig.assetType === enums_1.MKAssetType.Event) {
|
|
1055
|
+
if (this.playStart === 1) {
|
|
1056
|
+
common_1.MKLog.debug("Will seek to live edge as preroll ended!");
|
|
1057
|
+
this.seekToLiveEdge();
|
|
1058
|
+
}
|
|
1059
|
+
else {
|
|
1060
|
+
common_1.MKLog.debug(`Will seek to given offset ${this.playStart} as preroll ended!`);
|
|
1061
|
+
this.seek(this.playStart);
|
|
1062
|
+
}
|
|
1063
|
+
}
|
|
1064
|
+
else {
|
|
1065
|
+
common_1.MKLog.debug(`Will seek to given offset ${this.playStart} as preroll ended!`);
|
|
1066
|
+
this.seek(this.playStart);
|
|
1067
|
+
}
|
|
1068
|
+
}
|
|
1069
|
+
}
|
|
1070
|
+
}
|
|
1071
|
+
}
|
|
1072
|
+
updateAdTrackingList(adUrls) {
|
|
1073
|
+
if (!!adUrls) {
|
|
1074
|
+
const urlParts = adUrls.split(" ");
|
|
1075
|
+
urlParts.forEach((urlPart) => {
|
|
1076
|
+
const trackingInfoParts = urlPart.split("|");
|
|
1077
|
+
if (trackingInfoParts.length > 1 && this.adStartedEvent) {
|
|
1078
|
+
let offset = parseFloat(trackingInfoParts[0]);
|
|
1079
|
+
if (isNaN(offset))
|
|
1080
|
+
offset = 0;
|
|
1081
|
+
const time = this.adStartedEvent.offset.start + offset;
|
|
1082
|
+
const urls = [];
|
|
1083
|
+
for (let index = 1; index < trackingInfoParts.length; index++) {
|
|
1084
|
+
urls.push(trackingInfoParts[index]);
|
|
1085
|
+
}
|
|
1086
|
+
if (urls.length > 0) {
|
|
1087
|
+
this.adTrackingList.push({
|
|
1088
|
+
time: time,
|
|
1089
|
+
urls: urls
|
|
1090
|
+
});
|
|
1091
|
+
}
|
|
1092
|
+
}
|
|
1093
|
+
});
|
|
1094
|
+
}
|
|
1095
|
+
}
|
|
1096
|
+
notifyAdTracking(currentTime) {
|
|
1097
|
+
let index = this.adTrackingList.length;
|
|
1098
|
+
while (index--) {
|
|
1099
|
+
if (currentTime >= this.adTrackingList[index].time && this.adTrackingList[index].urls.length > 0) {
|
|
1100
|
+
this.adTrackingList[index].urls.forEach((url) => {
|
|
1101
|
+
const request = new request_1.MKHttpRequest();
|
|
1102
|
+
request.get(url)
|
|
1103
|
+
.then(() => {
|
|
1104
|
+
common_1.MKLog.debug("Ad tracking beacon notified successfully.");
|
|
1105
|
+
})
|
|
1106
|
+
.catch(() => {
|
|
1107
|
+
common_1.MKLog.warn("Ad tracking beacon failed for url: ", url);
|
|
1108
|
+
});
|
|
1109
|
+
});
|
|
1110
|
+
this.adTrackingList.splice(index, 1);
|
|
1111
|
+
}
|
|
1112
|
+
}
|
|
1113
|
+
}
|
|
1114
|
+
companionXMLToJson(xmlString) {
|
|
1115
|
+
var obj = {};
|
|
1116
|
+
if (xmlString.nodeType === 1) {
|
|
1117
|
+
if (xmlString.attributes.length > 0) {
|
|
1118
|
+
for (var j = 0; j < xmlString.attributes.length; j++) {
|
|
1119
|
+
var attribute = xmlString.attributes.item(j);
|
|
1120
|
+
if (attribute.nodeName === "event") {
|
|
1121
|
+
obj['name'] = attribute.nodeValue;
|
|
1122
|
+
}
|
|
1123
|
+
else if (attribute.nodeName === "creativeType") {
|
|
1124
|
+
obj['type'] = attribute.nodeValue;
|
|
1125
|
+
}
|
|
1126
|
+
else {
|
|
1127
|
+
obj[attribute.nodeName] = attribute.nodeValue;
|
|
1128
|
+
}
|
|
1129
|
+
}
|
|
1130
|
+
}
|
|
1131
|
+
}
|
|
1132
|
+
else if ((xmlString.nodeType === 3 || xmlString.nodeType === 4) && xmlString.nodeValue.trim()) {
|
|
1133
|
+
obj = xmlString.nodeValue.trim();
|
|
1134
|
+
}
|
|
1135
|
+
if (xmlString.hasChildNodes()) {
|
|
1136
|
+
for (var i = 0; i < xmlString.childNodes.length; i++) {
|
|
1137
|
+
var item = xmlString.childNodes.item(i);
|
|
1138
|
+
if (item.nodeName === '#text')
|
|
1139
|
+
continue;
|
|
1140
|
+
var nodeName;
|
|
1141
|
+
switch (item.nodeName.toLowerCase()) {
|
|
1142
|
+
case 'companionads':
|
|
1143
|
+
nodeName = 'companionAds';
|
|
1144
|
+
break;
|
|
1145
|
+
case 'companion':
|
|
1146
|
+
nodeName = 'companion';
|
|
1147
|
+
break;
|
|
1148
|
+
case 'staticresource':
|
|
1149
|
+
nodeName = 'resource';
|
|
1150
|
+
break;
|
|
1151
|
+
case '#cdata-section':
|
|
1152
|
+
nodeName = 'url';
|
|
1153
|
+
break;
|
|
1154
|
+
case 'companionclickthrough':
|
|
1155
|
+
nodeName = 'clickThroughUrl';
|
|
1156
|
+
break;
|
|
1157
|
+
case 'trackingevents':
|
|
1158
|
+
nodeName = 'trackingEvents';
|
|
1159
|
+
break;
|
|
1160
|
+
case 'tracking':
|
|
1161
|
+
nodeName = 'tracking';
|
|
1162
|
+
break;
|
|
1163
|
+
default:
|
|
1164
|
+
nodeName = item.nodeName;
|
|
1165
|
+
break;
|
|
1166
|
+
}
|
|
1167
|
+
if (typeof (obj[nodeName]) === "undefined") {
|
|
1168
|
+
if (nodeName === 'resource') {
|
|
1169
|
+
obj[nodeName] = this.companionXMLToJson(item);
|
|
1170
|
+
}
|
|
1171
|
+
else if (nodeName === 'resource' || nodeName === 'clickThroughUrl') {
|
|
1172
|
+
obj[nodeName] = this.companionXMLToJson(item)['url'];
|
|
1173
|
+
}
|
|
1174
|
+
else if (nodeName === "tracking") {
|
|
1175
|
+
obj[nodeName] = [];
|
|
1176
|
+
obj[nodeName].push(this.companionXMLToJson(item));
|
|
1177
|
+
}
|
|
1178
|
+
else if (nodeName === 'trackingEvents') {
|
|
1179
|
+
obj[nodeName] = this.companionXMLToJson(item)['tracking'];
|
|
1180
|
+
}
|
|
1181
|
+
else if (nodeName === 'companionAds') {
|
|
1182
|
+
obj[nodeName] = this.companionXMLToJson(item)['companion'];
|
|
1183
|
+
}
|
|
1184
|
+
else if (nodeName === 'companion') {
|
|
1185
|
+
obj[nodeName] = [];
|
|
1186
|
+
obj[nodeName].push(this.companionXMLToJson(item));
|
|
1187
|
+
}
|
|
1188
|
+
else {
|
|
1189
|
+
obj[nodeName] = this.companionXMLToJson(item);
|
|
1190
|
+
}
|
|
1191
|
+
}
|
|
1192
|
+
else {
|
|
1193
|
+
if (typeof (obj[nodeName].push) === "undefined") {
|
|
1194
|
+
var old = obj[nodeName];
|
|
1195
|
+
obj[nodeName] = [];
|
|
1196
|
+
obj[nodeName].push(old);
|
|
1197
|
+
}
|
|
1198
|
+
obj[nodeName].push(this.companionXMLToJson(item));
|
|
1199
|
+
}
|
|
1200
|
+
}
|
|
1201
|
+
}
|
|
1202
|
+
return obj;
|
|
1203
|
+
}
|
|
1204
|
+
processCompanionAds(encodedCompanionAds) {
|
|
1205
|
+
if (!encodedCompanionAds) {
|
|
1206
|
+
return null;
|
|
1207
|
+
}
|
|
1208
|
+
var decodedCompanionAds;
|
|
1209
|
+
try {
|
|
1210
|
+
decodedCompanionAds = common_1.MKUtils.base64Decode(encodedCompanionAds);
|
|
1211
|
+
}
|
|
1212
|
+
catch (e) {
|
|
1213
|
+
common_1.MKLog.error(`Failed to decode the encoded companion ad string. Error: ${e}`);
|
|
1214
|
+
return null;
|
|
1215
|
+
}
|
|
1216
|
+
var parsedCompanionAds;
|
|
1217
|
+
try {
|
|
1218
|
+
parsedCompanionAds = new DOMParser().parseFromString(decodedCompanionAds, "text/xml");
|
|
1219
|
+
}
|
|
1220
|
+
catch (e) {
|
|
1221
|
+
common_1.MKLog.error(`Failed to parse companion ad xml string. Error: ${e}`);
|
|
1222
|
+
return null;
|
|
1223
|
+
}
|
|
1224
|
+
const companionAdsJSON = this.companionXMLToJson(parsedCompanionAds);
|
|
1225
|
+
return companionAdsJSON && companionAdsJSON.hasOwnProperty('companionAds') ? companionAdsJSON.companionAds : null;
|
|
1226
|
+
}
|
|
1227
|
+
getAdVerificationData(attributes) {
|
|
1228
|
+
var _a, _b, _c;
|
|
1229
|
+
var verificationData;
|
|
1230
|
+
const adVerVendor = (_a = attributes.adVerVendor) !== null && _a !== void 0 ? _a : "";
|
|
1231
|
+
const adVerJS = (_b = attributes.adVerJs) !== null && _b !== void 0 ? _b : "";
|
|
1232
|
+
const adVerParams = (_c = attributes.adVerParams) !== null && _c !== void 0 ? _c : "";
|
|
1233
|
+
if (adVerVendor && adVerJS && adVerParams) {
|
|
1234
|
+
verificationData = {
|
|
1235
|
+
adVerVendor,
|
|
1236
|
+
adVerJS,
|
|
1237
|
+
adVerParams
|
|
1238
|
+
};
|
|
1239
|
+
}
|
|
1240
|
+
return verificationData;
|
|
1241
|
+
}
|
|
1242
|
+
}
|
|
1243
|
+
exports.MKBitmovinPlayer = MKBitmovinPlayer;
|
|
1244
|
+
MKBitmovinPlayer.DEFAULT_BUFFER_CONFIG = {
|
|
1245
|
+
video: {
|
|
1246
|
+
forwardduration: 20,
|
|
1247
|
+
backwardduration: 12,
|
|
1248
|
+
},
|
|
1249
|
+
audio: {
|
|
1250
|
+
forwardduration: 20,
|
|
1251
|
+
backwardduration: 12,
|
|
1252
|
+
},
|
|
1253
|
+
};
|
|
1254
|
+
MKBitmovinPlayer.DEFAULT_PLAYBACK_CONFIG = {
|
|
1255
|
+
muted: true,
|
|
1256
|
+
autoplay: true
|
|
1257
|
+
};
|
|
1258
|
+
//# sourceMappingURL=MKBitmovinPlayer.js.map
|