@mottosports/motto-video-player 1.0.1-rc.26 → 1.0.1-rc.27
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/dist/index.js +59 -53
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +59 -53
- package/dist/index.mjs.map +1 -1
- package/package.json +1 -1
package/dist/index.mjs
CHANGED
|
@@ -1155,55 +1155,6 @@ var useShakePlayer = ({
|
|
|
1155
1155
|
if (shakaConfig) {
|
|
1156
1156
|
player.configure(shakaConfig);
|
|
1157
1157
|
}
|
|
1158
|
-
let manifestUrl = src.url;
|
|
1159
|
-
const isDRM = Boolean(src.drm);
|
|
1160
|
-
let cert = null;
|
|
1161
|
-
if (isDRM) {
|
|
1162
|
-
const isPlayReady = isPlayReadySupported();
|
|
1163
|
-
const isFairPlay = isAppleDevice();
|
|
1164
|
-
if (isAppleDevice() && src.drm.fairplay?.certificate_url) {
|
|
1165
|
-
const req = await fetch(src.drm.fairplay.certificate_url);
|
|
1166
|
-
cert = await req.arrayBuffer();
|
|
1167
|
-
manifestUrl = src.drm.fairplay.playlist_url;
|
|
1168
|
-
} else if (isPlayReady && src.drm.playready?.license_url) {
|
|
1169
|
-
manifestUrl = src.drm.playready.playlist_url;
|
|
1170
|
-
} else {
|
|
1171
|
-
manifestUrl = src.drm?.widevine?.playlist_url || "";
|
|
1172
|
-
}
|
|
1173
|
-
player.configure({
|
|
1174
|
-
drm: {
|
|
1175
|
-
servers: {
|
|
1176
|
-
"com.widevine.alpha": src.drm.widevine?.license_url,
|
|
1177
|
-
"com.microsoft.playready": src.drm.playready?.license_url,
|
|
1178
|
-
"com.apple.fps": src.drm.fairplay?.license_url
|
|
1179
|
-
},
|
|
1180
|
-
...cert && {
|
|
1181
|
-
advanced: {
|
|
1182
|
-
"com.apple.fps": {
|
|
1183
|
-
serverCertificate: new Uint8Array(cert)
|
|
1184
|
-
}
|
|
1185
|
-
}
|
|
1186
|
-
}
|
|
1187
|
-
}
|
|
1188
|
-
});
|
|
1189
|
-
const netEngine = player.getNetworkingEngine();
|
|
1190
|
-
if (netEngine) {
|
|
1191
|
-
netEngine.registerRequestFilter((type, request) => {
|
|
1192
|
-
if (type === shaka.net.NetworkingEngine.RequestType.LICENSE) {
|
|
1193
|
-
request.headers["x-dt-custom-data"] = src.drm.token;
|
|
1194
|
-
}
|
|
1195
|
-
});
|
|
1196
|
-
netEngine.registerResponseFilter((type, response) => {
|
|
1197
|
-
if (type === shaka.net.NetworkingEngine.RequestType.LICENSE) {
|
|
1198
|
-
const ks = player.keySystem && player.keySystem();
|
|
1199
|
-
if (ks === "com.apple.fps") {
|
|
1200
|
-
const responseText = shaka.util.StringUtils.fromUTF8(response.data);
|
|
1201
|
-
response.data = shaka.util.Uint8ArrayUtils.fromBase64(responseText).buffer;
|
|
1202
|
-
}
|
|
1203
|
-
}
|
|
1204
|
-
});
|
|
1205
|
-
}
|
|
1206
|
-
}
|
|
1207
1158
|
player?.addEventListener("error", (event) => {
|
|
1208
1159
|
const error = event.detail;
|
|
1209
1160
|
if (error?.code === 7e3) {
|
|
@@ -1212,7 +1163,6 @@ var useShakePlayer = ({
|
|
|
1212
1163
|
console.error("Shaka Player Error:", error);
|
|
1213
1164
|
onError?.(new Error(`Shaka Player Error: ${error.message || "Unknown error"}`));
|
|
1214
1165
|
});
|
|
1215
|
-
await player.load(manifestUrl);
|
|
1216
1166
|
onPlayerReady?.(player);
|
|
1217
1167
|
return player;
|
|
1218
1168
|
} catch (error) {
|
|
@@ -1224,6 +1174,60 @@ var useShakePlayer = ({
|
|
|
1224
1174
|
throw error;
|
|
1225
1175
|
}
|
|
1226
1176
|
}, [shakaConfig, drmConfig, src, onError, onPlayerReady]);
|
|
1177
|
+
const loadSource = useCallback(async () => {
|
|
1178
|
+
const player = playerRef.current;
|
|
1179
|
+
if (!player) return;
|
|
1180
|
+
let manifestUrl = src.url;
|
|
1181
|
+
const isDRM = Boolean(src.drm);
|
|
1182
|
+
let cert = null;
|
|
1183
|
+
if (isDRM) {
|
|
1184
|
+
const isPlayReady = isPlayReadySupported();
|
|
1185
|
+
const isFairPlay = isAppleDevice();
|
|
1186
|
+
if (isFairPlay && src.drm.fairplay?.certificate_url) {
|
|
1187
|
+
const req = await fetch(src.drm.fairplay.certificate_url);
|
|
1188
|
+
cert = await req.arrayBuffer();
|
|
1189
|
+
manifestUrl = src.drm.fairplay.playlist_url;
|
|
1190
|
+
} else if (isPlayReady && src.drm.playready?.license_url) {
|
|
1191
|
+
manifestUrl = src.drm.playready.playlist_url;
|
|
1192
|
+
} else {
|
|
1193
|
+
manifestUrl = src.drm?.widevine?.playlist_url || "";
|
|
1194
|
+
}
|
|
1195
|
+
player.configure({
|
|
1196
|
+
drm: {
|
|
1197
|
+
servers: {
|
|
1198
|
+
"com.widevine.alpha": src.drm.widevine?.license_url,
|
|
1199
|
+
"com.microsoft.playready": src.drm.playready?.license_url,
|
|
1200
|
+
"com.apple.fps": src.drm.fairplay?.license_url
|
|
1201
|
+
},
|
|
1202
|
+
...cert && {
|
|
1203
|
+
advanced: {
|
|
1204
|
+
"com.apple.fps": {
|
|
1205
|
+
serverCertificate: new Uint8Array(cert)
|
|
1206
|
+
}
|
|
1207
|
+
}
|
|
1208
|
+
}
|
|
1209
|
+
}
|
|
1210
|
+
});
|
|
1211
|
+
const netEngine = player.getNetworkingEngine();
|
|
1212
|
+
if (netEngine) {
|
|
1213
|
+
netEngine.registerRequestFilter((type, request) => {
|
|
1214
|
+
if (type === shaka.net.NetworkingEngine.RequestType.LICENSE) {
|
|
1215
|
+
request.headers["x-dt-custom-data"] = src.drm.token;
|
|
1216
|
+
}
|
|
1217
|
+
});
|
|
1218
|
+
netEngine.registerResponseFilter((type, response) => {
|
|
1219
|
+
if (type === shaka.net.NetworkingEngine.RequestType.LICENSE) {
|
|
1220
|
+
const ks = player.keySystem && player.keySystem();
|
|
1221
|
+
if (ks === "com.apple.fps") {
|
|
1222
|
+
const responseText = shaka.util.StringUtils.fromUTF8(response.data);
|
|
1223
|
+
response.data = shaka.util.Uint8ArrayUtils.fromBase64(responseText).buffer;
|
|
1224
|
+
}
|
|
1225
|
+
}
|
|
1226
|
+
});
|
|
1227
|
+
}
|
|
1228
|
+
}
|
|
1229
|
+
await player.load(manifestUrl);
|
|
1230
|
+
}, [src]);
|
|
1227
1231
|
const destroyPlayer = useCallback(async () => {
|
|
1228
1232
|
if (playerRef.current) {
|
|
1229
1233
|
try {
|
|
@@ -1238,6 +1242,7 @@ var useShakePlayer = ({
|
|
|
1238
1242
|
return {
|
|
1239
1243
|
playerRef,
|
|
1240
1244
|
initializePlayer,
|
|
1245
|
+
loadSource,
|
|
1241
1246
|
destroyPlayer
|
|
1242
1247
|
};
|
|
1243
1248
|
};
|
|
@@ -1362,7 +1367,7 @@ import initShakaPlayerMux from "@mux/mux-data-shakaplayer";
|
|
|
1362
1367
|
import shaka2 from "shaka-player/dist/shaka-player.ui";
|
|
1363
1368
|
|
|
1364
1369
|
// package.json
|
|
1365
|
-
var version = "1.0.1-rc.
|
|
1370
|
+
var version = "1.0.1-rc.27";
|
|
1366
1371
|
|
|
1367
1372
|
// src/hooks/useMuxAnalytics.ts
|
|
1368
1373
|
var useMuxAnalytics = (playerRef, muxConfig, onMuxReady, onMuxDataUpdate) => {
|
|
@@ -3267,7 +3272,7 @@ var Player = forwardRef(
|
|
|
3267
3272
|
const containerRef = useRef8(null);
|
|
3268
3273
|
const adContainerRef = useRef8(null);
|
|
3269
3274
|
useImperativeHandle(ref, () => videoRef.current, []);
|
|
3270
|
-
const { playerRef, initializePlayer, destroyPlayer } = useShakePlayer({
|
|
3275
|
+
const { playerRef, initializePlayer, loadSource, destroyPlayer } = useShakePlayer({
|
|
3271
3276
|
src,
|
|
3272
3277
|
shakaConfig,
|
|
3273
3278
|
drmConfig,
|
|
@@ -3375,11 +3380,12 @@ var Player = forwardRef(
|
|
|
3375
3380
|
const initialize = async () => {
|
|
3376
3381
|
try {
|
|
3377
3382
|
await initializePlayer(video);
|
|
3383
|
+
initializeMux();
|
|
3384
|
+
await loadSource();
|
|
3378
3385
|
setupEventListeners();
|
|
3379
3386
|
const cleanupQuality = setupQualityTracking();
|
|
3380
3387
|
configureQuality();
|
|
3381
3388
|
await initializeUI();
|
|
3382
|
-
initializeMux();
|
|
3383
3389
|
initializeAds();
|
|
3384
3390
|
initializeChromecast();
|
|
3385
3391
|
} catch (error) {
|