cloudinary-video-player 2.3.4-edge.5 → 2.3.4-edge.6
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/cld-video-player.js +103 -35
- package/dist/cld-video-player.light.js +100 -32
- package/dist/cld-video-player.light.min.js +1 -1
- package/dist/cld-video-player.min.js +1 -1
- package/lib/all.js +1 -1
- package/lib/cld-video-player.js +1 -1
- package/lib/light/index.js +1 -1
- package/lib/player.js +1 -1
- package/lib/videoPlayer.js +1 -1
- package/package.json +1 -1
package/dist/cld-video-player.js
CHANGED
|
@@ -9384,7 +9384,7 @@ class CloudinaryAnalytics {
|
|
|
9384
9384
|
this.cloudinaryAnalytics.startManualTracking(metadata, {
|
|
9385
9385
|
...(lodash_isPlainObject__WEBPACK_IMPORTED_MODULE_1___default()(this.analyticsOptions) ? this.analyticsOptions : {}),
|
|
9386
9386
|
videoPlayerType: 'cloudinary video player',
|
|
9387
|
-
videoPlayerVersion: "2.3.4-edge.
|
|
9387
|
+
videoPlayerVersion: "2.3.4-edge.6"
|
|
9388
9388
|
});
|
|
9389
9389
|
} else if (this.currentVideMetadata.cloudName !== metadata.cloudName || this.currentVideMetadata.publicId !== metadata.publicId) {
|
|
9390
9390
|
this.cloudinaryAnalytics.stopManualTracking();
|
|
@@ -9757,7 +9757,7 @@ class CloudinaryContext {
|
|
|
9757
9757
|
options.sourceTypes = options.sourceTypes || _this.sourceTypes();
|
|
9758
9758
|
options.poster = options.poster || posterOptionsForCurrent();
|
|
9759
9759
|
options.queryParams = Object.assign(options.queryParams || {}, options.usageReport ? {
|
|
9760
|
-
_s: `vp-${"2.3.4-edge.
|
|
9760
|
+
_s: `vp-${"2.3.4-edge.6"}`
|
|
9761
9761
|
} : {});
|
|
9762
9762
|
if (options.sourceTypes.indexOf('audio') > -1) {
|
|
9763
9763
|
builtSrc = new _models_audio_source_audio_source__WEBPACK_IMPORTED_MODULE_7__["default"](publicId, options);
|
|
@@ -11012,7 +11012,7 @@ const contextMenuContent = player => {
|
|
|
11012
11012
|
const isFullscreen = player.isFullscreen();
|
|
11013
11013
|
const aboutMenuItem = {
|
|
11014
11014
|
class: 'player-version',
|
|
11015
|
-
label: 'Cloudinary Player v' + "2.3.4-edge.
|
|
11015
|
+
label: 'Cloudinary Player v' + "2.3.4-edge.6"
|
|
11016
11016
|
};
|
|
11017
11017
|
if (!player.controls()) {
|
|
11018
11018
|
return [aboutMenuItem];
|
|
@@ -13217,6 +13217,7 @@ const getAnalyticsFromPlayerOptions = playerOptions => filterDefaultsAndNulls({
|
|
|
13217
13217
|
width: playerOptions.width,
|
|
13218
13218
|
withCredentials: playerOptions.withCredentials,
|
|
13219
13219
|
debug: playerOptions.debug,
|
|
13220
|
+
type: playerOptions.type,
|
|
13220
13221
|
colors: playerOptions.colors && JSON.stringify(playerOptions.colors),
|
|
13221
13222
|
controlBar: JSON.stringify(playerOptions.controlBar) !== JSON.stringify(config_defaults__WEBPACK_IMPORTED_MODULE_0__["default"].controlBar) && JSON.stringify(playerOptions.controlBar),
|
|
13222
13223
|
...getCloudinaryOptions(playerOptions.cloudinary),
|
|
@@ -13448,6 +13449,41 @@ function sliceAndUnsetProperties(obj) {
|
|
|
13448
13449
|
}
|
|
13449
13450
|
|
|
13450
13451
|
|
|
13452
|
+
/***/ }),
|
|
13453
|
+
|
|
13454
|
+
/***/ "./utils/video-retry.js":
|
|
13455
|
+
/*!******************************!*\
|
|
13456
|
+
!*** ./utils/video-retry.js ***!
|
|
13457
|
+
\******************************/
|
|
13458
|
+
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
|
|
13459
|
+
|
|
13460
|
+
"use strict";
|
|
13461
|
+
__webpack_require__.r(__webpack_exports__);
|
|
13462
|
+
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
|
|
13463
|
+
/* harmony export */ checkIfVideoIsAvailable: () => (/* binding */ checkIfVideoIsAvailable),
|
|
13464
|
+
/* harmony export */ isVideoInReadyState: () => (/* binding */ isVideoInReadyState)
|
|
13465
|
+
/* harmony export */ });
|
|
13466
|
+
const checkIfVideoIsAvailable = function (videoUrl) {
|
|
13467
|
+
let videoType = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 'default';
|
|
13468
|
+
return new Promise((resolve, reject) => {
|
|
13469
|
+
const tempVideo = document.createElement('video');
|
|
13470
|
+
tempVideo.setAttribute('crossorigin', 'anonymous');
|
|
13471
|
+
const targetEvent = videoType === 'live' ? 'onprogress' : 'canplay';
|
|
13472
|
+
tempVideo[targetEvent] = () => {
|
|
13473
|
+
tempVideo.onerror = null;
|
|
13474
|
+
tempVideo[targetEvent] = null;
|
|
13475
|
+
resolve();
|
|
13476
|
+
};
|
|
13477
|
+
tempVideo.onerror = () => reject();
|
|
13478
|
+
tempVideo.src = videoUrl;
|
|
13479
|
+
tempVideo.load();
|
|
13480
|
+
});
|
|
13481
|
+
};
|
|
13482
|
+
const isVideoInReadyState = readyState => {
|
|
13483
|
+
return readyState >= (/iPad|iPhone|iPod/.test(navigator.userAgent) ? 1 : 4);
|
|
13484
|
+
};
|
|
13485
|
+
|
|
13486
|
+
|
|
13451
13487
|
/***/ }),
|
|
13452
13488
|
|
|
13453
13489
|
/***/ "./validators/validators-functions.js":
|
|
@@ -13566,7 +13602,7 @@ __webpack_require__.r(__webpack_exports__);
|
|
|
13566
13602
|
/* harmony import */ var video_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(video_js__WEBPACK_IMPORTED_MODULE_0__);
|
|
13567
13603
|
|
|
13568
13604
|
const CLOUDINARY_PARAMS = ['cloudinaryConfig', 'transformation', 'sourceTypes', 'sourceTransformation', 'posterOptions', 'autoShowRecommendations', 'fontFace', 'secure'];
|
|
13569
|
-
const PLAYER_PARAMS = CLOUDINARY_PARAMS.concat(['_internalAnalyticsMetadata', 'debug', 'publicId', 'source', 'autoplayMode', 'playedEventPercents', 'playedEventTimes', 'analytics', 'cloudinaryAnalytics', 'allowUsageReport', 'fluid', 'ima', 'playlistWidget', 'hideContextMenu', 'colors', 'floatingWhenNotVisible', 'ads', 'showJumpControls', 'chaptersButton', 'pictureInPictureToggle', 'textTracks', 'qualitySelector', 'fetchErrorUsingGet', 'withCredentials', 'seekThumbnails', 'aiHighlightsGraph', 'chapters', 'queryParams']);
|
|
13605
|
+
const PLAYER_PARAMS = CLOUDINARY_PARAMS.concat(['_internalAnalyticsMetadata', 'debug', 'publicId', 'source', 'autoplayMode', 'playedEventPercents', 'playedEventTimes', 'analytics', 'cloudinaryAnalytics', 'allowUsageReport', 'fluid', 'ima', 'playlistWidget', 'hideContextMenu', 'colors', 'floatingWhenNotVisible', 'ads', 'showJumpControls', 'chaptersButton', 'pictureInPictureToggle', 'textTracks', 'qualitySelector', 'fetchErrorUsingGet', 'withCredentials', 'seekThumbnails', 'aiHighlightsGraph', 'chapters', 'queryParams', 'type']);
|
|
13570
13606
|
const CLOUDINARY_CONFIG_PARAM = ['cloud_name', 'secure', 'private_cdn', 'secure_distribution', 'cdn_subdomain', 'secure_cdn_subdomain', 'cname', 'shorten', 'sign_url', 'api_secret', 'url_suffix', 'use_root_path', 'auth_token'];
|
|
13571
13607
|
const DEFAULT_HLS_OPTIONS = {
|
|
13572
13608
|
html5: {
|
|
@@ -13612,7 +13648,7 @@ __webpack_require__.r(__webpack_exports__);
|
|
|
13612
13648
|
/* harmony export */ });
|
|
13613
13649
|
/* harmony import */ var video_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! video.js */ "../node_modules/video.js/dist/video.es-exposed.js");
|
|
13614
13650
|
/* harmony import */ var video_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(video_js__WEBPACK_IMPORTED_MODULE_0__);
|
|
13615
|
-
/* harmony import */ var
|
|
13651
|
+
/* harmony import */ var uuid__WEBPACK_IMPORTED_MODULE_22__ = __webpack_require__(/*! uuid */ "../node_modules/uuid/dist/esm-browser/v4.js");
|
|
13616
13652
|
/* harmony import */ var lodash_isEmpty__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! lodash/isEmpty */ "../node_modules/lodash/isEmpty.js");
|
|
13617
13653
|
/* harmony import */ var lodash_isEmpty__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(lodash_isEmpty__WEBPACK_IMPORTED_MODULE_1__);
|
|
13618
13654
|
/* harmony import */ var lodash_get__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! lodash/get */ "../node_modules/lodash/get.js");
|
|
@@ -13638,7 +13674,9 @@ __webpack_require__.r(__webpack_exports__);
|
|
|
13638
13674
|
/* harmony import */ var _utils_consts__WEBPACK_IMPORTED_MODULE_17__ = __webpack_require__(/*! ./utils/consts */ "./utils/consts.js");
|
|
13639
13675
|
/* harmony import */ var _utils_get_analytics_player_options__WEBPACK_IMPORTED_MODULE_18__ = __webpack_require__(/*! ./utils/get-analytics-player-options */ "./utils/get-analytics-player-options.js");
|
|
13640
13676
|
/* harmony import */ var _plugins_cloudinary_common__WEBPACK_IMPORTED_MODULE_19__ = __webpack_require__(/*! ./plugins/cloudinary/common */ "./plugins/cloudinary/common.js");
|
|
13641
|
-
/* harmony import */ var
|
|
13677
|
+
/* harmony import */ var _utils_video_retry__WEBPACK_IMPORTED_MODULE_20__ = __webpack_require__(/*! ./utils/video-retry */ "./utils/video-retry.js");
|
|
13678
|
+
/* harmony import */ var _components_qualitySelector_qualitySelector_js__WEBPACK_IMPORTED_MODULE_21__ = __webpack_require__(/*! ./components/qualitySelector/qualitySelector.js */ "./components/qualitySelector/qualitySelector.js");
|
|
13679
|
+
|
|
13642
13680
|
|
|
13643
13681
|
|
|
13644
13682
|
|
|
@@ -13665,6 +13703,7 @@ __webpack_require__.r(__webpack_exports__);
|
|
|
13665
13703
|
// #endif
|
|
13666
13704
|
|
|
13667
13705
|
const INTERNAL_ANALYTICS_URL = 'https://analytics-api-s.cloudinary.com';
|
|
13706
|
+
const RETRY_DEFAULT_TIMEOUT = 5 * 1000;
|
|
13668
13707
|
|
|
13669
13708
|
// Register all plugins
|
|
13670
13709
|
Object.keys(_plugins__WEBPACK_IMPORTED_MODULE_8__["default"]).forEach(key => {
|
|
@@ -13684,7 +13723,6 @@ class VideoPlayer extends _utils__WEBPACK_IMPORTED_MODULE_9__["default"].mixin(_
|
|
|
13684
13723
|
}
|
|
13685
13724
|
constructor(elem, initOptions, ready) {
|
|
13686
13725
|
super();
|
|
13687
|
-
this.nbCalls = 0;
|
|
13688
13726
|
this.videoElement = (0,_video_player_utils__WEBPACK_IMPORTED_MODULE_14__.getResolveVideoElement)(elem);
|
|
13689
13727
|
this.options = (0,_video_player_utils__WEBPACK_IMPORTED_MODULE_14__.extractOptions)(this.videoElement, initOptions);
|
|
13690
13728
|
this._videojsOptions = this.options.videojsOptions;
|
|
@@ -13725,7 +13763,7 @@ class VideoPlayer extends _utils__WEBPACK_IMPORTED_MODULE_9__["default"].mixin(_
|
|
|
13725
13763
|
}
|
|
13726
13764
|
getVPInstanceId() {
|
|
13727
13765
|
if (!this.vpInstanceId) {
|
|
13728
|
-
this.vpInstanceId = (0,
|
|
13766
|
+
this.vpInstanceId = (0,uuid__WEBPACK_IMPORTED_MODULE_22__["default"])();
|
|
13729
13767
|
}
|
|
13730
13768
|
return this.vpInstanceId;
|
|
13731
13769
|
}
|
|
@@ -13740,7 +13778,7 @@ class VideoPlayer extends _utils__WEBPACK_IMPORTED_MODULE_9__["default"].mixin(_
|
|
|
13740
13778
|
const analyticsData = (0,_utils_get_analytics_player_options__WEBPACK_IMPORTED_MODULE_18__.getAnalyticsFromPlayerOptions)(options);
|
|
13741
13779
|
const analyticsParams = new URLSearchParams(analyticsData).toString();
|
|
13742
13780
|
const baseParams = new URLSearchParams({
|
|
13743
|
-
vpVersion: "2.3.4-edge.
|
|
13781
|
+
vpVersion: "2.3.4-edge.6",
|
|
13744
13782
|
vpInstanceId: this.getVPInstanceId(),
|
|
13745
13783
|
// #if (process.env.WEBPACK_BUILD_LIGHT)
|
|
13746
13784
|
// vpLightBuild: true,
|
|
@@ -13753,8 +13791,9 @@ class VideoPlayer extends _utils__WEBPACK_IMPORTED_MODULE_9__["default"].mixin(_
|
|
|
13753
13791
|
console.warn(err);
|
|
13754
13792
|
}
|
|
13755
13793
|
}
|
|
13756
|
-
|
|
13757
|
-
this.
|
|
13794
|
+
_resetReTryVideoState = () => {
|
|
13795
|
+
this.reTryVideoStateRetriesCount = 0;
|
|
13796
|
+
this.videojs.clearTimeout(this.reTryVideoStateTimeoutId);
|
|
13758
13797
|
};
|
|
13759
13798
|
_setVideoJsListeners(ready) {
|
|
13760
13799
|
this.videojs.on(_utils_consts__WEBPACK_IMPORTED_MODULE_17__.PLAYER_EVENT.ERROR, () => {
|
|
@@ -13764,27 +13803,35 @@ class VideoPlayer extends _utils__WEBPACK_IMPORTED_MODULE_9__["default"].mixin(_
|
|
|
13764
13803
|
|
|
13765
13804
|
/*
|
|
13766
13805
|
error codes :
|
|
13767
|
-
|
|
13768
|
-
|
|
13806
|
+
3 - media playback was aborted due to a corruption problem
|
|
13807
|
+
4 - media error, media source not supported
|
|
13769
13808
|
*/
|
|
13770
13809
|
const isCorrupted = error.code === 3 && (video_js__WEBPACK_IMPORTED_MODULE_0___default().browser).IS_SAFARI;
|
|
13771
13810
|
if ([isCorrupted, error.code === 4].includes(true) && [_utils_consts__WEBPACK_IMPORTED_MODULE_17__.SOURCE_TYPE.AUDIO, _utils_consts__WEBPACK_IMPORTED_MODULE_17__.SOURCE_TYPE.VIDEO].includes(type)) {
|
|
13772
|
-
this.
|
|
13773
|
-
|
|
13811
|
+
if (this.isLiveStream) {
|
|
13812
|
+
this.videojs.error({
|
|
13813
|
+
code: _plugins_cloudinary_common__WEBPACK_IMPORTED_MODULE_19__.ERROR_CODE.CUSTOM,
|
|
13814
|
+
message: 'Live Stream not started'
|
|
13815
|
+
});
|
|
13816
|
+
this.reloadVideoUntilAvailable();
|
|
13817
|
+
} else {
|
|
13818
|
+
this.videojs.error(null);
|
|
13819
|
+
_utils__WEBPACK_IMPORTED_MODULE_9__["default"].handleCldError(this, this.playerOptions);
|
|
13820
|
+
}
|
|
13774
13821
|
} else {
|
|
13775
|
-
this.
|
|
13822
|
+
this._resetReTryVideoState();
|
|
13776
13823
|
}
|
|
13777
13824
|
}
|
|
13778
13825
|
});
|
|
13779
13826
|
this.videojs.tech_.on(_utils_consts__WEBPACK_IMPORTED_MODULE_17__.PLAYER_EVENT.RETRY_PLAYLIST, () => {
|
|
13780
13827
|
const mediaRequestsErrored = lodash_get__WEBPACK_IMPORTED_MODULE_2___default()(this.videojs, 'hls.stats.mediaRequestsErrored', 0);
|
|
13781
13828
|
if (mediaRequestsErrored > 0) {
|
|
13782
|
-
this.
|
|
13829
|
+
this._resetReTryVideoState();
|
|
13783
13830
|
_utils__WEBPACK_IMPORTED_MODULE_9__["default"].handleCldError(this, this.playerOptions);
|
|
13784
13831
|
}
|
|
13785
13832
|
});
|
|
13786
|
-
this.videojs.on(_utils_consts__WEBPACK_IMPORTED_MODULE_17__.PLAYER_EVENT.PLAY, this.
|
|
13787
|
-
this.videojs.on(_utils_consts__WEBPACK_IMPORTED_MODULE_17__.PLAYER_EVENT.CAN_PLAY_THROUGH, this.
|
|
13833
|
+
this.videojs.on(_utils_consts__WEBPACK_IMPORTED_MODULE_17__.PLAYER_EVENT.PLAY, this._resetReTryVideoState);
|
|
13834
|
+
this.videojs.on(_utils_consts__WEBPACK_IMPORTED_MODULE_17__.PLAYER_EVENT.CAN_PLAY_THROUGH, this._resetReTryVideoState);
|
|
13788
13835
|
this.videojs.on(_utils_consts__WEBPACK_IMPORTED_MODULE_17__.PLAYER_EVENT.CLD_SOURCE_CHANGED, this._onSourceChange.bind(this));
|
|
13789
13836
|
this.videojs.ready(() => {
|
|
13790
13837
|
this._onReady();
|
|
@@ -13950,12 +13997,12 @@ class VideoPlayer extends _utils__WEBPACK_IMPORTED_MODULE_9__["default"].mixin(_
|
|
|
13950
13997
|
default: 'auto'
|
|
13951
13998
|
});
|
|
13952
13999
|
this.videojs.on(_utils_consts__WEBPACK_IMPORTED_MODULE_17__.PLAYER_EVENT.LOADED_METADATA, () => {
|
|
13953
|
-
|
|
14000
|
+
_components_qualitySelector_qualitySelector_js__WEBPACK_IMPORTED_MODULE_21__["default"].init(this.videojs);
|
|
13954
14001
|
});
|
|
13955
14002
|
|
|
13956
14003
|
// Show only if more than one option available
|
|
13957
14004
|
this.videojs.on(_utils_consts__WEBPACK_IMPORTED_MODULE_17__.PLAYER_EVENT.LOADED_DATA, () => {
|
|
13958
|
-
|
|
14005
|
+
_components_qualitySelector_qualitySelector_js__WEBPACK_IMPORTED_MODULE_21__["default"].setVisibility(this.videojs);
|
|
13959
14006
|
});
|
|
13960
14007
|
}
|
|
13961
14008
|
}
|
|
@@ -14016,24 +14063,43 @@ class VideoPlayer extends _utils__WEBPACK_IMPORTED_MODULE_9__["default"].mixin(_
|
|
|
14016
14063
|
this.videojs.cloudinaryAnalytics(options);
|
|
14017
14064
|
}
|
|
14018
14065
|
}
|
|
14019
|
-
|
|
14020
|
-
|
|
14021
|
-
|
|
14022
|
-
|
|
14023
|
-
|
|
14066
|
+
reTryVideoStateUntilAvailable() {
|
|
14067
|
+
let maxNumberOfCalls = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : Number.POSITIVE_INFINITY;
|
|
14068
|
+
let timeout = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : RETRY_DEFAULT_TIMEOUT;
|
|
14069
|
+
if (typeof this.reTryVideoStateRetriesCount !== 'number') {
|
|
14070
|
+
this.reTryVideoStateRetriesCount = 0;
|
|
14071
|
+
}
|
|
14072
|
+
if (!(0,_utils_video_retry__WEBPACK_IMPORTED_MODULE_20__.isVideoInReadyState)(this.videojs.readyState())) {
|
|
14073
|
+
if (this.reTryVideoStateRetriesCount < maxNumberOfCalls) {
|
|
14074
|
+
this.reTryVideoStateRetriesCount++;
|
|
14075
|
+
this.reTryVideoStateTimeoutId = this.videojs.setTimeout(() => this.reTryVideoStateUntilAvailable(maxNumberOfCalls, timeout), timeout);
|
|
14024
14076
|
} else {
|
|
14025
14077
|
let e = new Error('Video is not ready please try later');
|
|
14026
14078
|
this.videojs.trigger('error', e);
|
|
14027
14079
|
}
|
|
14080
|
+
} else {
|
|
14081
|
+
this.reTryVideoStateRetriesCount = 0;
|
|
14028
14082
|
}
|
|
14029
14083
|
}
|
|
14030
|
-
|
|
14031
|
-
|
|
14032
|
-
|
|
14033
|
-
|
|
14034
|
-
|
|
14084
|
+
_resetReloadVideo = () => {
|
|
14085
|
+
this.reloadVideoRetriesCount = 0;
|
|
14086
|
+
this.videojs.clearTimeout(this.reloadVideoTimeoutId);
|
|
14087
|
+
};
|
|
14088
|
+
reloadVideoUntilAvailable() {
|
|
14089
|
+
let maxNumberOfCalls = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : Number.POSITIVE_INFINITY;
|
|
14090
|
+
let timeout = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : RETRY_DEFAULT_TIMEOUT;
|
|
14091
|
+
if (typeof this.reloadVideoRetriesCount !== 'number') {
|
|
14092
|
+
this.reloadVideoRetriesCount = 0;
|
|
14093
|
+
}
|
|
14094
|
+
if (this.reloadVideoRetriesCount < maxNumberOfCalls) {
|
|
14095
|
+
this.reloadVideoRetriesCount++;
|
|
14096
|
+
this.reloadVideoTimeoutId = this.videojs.setTimeout(() => {
|
|
14097
|
+
const videoUrl = this.currentSourceUrl();
|
|
14098
|
+
(0,_utils_video_retry__WEBPACK_IMPORTED_MODULE_20__.checkIfVideoIsAvailable)(videoUrl, this.isLiveStream ? 'live' : 'default').then(() => this.source(videoUrl)).catch(() => this.reloadVideoUntilAvailable(maxNumberOfCalls, timeout));
|
|
14099
|
+
}, timeout);
|
|
14100
|
+
} else {
|
|
14101
|
+
this.videojs.trigger('error', new Error('Sorry, we could not load your video'));
|
|
14035
14102
|
}
|
|
14036
|
-
return false;
|
|
14037
14103
|
}
|
|
14038
14104
|
_initAutoplay() {
|
|
14039
14105
|
const autoplayMode = this.playerOptions.autoplayMode;
|
|
@@ -14069,6 +14135,7 @@ class VideoPlayer extends _utils__WEBPACK_IMPORTED_MODULE_9__["default"].mixin(_
|
|
|
14069
14135
|
}
|
|
14070
14136
|
_onSourceChange(e, _ref5) {
|
|
14071
14137
|
let {
|
|
14138
|
+
source,
|
|
14072
14139
|
sourceOptions
|
|
14073
14140
|
} = _ref5;
|
|
14074
14141
|
this._sendInternalAnalytics({
|
|
@@ -14079,6 +14146,7 @@ class VideoPlayer extends _utils__WEBPACK_IMPORTED_MODULE_9__["default"].mixin(_
|
|
|
14079
14146
|
// #if (!process.env.WEBPACK_BUILD_LIGHT)
|
|
14080
14147
|
this._initQualitySelector();
|
|
14081
14148
|
// #endif
|
|
14149
|
+
this.isLiveStream = source.resourceConfig().type === 'live';
|
|
14082
14150
|
}
|
|
14083
14151
|
_setExtendedEvents() {
|
|
14084
14152
|
const events = [];
|
|
@@ -14148,11 +14216,11 @@ class VideoPlayer extends _utils__WEBPACK_IMPORTED_MODULE_9__["default"].mixin(_
|
|
|
14148
14216
|
if (this.playerOptions.withCredentials) {
|
|
14149
14217
|
options.withCredentials = true;
|
|
14150
14218
|
}
|
|
14151
|
-
|
|
14152
|
-
this.
|
|
14219
|
+
this._resetReloadVideo();
|
|
14220
|
+
this._resetReTryVideoState();
|
|
14153
14221
|
const maxTries = this.videojs.options_.maxTries || 3;
|
|
14154
14222
|
const videoReadyTimeout = this.videojs.options_.videoTimeout || 55000;
|
|
14155
|
-
this.
|
|
14223
|
+
this.reTryVideoStateUntilAvailable(maxTries, videoReadyTimeout);
|
|
14156
14224
|
return this.videojs.cloudinary.source(publicId, options);
|
|
14157
14225
|
}
|
|
14158
14226
|
posterOptions(options) {
|
|
@@ -1413,7 +1413,7 @@ class CloudinaryAnalytics {
|
|
|
1413
1413
|
this.cloudinaryAnalytics.startManualTracking(metadata, {
|
|
1414
1414
|
...(lodash_isPlainObject__WEBPACK_IMPORTED_MODULE_1___default()(this.analyticsOptions) ? this.analyticsOptions : {}),
|
|
1415
1415
|
videoPlayerType: 'cloudinary video player',
|
|
1416
|
-
videoPlayerVersion: "2.3.4-edge.
|
|
1416
|
+
videoPlayerVersion: "2.3.4-edge.6"
|
|
1417
1417
|
});
|
|
1418
1418
|
} else if (this.currentVideMetadata.cloudName !== metadata.cloudName || this.currentVideMetadata.publicId !== metadata.publicId) {
|
|
1419
1419
|
this.cloudinaryAnalytics.stopManualTracking();
|
|
@@ -1786,7 +1786,7 @@ class CloudinaryContext {
|
|
|
1786
1786
|
options.sourceTypes = options.sourceTypes || _this.sourceTypes();
|
|
1787
1787
|
options.poster = options.poster || posterOptionsForCurrent();
|
|
1788
1788
|
options.queryParams = Object.assign(options.queryParams || {}, options.usageReport ? {
|
|
1789
|
-
_s: `vp-${"2.3.4-edge.
|
|
1789
|
+
_s: `vp-${"2.3.4-edge.6"}`
|
|
1790
1790
|
} : {});
|
|
1791
1791
|
if (options.sourceTypes.indexOf('audio') > -1) {
|
|
1792
1792
|
builtSrc = new _models_audio_source_audio_source__WEBPACK_IMPORTED_MODULE_7__["default"](publicId, options);
|
|
@@ -3041,7 +3041,7 @@ const contextMenuContent = player => {
|
|
|
3041
3041
|
const isFullscreen = player.isFullscreen();
|
|
3042
3042
|
const aboutMenuItem = {
|
|
3043
3043
|
class: 'player-version',
|
|
3044
|
-
label: 'Cloudinary Player v' + "2.3.4-edge.
|
|
3044
|
+
label: 'Cloudinary Player v' + "2.3.4-edge.6"
|
|
3045
3045
|
};
|
|
3046
3046
|
if (!player.controls()) {
|
|
3047
3047
|
return [aboutMenuItem];
|
|
@@ -4959,6 +4959,7 @@ const getAnalyticsFromPlayerOptions = playerOptions => filterDefaultsAndNulls({
|
|
|
4959
4959
|
width: playerOptions.width,
|
|
4960
4960
|
withCredentials: playerOptions.withCredentials,
|
|
4961
4961
|
debug: playerOptions.debug,
|
|
4962
|
+
type: playerOptions.type,
|
|
4962
4963
|
colors: playerOptions.colors && JSON.stringify(playerOptions.colors),
|
|
4963
4964
|
controlBar: JSON.stringify(playerOptions.controlBar) !== JSON.stringify(config_defaults__WEBPACK_IMPORTED_MODULE_0__["default"].controlBar) && JSON.stringify(playerOptions.controlBar),
|
|
4964
4965
|
...getCloudinaryOptions(playerOptions.cloudinary),
|
|
@@ -5190,6 +5191,41 @@ function sliceAndUnsetProperties(obj) {
|
|
|
5190
5191
|
}
|
|
5191
5192
|
|
|
5192
5193
|
|
|
5194
|
+
/***/ }),
|
|
5195
|
+
|
|
5196
|
+
/***/ "./utils/video-retry.js":
|
|
5197
|
+
/*!******************************!*\
|
|
5198
|
+
!*** ./utils/video-retry.js ***!
|
|
5199
|
+
\******************************/
|
|
5200
|
+
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
|
|
5201
|
+
|
|
5202
|
+
"use strict";
|
|
5203
|
+
__webpack_require__.r(__webpack_exports__);
|
|
5204
|
+
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
|
|
5205
|
+
/* harmony export */ checkIfVideoIsAvailable: () => (/* binding */ checkIfVideoIsAvailable),
|
|
5206
|
+
/* harmony export */ isVideoInReadyState: () => (/* binding */ isVideoInReadyState)
|
|
5207
|
+
/* harmony export */ });
|
|
5208
|
+
const checkIfVideoIsAvailable = function (videoUrl) {
|
|
5209
|
+
let videoType = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 'default';
|
|
5210
|
+
return new Promise((resolve, reject) => {
|
|
5211
|
+
const tempVideo = document.createElement('video');
|
|
5212
|
+
tempVideo.setAttribute('crossorigin', 'anonymous');
|
|
5213
|
+
const targetEvent = videoType === 'live' ? 'onprogress' : 'canplay';
|
|
5214
|
+
tempVideo[targetEvent] = () => {
|
|
5215
|
+
tempVideo.onerror = null;
|
|
5216
|
+
tempVideo[targetEvent] = null;
|
|
5217
|
+
resolve();
|
|
5218
|
+
};
|
|
5219
|
+
tempVideo.onerror = () => reject();
|
|
5220
|
+
tempVideo.src = videoUrl;
|
|
5221
|
+
tempVideo.load();
|
|
5222
|
+
});
|
|
5223
|
+
};
|
|
5224
|
+
const isVideoInReadyState = readyState => {
|
|
5225
|
+
return readyState >= (/iPad|iPhone|iPod/.test(navigator.userAgent) ? 1 : 4);
|
|
5226
|
+
};
|
|
5227
|
+
|
|
5228
|
+
|
|
5193
5229
|
/***/ }),
|
|
5194
5230
|
|
|
5195
5231
|
/***/ "./validators/validators-functions.js":
|
|
@@ -5308,7 +5344,7 @@ __webpack_require__.r(__webpack_exports__);
|
|
|
5308
5344
|
/* harmony import */ var video_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(video_js__WEBPACK_IMPORTED_MODULE_0__);
|
|
5309
5345
|
|
|
5310
5346
|
const CLOUDINARY_PARAMS = ['cloudinaryConfig', 'transformation', 'sourceTypes', 'sourceTransformation', 'posterOptions', 'autoShowRecommendations', 'fontFace', 'secure'];
|
|
5311
|
-
const PLAYER_PARAMS = CLOUDINARY_PARAMS.concat(['_internalAnalyticsMetadata', 'debug', 'publicId', 'source', 'autoplayMode', 'playedEventPercents', 'playedEventTimes', 'analytics', 'cloudinaryAnalytics', 'allowUsageReport', 'fluid', 'ima', 'playlistWidget', 'hideContextMenu', 'colors', 'floatingWhenNotVisible', 'ads', 'showJumpControls', 'chaptersButton', 'pictureInPictureToggle', 'textTracks', 'qualitySelector', 'fetchErrorUsingGet', 'withCredentials', 'seekThumbnails', 'aiHighlightsGraph', 'chapters', 'queryParams']);
|
|
5347
|
+
const PLAYER_PARAMS = CLOUDINARY_PARAMS.concat(['_internalAnalyticsMetadata', 'debug', 'publicId', 'source', 'autoplayMode', 'playedEventPercents', 'playedEventTimes', 'analytics', 'cloudinaryAnalytics', 'allowUsageReport', 'fluid', 'ima', 'playlistWidget', 'hideContextMenu', 'colors', 'floatingWhenNotVisible', 'ads', 'showJumpControls', 'chaptersButton', 'pictureInPictureToggle', 'textTracks', 'qualitySelector', 'fetchErrorUsingGet', 'withCredentials', 'seekThumbnails', 'aiHighlightsGraph', 'chapters', 'queryParams', 'type']);
|
|
5312
5348
|
const CLOUDINARY_CONFIG_PARAM = ['cloud_name', 'secure', 'private_cdn', 'secure_distribution', 'cdn_subdomain', 'secure_cdn_subdomain', 'cname', 'shorten', 'sign_url', 'api_secret', 'url_suffix', 'use_root_path', 'auth_token'];
|
|
5313
5349
|
const DEFAULT_HLS_OPTIONS = {
|
|
5314
5350
|
html5: {
|
|
@@ -5354,7 +5390,7 @@ __webpack_require__.r(__webpack_exports__);
|
|
|
5354
5390
|
/* harmony export */ });
|
|
5355
5391
|
/* harmony import */ var video_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! video.js */ "../node_modules/video.js/dist/alt/video.core-exposed.js");
|
|
5356
5392
|
/* harmony import */ var video_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(video_js__WEBPACK_IMPORTED_MODULE_0__);
|
|
5357
|
-
/* harmony import */ var
|
|
5393
|
+
/* harmony import */ var uuid__WEBPACK_IMPORTED_MODULE_21__ = __webpack_require__(/*! uuid */ "../node_modules/uuid/dist/esm-browser/v4.js");
|
|
5358
5394
|
/* harmony import */ var lodash_isEmpty__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! lodash/isEmpty */ "../node_modules/lodash/isEmpty.js");
|
|
5359
5395
|
/* harmony import */ var lodash_isEmpty__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(lodash_isEmpty__WEBPACK_IMPORTED_MODULE_1__);
|
|
5360
5396
|
/* harmony import */ var lodash_get__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! lodash/get */ "../node_modules/lodash/get.js");
|
|
@@ -5380,6 +5416,8 @@ __webpack_require__.r(__webpack_exports__);
|
|
|
5380
5416
|
/* harmony import */ var _utils_consts__WEBPACK_IMPORTED_MODULE_17__ = __webpack_require__(/*! ./utils/consts */ "./utils/consts.js");
|
|
5381
5417
|
/* harmony import */ var _utils_get_analytics_player_options__WEBPACK_IMPORTED_MODULE_18__ = __webpack_require__(/*! ./utils/get-analytics-player-options */ "./utils/get-analytics-player-options.js");
|
|
5382
5418
|
/* harmony import */ var _plugins_cloudinary_common__WEBPACK_IMPORTED_MODULE_19__ = __webpack_require__(/*! ./plugins/cloudinary/common */ "./plugins/cloudinary/common.js");
|
|
5419
|
+
/* harmony import */ var _utils_video_retry__WEBPACK_IMPORTED_MODULE_20__ = __webpack_require__(/*! ./utils/video-retry */ "./utils/video-retry.js");
|
|
5420
|
+
|
|
5383
5421
|
|
|
5384
5422
|
|
|
5385
5423
|
|
|
@@ -5406,6 +5444,7 @@ __webpack_require__.r(__webpack_exports__);
|
|
|
5406
5444
|
// #endif
|
|
5407
5445
|
|
|
5408
5446
|
const INTERNAL_ANALYTICS_URL = 'https://analytics-api-s.cloudinary.com';
|
|
5447
|
+
const RETRY_DEFAULT_TIMEOUT = 5 * 1000;
|
|
5409
5448
|
|
|
5410
5449
|
// Register all plugins
|
|
5411
5450
|
Object.keys(_plugins__WEBPACK_IMPORTED_MODULE_8__["default"]).forEach(key => {
|
|
@@ -5425,7 +5464,6 @@ class VideoPlayer extends _utils__WEBPACK_IMPORTED_MODULE_9__["default"].mixin(_
|
|
|
5425
5464
|
}
|
|
5426
5465
|
constructor(elem, initOptions, ready) {
|
|
5427
5466
|
super();
|
|
5428
|
-
this.nbCalls = 0;
|
|
5429
5467
|
this.videoElement = (0,_video_player_utils__WEBPACK_IMPORTED_MODULE_14__.getResolveVideoElement)(elem);
|
|
5430
5468
|
this.options = (0,_video_player_utils__WEBPACK_IMPORTED_MODULE_14__.extractOptions)(this.videoElement, initOptions);
|
|
5431
5469
|
this._videojsOptions = this.options.videojsOptions;
|
|
@@ -5466,7 +5504,7 @@ class VideoPlayer extends _utils__WEBPACK_IMPORTED_MODULE_9__["default"].mixin(_
|
|
|
5466
5504
|
}
|
|
5467
5505
|
getVPInstanceId() {
|
|
5468
5506
|
if (!this.vpInstanceId) {
|
|
5469
|
-
this.vpInstanceId = (0,
|
|
5507
|
+
this.vpInstanceId = (0,uuid__WEBPACK_IMPORTED_MODULE_21__["default"])();
|
|
5470
5508
|
}
|
|
5471
5509
|
return this.vpInstanceId;
|
|
5472
5510
|
}
|
|
@@ -5481,7 +5519,7 @@ class VideoPlayer extends _utils__WEBPACK_IMPORTED_MODULE_9__["default"].mixin(_
|
|
|
5481
5519
|
const analyticsData = (0,_utils_get_analytics_player_options__WEBPACK_IMPORTED_MODULE_18__.getAnalyticsFromPlayerOptions)(options);
|
|
5482
5520
|
const analyticsParams = new URLSearchParams(analyticsData).toString();
|
|
5483
5521
|
const baseParams = new URLSearchParams({
|
|
5484
|
-
vpVersion: "2.3.4-edge.
|
|
5522
|
+
vpVersion: "2.3.4-edge.6",
|
|
5485
5523
|
vpInstanceId: this.getVPInstanceId(),
|
|
5486
5524
|
// #if (process.env.WEBPACK_BUILD_LIGHT)
|
|
5487
5525
|
vpLightBuild: true,
|
|
@@ -5494,8 +5532,9 @@ class VideoPlayer extends _utils__WEBPACK_IMPORTED_MODULE_9__["default"].mixin(_
|
|
|
5494
5532
|
console.warn(err);
|
|
5495
5533
|
}
|
|
5496
5534
|
}
|
|
5497
|
-
|
|
5498
|
-
this.
|
|
5535
|
+
_resetReTryVideoState = () => {
|
|
5536
|
+
this.reTryVideoStateRetriesCount = 0;
|
|
5537
|
+
this.videojs.clearTimeout(this.reTryVideoStateTimeoutId);
|
|
5499
5538
|
};
|
|
5500
5539
|
_setVideoJsListeners(ready) {
|
|
5501
5540
|
this.videojs.on(_utils_consts__WEBPACK_IMPORTED_MODULE_17__.PLAYER_EVENT.ERROR, () => {
|
|
@@ -5505,27 +5544,35 @@ class VideoPlayer extends _utils__WEBPACK_IMPORTED_MODULE_9__["default"].mixin(_
|
|
|
5505
5544
|
|
|
5506
5545
|
/*
|
|
5507
5546
|
error codes :
|
|
5508
|
-
|
|
5509
|
-
|
|
5547
|
+
3 - media playback was aborted due to a corruption problem
|
|
5548
|
+
4 - media error, media source not supported
|
|
5510
5549
|
*/
|
|
5511
5550
|
const isCorrupted = error.code === 3 && (video_js__WEBPACK_IMPORTED_MODULE_0___default().browser).IS_SAFARI;
|
|
5512
5551
|
if ([isCorrupted, error.code === 4].includes(true) && [_utils_consts__WEBPACK_IMPORTED_MODULE_17__.SOURCE_TYPE.AUDIO, _utils_consts__WEBPACK_IMPORTED_MODULE_17__.SOURCE_TYPE.VIDEO].includes(type)) {
|
|
5513
|
-
this.
|
|
5514
|
-
|
|
5552
|
+
if (this.isLiveStream) {
|
|
5553
|
+
this.videojs.error({
|
|
5554
|
+
code: _plugins_cloudinary_common__WEBPACK_IMPORTED_MODULE_19__.ERROR_CODE.CUSTOM,
|
|
5555
|
+
message: 'Live Stream not started'
|
|
5556
|
+
});
|
|
5557
|
+
this.reloadVideoUntilAvailable();
|
|
5558
|
+
} else {
|
|
5559
|
+
this.videojs.error(null);
|
|
5560
|
+
_utils__WEBPACK_IMPORTED_MODULE_9__["default"].handleCldError(this, this.playerOptions);
|
|
5561
|
+
}
|
|
5515
5562
|
} else {
|
|
5516
|
-
this.
|
|
5563
|
+
this._resetReTryVideoState();
|
|
5517
5564
|
}
|
|
5518
5565
|
}
|
|
5519
5566
|
});
|
|
5520
5567
|
this.videojs.tech_.on(_utils_consts__WEBPACK_IMPORTED_MODULE_17__.PLAYER_EVENT.RETRY_PLAYLIST, () => {
|
|
5521
5568
|
const mediaRequestsErrored = lodash_get__WEBPACK_IMPORTED_MODULE_2___default()(this.videojs, 'hls.stats.mediaRequestsErrored', 0);
|
|
5522
5569
|
if (mediaRequestsErrored > 0) {
|
|
5523
|
-
this.
|
|
5570
|
+
this._resetReTryVideoState();
|
|
5524
5571
|
_utils__WEBPACK_IMPORTED_MODULE_9__["default"].handleCldError(this, this.playerOptions);
|
|
5525
5572
|
}
|
|
5526
5573
|
});
|
|
5527
|
-
this.videojs.on(_utils_consts__WEBPACK_IMPORTED_MODULE_17__.PLAYER_EVENT.PLAY, this.
|
|
5528
|
-
this.videojs.on(_utils_consts__WEBPACK_IMPORTED_MODULE_17__.PLAYER_EVENT.CAN_PLAY_THROUGH, this.
|
|
5574
|
+
this.videojs.on(_utils_consts__WEBPACK_IMPORTED_MODULE_17__.PLAYER_EVENT.PLAY, this._resetReTryVideoState);
|
|
5575
|
+
this.videojs.on(_utils_consts__WEBPACK_IMPORTED_MODULE_17__.PLAYER_EVENT.CAN_PLAY_THROUGH, this._resetReTryVideoState);
|
|
5529
5576
|
this.videojs.on(_utils_consts__WEBPACK_IMPORTED_MODULE_17__.PLAYER_EVENT.CLD_SOURCE_CHANGED, this._onSourceChange.bind(this));
|
|
5530
5577
|
this.videojs.ready(() => {
|
|
5531
5578
|
this._onReady();
|
|
@@ -5756,24 +5803,43 @@ class VideoPlayer extends _utils__WEBPACK_IMPORTED_MODULE_9__["default"].mixin(_
|
|
|
5756
5803
|
this.videojs.cloudinaryAnalytics(options);
|
|
5757
5804
|
}
|
|
5758
5805
|
}
|
|
5759
|
-
|
|
5760
|
-
|
|
5761
|
-
|
|
5762
|
-
|
|
5763
|
-
|
|
5806
|
+
reTryVideoStateUntilAvailable() {
|
|
5807
|
+
let maxNumberOfCalls = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : Number.POSITIVE_INFINITY;
|
|
5808
|
+
let timeout = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : RETRY_DEFAULT_TIMEOUT;
|
|
5809
|
+
if (typeof this.reTryVideoStateRetriesCount !== 'number') {
|
|
5810
|
+
this.reTryVideoStateRetriesCount = 0;
|
|
5811
|
+
}
|
|
5812
|
+
if (!(0,_utils_video_retry__WEBPACK_IMPORTED_MODULE_20__.isVideoInReadyState)(this.videojs.readyState())) {
|
|
5813
|
+
if (this.reTryVideoStateRetriesCount < maxNumberOfCalls) {
|
|
5814
|
+
this.reTryVideoStateRetriesCount++;
|
|
5815
|
+
this.reTryVideoStateTimeoutId = this.videojs.setTimeout(() => this.reTryVideoStateUntilAvailable(maxNumberOfCalls, timeout), timeout);
|
|
5764
5816
|
} else {
|
|
5765
5817
|
let e = new Error('Video is not ready please try later');
|
|
5766
5818
|
this.videojs.trigger('error', e);
|
|
5767
5819
|
}
|
|
5820
|
+
} else {
|
|
5821
|
+
this.reTryVideoStateRetriesCount = 0;
|
|
5768
5822
|
}
|
|
5769
5823
|
}
|
|
5770
|
-
|
|
5771
|
-
|
|
5772
|
-
|
|
5773
|
-
|
|
5774
|
-
|
|
5824
|
+
_resetReloadVideo = () => {
|
|
5825
|
+
this.reloadVideoRetriesCount = 0;
|
|
5826
|
+
this.videojs.clearTimeout(this.reloadVideoTimeoutId);
|
|
5827
|
+
};
|
|
5828
|
+
reloadVideoUntilAvailable() {
|
|
5829
|
+
let maxNumberOfCalls = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : Number.POSITIVE_INFINITY;
|
|
5830
|
+
let timeout = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : RETRY_DEFAULT_TIMEOUT;
|
|
5831
|
+
if (typeof this.reloadVideoRetriesCount !== 'number') {
|
|
5832
|
+
this.reloadVideoRetriesCount = 0;
|
|
5833
|
+
}
|
|
5834
|
+
if (this.reloadVideoRetriesCount < maxNumberOfCalls) {
|
|
5835
|
+
this.reloadVideoRetriesCount++;
|
|
5836
|
+
this.reloadVideoTimeoutId = this.videojs.setTimeout(() => {
|
|
5837
|
+
const videoUrl = this.currentSourceUrl();
|
|
5838
|
+
(0,_utils_video_retry__WEBPACK_IMPORTED_MODULE_20__.checkIfVideoIsAvailable)(videoUrl, this.isLiveStream ? 'live' : 'default').then(() => this.source(videoUrl)).catch(() => this.reloadVideoUntilAvailable(maxNumberOfCalls, timeout));
|
|
5839
|
+
}, timeout);
|
|
5840
|
+
} else {
|
|
5841
|
+
this.videojs.trigger('error', new Error('Sorry, we could not load your video'));
|
|
5775
5842
|
}
|
|
5776
|
-
return false;
|
|
5777
5843
|
}
|
|
5778
5844
|
_initAutoplay() {
|
|
5779
5845
|
const autoplayMode = this.playerOptions.autoplayMode;
|
|
@@ -5809,6 +5875,7 @@ class VideoPlayer extends _utils__WEBPACK_IMPORTED_MODULE_9__["default"].mixin(_
|
|
|
5809
5875
|
}
|
|
5810
5876
|
_onSourceChange(e, _ref5) {
|
|
5811
5877
|
let {
|
|
5878
|
+
source,
|
|
5812
5879
|
sourceOptions
|
|
5813
5880
|
} = _ref5;
|
|
5814
5881
|
this._sendInternalAnalytics({
|
|
@@ -5819,6 +5886,7 @@ class VideoPlayer extends _utils__WEBPACK_IMPORTED_MODULE_9__["default"].mixin(_
|
|
|
5819
5886
|
// #if (!process.env.WEBPACK_BUILD_LIGHT)
|
|
5820
5887
|
// this._initQualitySelector();
|
|
5821
5888
|
// #endif
|
|
5889
|
+
this.isLiveStream = source.resourceConfig().type === 'live';
|
|
5822
5890
|
}
|
|
5823
5891
|
_setExtendedEvents() {
|
|
5824
5892
|
const events = [];
|
|
@@ -5888,11 +5956,11 @@ class VideoPlayer extends _utils__WEBPACK_IMPORTED_MODULE_9__["default"].mixin(_
|
|
|
5888
5956
|
if (this.playerOptions.withCredentials) {
|
|
5889
5957
|
options.withCredentials = true;
|
|
5890
5958
|
}
|
|
5891
|
-
|
|
5892
|
-
this.
|
|
5959
|
+
this._resetReloadVideo();
|
|
5960
|
+
this._resetReTryVideoState();
|
|
5893
5961
|
const maxTries = this.videojs.options_.maxTries || 3;
|
|
5894
5962
|
const videoReadyTimeout = this.videojs.options_.videoTimeout || 55000;
|
|
5895
|
-
this.
|
|
5963
|
+
this.reTryVideoStateUntilAvailable(maxTries, videoReadyTimeout);
|
|
5896
5964
|
return this.videojs.cloudinary.source(publicId, options);
|
|
5897
5965
|
}
|
|
5898
5966
|
posterOptions(options) {
|