ckplayer-plus 1.1.8 → 1.1.10

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.cjs CHANGED
@@ -210,7 +210,7 @@ var require_ckplayer = __commonJS({
210
210
  cdnFallback: true
211
211
  // getPath 失败时是否回退到 jsDelivr(内网可设 false,并配置 pluginPath)
212
212
  };
213
- var ckplayerPlusDefaultCdn = "https://cdn.jsdelivr.net/npm/ckplayer-plus@1.1.8/dist/";
213
+ var ckplayerPlusDefaultCdn = "https://cdn.jsdelivr.net/npm/ckplayer-plus@1.1.10/dist/";
214
214
  function ckplayerEmbed(videoObj) {
215
215
  var rightMenu = [
216
216
  {
@@ -435,7 +435,7 @@ var require_ckplayer = __commonJS({
435
435
  }
436
436
  var allowCdn = !vars || vars["cdnFallback"] !== false;
437
437
  var cdn = typeof window !== "undefined" && window.ckplayerPlusCdn ? window.ckplayerPlusCdn : ckplayerPlusDefaultCdn;
438
- if (!allowCdn || !cdn || cdn.indexOf("1.1.8") > -1) {
438
+ if (!allowCdn || !cdn || cdn.indexOf("1.1.10") > -1) {
439
439
  return folder + "/" + file;
440
440
  }
441
441
  if (cdn.slice(-1) !== "/") {
@@ -826,7 +826,7 @@ var require_ckplayer = __commonJS({
826
826
  } });
827
827
  return;
828
828
  } else {
829
- if (vars["plug"] && !canPlay(vstr)) {
829
+ if (vars["plug"] && (vars["preferBuiltinPlug"] || !canPlay(vstr))) {
830
830
  plugPlayer(vstr);
831
831
  } else {
832
832
  if (!existenceObj) {
@@ -838,7 +838,7 @@ var require_ckplayer = __commonJS({
838
838
  } else if (valType(vstr) == "array") {
839
839
  for (i = 0; i < vstr.length; i++) {
840
840
  if (valType(vstr[i]) == "array") {
841
- if (vars["plug"] && !canPlay(vstr[i][0])) {
841
+ if (vars["plug"] && (vars["preferBuiltinPlug"] || !canPlay(vstr[i][0]))) {
842
842
  plugPlayer(vstr[i][0]);
843
843
  } else {
844
844
  var type = ' type="' + vstr[i][1] + '"';
@@ -919,7 +919,6 @@ var require_ckplayer = __commonJS({
919
919
  resumeAt = parseResumeSeekFromVars();
920
920
  }
921
921
  if (resumeAt && resumeAt > 0 && (isUndefined(vars["live"]) || !vars["live"])) {
922
- hlsConf.autoStartLoad = false;
923
922
  maxSeeTime = Math.max(maxSeeTime, resumeAt);
924
923
  if (firstSeekTime < 0) {
925
924
  firstSeekTime = resumeAt;
@@ -936,19 +935,34 @@ var require_ckplayer = __commonJS({
936
935
  hls.on(Hls.Events.MANIFEST_PARSED, function() {
937
936
  if (seekTime > 0 && hlsResumeSettling) {
938
937
  hlsStartPositionUsed = true;
939
- hlsSeekTo(seekTime, true);
940
938
  if (C["buffer"]) {
941
939
  C["buffer"].show();
942
940
  }
943
- setTimeout(function() {
944
- if (!hlsResumeSettling) {
941
+ var doResumeSeek = function() {
942
+ if (!hlsResumeSettling || !seekTime) {
945
943
  return;
946
944
  }
947
- var t = seekTime > 0 ? seekTime : hlsResumeTarget;
948
- if (t > 0 && !tryCompleteResumeSeek(t) && hlsResumeSettling) {
945
+ var t = seekTime;
946
+ if (video && video.seekable && video.seekable.length > 0 && video.seekable.end(0) >= t) {
949
947
  finishResumeSeek(t);
948
+ return;
949
+ }
950
+ seekRetryCount++;
951
+ if (seekRetryCount <= 100) {
952
+ if (seekRetryTimer) {
953
+ clearTimeout(seekRetryTimer);
954
+ }
955
+ seekRetryTimer = setTimeout(doResumeSeek, 50);
956
+ } else {
957
+ finishResumeSeek(t);
958
+ }
959
+ };
960
+ doResumeSeek();
961
+ setTimeout(function() {
962
+ if (hlsResumeSettling && seekTime > 0) {
963
+ finishResumeSeek(seekTime);
950
964
  }
951
- }, 8e3);
965
+ }, 1e4);
952
966
  return;
953
967
  }
954
968
  if (!hlsStartPositionUsed) {
@@ -1009,9 +1023,9 @@ var require_ckplayer = __commonJS({
1009
1023
  }
1010
1024
  }
1011
1025
  }
1012
- CT.error = { code, message: message2 };
1013
- eventTarget("error", CT.error);
1014
1026
  if (fatal) {
1027
+ CT.error = { code, message: message2 };
1028
+ eventTarget("error", CT.error);
1015
1029
  showError();
1016
1030
  }
1017
1031
  });
@@ -1804,28 +1818,16 @@ var require_ckplayer = __commonJS({
1804
1818
  if (!timeInBuffered(t)) {
1805
1819
  return false;
1806
1820
  }
1807
- var loadStart = hlsPriorLoadTime(t);
1808
- try {
1809
- var buf = video.buffered;
1810
- for (var i = 0; i < buf.length; i++) {
1811
- var start = buf.start(i);
1812
- var end = buf.end(i);
1813
- if (loadStart >= start - 0.35 && t <= end + 0.15) {
1814
- return true;
1815
- }
1816
- }
1817
- } catch (event2) {
1818
- }
1819
- return false;
1821
+ return true;
1820
1822
  }, tryCompleteResumeSeek = function(t) {
1821
1823
  if (!hlsResumeSettling || isNaN(t) || t <= 0 || !video) {
1822
1824
  return false;
1823
1825
  }
1824
- if (hlsCanSafelySeekTo(t)) {
1825
- finishResumeSeek(t);
1826
- return true;
1826
+ if (!timeInBuffered(t)) {
1827
+ return false;
1827
1828
  }
1828
- return false;
1829
+ finishResumeSeek(t);
1830
+ return true;
1829
1831
  }, finishResumeSeek = function(t) {
1830
1832
  hlsResumeWarmup = false;
1831
1833
  hlsResumeSettling = false;
@@ -1879,6 +1881,9 @@ var require_ckplayer = __commonJS({
1879
1881
  if (!seekTime || !video || seekApplyLock) {
1880
1882
  return;
1881
1883
  }
1884
+ if (hlsResumeSettling && hls) {
1885
+ return;
1886
+ }
1882
1887
  if (!isUndefined(vars["live"]) && (valType(vars["live"]) == "boolean" && vars["live"] || valType(vars["live"]) == "number")) {
1883
1888
  return;
1884
1889
  }
@@ -2224,10 +2229,18 @@ var require_ckplayer = __commonJS({
2224
2229
  seekApplyLock = false;
2225
2230
  decodeRecoverCount = 0;
2226
2231
  hlsScrubbing = false;
2227
- hlsResumeSettling = false;
2232
+ var resumePending = false;
2233
+ if (hlsResumeSettling && hlsResumeTarget > 0) {
2234
+ resumePending = true;
2235
+ }
2236
+ if (!resumePending) {
2237
+ hlsResumeSettling = false;
2238
+ }
2228
2239
  startPendingAutoplay();
2229
2240
  pSliderMouseDown = false;
2230
- hidePlaybackBuffer();
2241
+ if (!resumePending) {
2242
+ hidePlaybackBuffer();
2243
+ }
2231
2244
  if (hlsScrubResumePlay) {
2232
2245
  hlsScrubResumePlay = false;
2233
2246
  try {
@@ -6442,7 +6455,7 @@ var require_ckplayer = __commonJS({
6442
6455
  if (!isRetry && (!vars || vars["cdnFallback"] !== false)) {
6443
6456
  var cdn = typeof window !== "undefined" && window.ckplayerPlusCdn ? window.ckplayerPlusCdn : ckplayerPlusDefaultCdn;
6444
6457
  var m = String(file).match(/\/(hls\.js|flv\.js|mpegts\.js|language)\/([^/?#]+)(?:[?#].*)?$/i);
6445
- if (cdn && cdn.indexOf("1.1.8") === -1 && m) {
6458
+ if (cdn && cdn.indexOf("1.1.10") === -1 && m) {
6446
6459
  if (cdn.slice(-1) !== "/") {
6447
6460
  cdn += "/";
6448
6461
  }
package/dist/index.js CHANGED
@@ -204,7 +204,7 @@ var require_ckplayer = __commonJS({
204
204
  cdnFallback: true
205
205
  // getPath 失败时是否回退到 jsDelivr(内网可设 false,并配置 pluginPath)
206
206
  };
207
- var ckplayerPlusDefaultCdn = "https://cdn.jsdelivr.net/npm/ckplayer-plus@1.1.8/dist/";
207
+ var ckplayerPlusDefaultCdn = "https://cdn.jsdelivr.net/npm/ckplayer-plus@1.1.10/dist/";
208
208
  function ckplayerEmbed(videoObj) {
209
209
  var rightMenu = [
210
210
  {
@@ -429,7 +429,7 @@ var require_ckplayer = __commonJS({
429
429
  }
430
430
  var allowCdn = !vars || vars["cdnFallback"] !== false;
431
431
  var cdn = typeof window !== "undefined" && window.ckplayerPlusCdn ? window.ckplayerPlusCdn : ckplayerPlusDefaultCdn;
432
- if (!allowCdn || !cdn || cdn.indexOf("1.1.8") > -1) {
432
+ if (!allowCdn || !cdn || cdn.indexOf("1.1.10") > -1) {
433
433
  return folder + "/" + file;
434
434
  }
435
435
  if (cdn.slice(-1) !== "/") {
@@ -820,7 +820,7 @@ var require_ckplayer = __commonJS({
820
820
  } });
821
821
  return;
822
822
  } else {
823
- if (vars["plug"] && !canPlay(vstr)) {
823
+ if (vars["plug"] && (vars["preferBuiltinPlug"] || !canPlay(vstr))) {
824
824
  plugPlayer(vstr);
825
825
  } else {
826
826
  if (!existenceObj) {
@@ -832,7 +832,7 @@ var require_ckplayer = __commonJS({
832
832
  } else if (valType(vstr) == "array") {
833
833
  for (i = 0; i < vstr.length; i++) {
834
834
  if (valType(vstr[i]) == "array") {
835
- if (vars["plug"] && !canPlay(vstr[i][0])) {
835
+ if (vars["plug"] && (vars["preferBuiltinPlug"] || !canPlay(vstr[i][0]))) {
836
836
  plugPlayer(vstr[i][0]);
837
837
  } else {
838
838
  var type = ' type="' + vstr[i][1] + '"';
@@ -913,7 +913,6 @@ var require_ckplayer = __commonJS({
913
913
  resumeAt = parseResumeSeekFromVars();
914
914
  }
915
915
  if (resumeAt && resumeAt > 0 && (isUndefined(vars["live"]) || !vars["live"])) {
916
- hlsConf.autoStartLoad = false;
917
916
  maxSeeTime = Math.max(maxSeeTime, resumeAt);
918
917
  if (firstSeekTime < 0) {
919
918
  firstSeekTime = resumeAt;
@@ -930,19 +929,34 @@ var require_ckplayer = __commonJS({
930
929
  hls.on(Hls.Events.MANIFEST_PARSED, function() {
931
930
  if (seekTime > 0 && hlsResumeSettling) {
932
931
  hlsStartPositionUsed = true;
933
- hlsSeekTo(seekTime, true);
934
932
  if (C["buffer"]) {
935
933
  C["buffer"].show();
936
934
  }
937
- setTimeout(function() {
938
- if (!hlsResumeSettling) {
935
+ var doResumeSeek = function() {
936
+ if (!hlsResumeSettling || !seekTime) {
939
937
  return;
940
938
  }
941
- var t = seekTime > 0 ? seekTime : hlsResumeTarget;
942
- if (t > 0 && !tryCompleteResumeSeek(t) && hlsResumeSettling) {
939
+ var t = seekTime;
940
+ if (video && video.seekable && video.seekable.length > 0 && video.seekable.end(0) >= t) {
943
941
  finishResumeSeek(t);
942
+ return;
943
+ }
944
+ seekRetryCount++;
945
+ if (seekRetryCount <= 100) {
946
+ if (seekRetryTimer) {
947
+ clearTimeout(seekRetryTimer);
948
+ }
949
+ seekRetryTimer = setTimeout(doResumeSeek, 50);
950
+ } else {
951
+ finishResumeSeek(t);
952
+ }
953
+ };
954
+ doResumeSeek();
955
+ setTimeout(function() {
956
+ if (hlsResumeSettling && seekTime > 0) {
957
+ finishResumeSeek(seekTime);
944
958
  }
945
- }, 8e3);
959
+ }, 1e4);
946
960
  return;
947
961
  }
948
962
  if (!hlsStartPositionUsed) {
@@ -1003,9 +1017,9 @@ var require_ckplayer = __commonJS({
1003
1017
  }
1004
1018
  }
1005
1019
  }
1006
- CT.error = { code, message: message2 };
1007
- eventTarget("error", CT.error);
1008
1020
  if (fatal) {
1021
+ CT.error = { code, message: message2 };
1022
+ eventTarget("error", CT.error);
1009
1023
  showError();
1010
1024
  }
1011
1025
  });
@@ -1798,28 +1812,16 @@ var require_ckplayer = __commonJS({
1798
1812
  if (!timeInBuffered(t)) {
1799
1813
  return false;
1800
1814
  }
1801
- var loadStart = hlsPriorLoadTime(t);
1802
- try {
1803
- var buf = video.buffered;
1804
- for (var i = 0; i < buf.length; i++) {
1805
- var start = buf.start(i);
1806
- var end = buf.end(i);
1807
- if (loadStart >= start - 0.35 && t <= end + 0.15) {
1808
- return true;
1809
- }
1810
- }
1811
- } catch (event2) {
1812
- }
1813
- return false;
1815
+ return true;
1814
1816
  }, tryCompleteResumeSeek = function(t) {
1815
1817
  if (!hlsResumeSettling || isNaN(t) || t <= 0 || !video) {
1816
1818
  return false;
1817
1819
  }
1818
- if (hlsCanSafelySeekTo(t)) {
1819
- finishResumeSeek(t);
1820
- return true;
1820
+ if (!timeInBuffered(t)) {
1821
+ return false;
1821
1822
  }
1822
- return false;
1823
+ finishResumeSeek(t);
1824
+ return true;
1823
1825
  }, finishResumeSeek = function(t) {
1824
1826
  hlsResumeWarmup = false;
1825
1827
  hlsResumeSettling = false;
@@ -1873,6 +1875,9 @@ var require_ckplayer = __commonJS({
1873
1875
  if (!seekTime || !video || seekApplyLock) {
1874
1876
  return;
1875
1877
  }
1878
+ if (hlsResumeSettling && hls) {
1879
+ return;
1880
+ }
1876
1881
  if (!isUndefined(vars["live"]) && (valType(vars["live"]) == "boolean" && vars["live"] || valType(vars["live"]) == "number")) {
1877
1882
  return;
1878
1883
  }
@@ -2218,10 +2223,18 @@ var require_ckplayer = __commonJS({
2218
2223
  seekApplyLock = false;
2219
2224
  decodeRecoverCount = 0;
2220
2225
  hlsScrubbing = false;
2221
- hlsResumeSettling = false;
2226
+ var resumePending = false;
2227
+ if (hlsResumeSettling && hlsResumeTarget > 0) {
2228
+ resumePending = true;
2229
+ }
2230
+ if (!resumePending) {
2231
+ hlsResumeSettling = false;
2232
+ }
2222
2233
  startPendingAutoplay();
2223
2234
  pSliderMouseDown = false;
2224
- hidePlaybackBuffer();
2235
+ if (!resumePending) {
2236
+ hidePlaybackBuffer();
2237
+ }
2225
2238
  if (hlsScrubResumePlay) {
2226
2239
  hlsScrubResumePlay = false;
2227
2240
  try {
@@ -6436,7 +6449,7 @@ var require_ckplayer = __commonJS({
6436
6449
  if (!isRetry && (!vars || vars["cdnFallback"] !== false)) {
6437
6450
  var cdn = typeof window !== "undefined" && window.ckplayerPlusCdn ? window.ckplayerPlusCdn : ckplayerPlusDefaultCdn;
6438
6451
  var m = String(file).match(/\/(hls\.js|flv\.js|mpegts\.js|language)\/([^/?#]+)(?:[?#].*)?$/i);
6439
- if (cdn && cdn.indexOf("1.1.8") === -1 && m) {
6452
+ if (cdn && cdn.indexOf("1.1.10") === -1 && m) {
6440
6453
  if (cdn.slice(-1) !== "/") {
6441
6454
  cdn += "/";
6442
6455
  }
package/dist/react.cjs CHANGED
@@ -210,7 +210,7 @@ var require_ckplayer = __commonJS({
210
210
  cdnFallback: true
211
211
  // getPath 失败时是否回退到 jsDelivr(内网可设 false,并配置 pluginPath)
212
212
  };
213
- var ckplayerPlusDefaultCdn = "https://cdn.jsdelivr.net/npm/ckplayer-plus@1.1.8/dist/";
213
+ var ckplayerPlusDefaultCdn = "https://cdn.jsdelivr.net/npm/ckplayer-plus@1.1.10/dist/";
214
214
  function ckplayerEmbed(videoObj) {
215
215
  var rightMenu = [
216
216
  {
@@ -435,7 +435,7 @@ var require_ckplayer = __commonJS({
435
435
  }
436
436
  var allowCdn = !vars || vars["cdnFallback"] !== false;
437
437
  var cdn = typeof window !== "undefined" && window.ckplayerPlusCdn ? window.ckplayerPlusCdn : ckplayerPlusDefaultCdn;
438
- if (!allowCdn || !cdn || cdn.indexOf("1.1.8") > -1) {
438
+ if (!allowCdn || !cdn || cdn.indexOf("1.1.10") > -1) {
439
439
  return folder + "/" + file;
440
440
  }
441
441
  if (cdn.slice(-1) !== "/") {
@@ -826,7 +826,7 @@ var require_ckplayer = __commonJS({
826
826
  } });
827
827
  return;
828
828
  } else {
829
- if (vars["plug"] && !canPlay(vstr)) {
829
+ if (vars["plug"] && (vars["preferBuiltinPlug"] || !canPlay(vstr))) {
830
830
  plugPlayer(vstr);
831
831
  } else {
832
832
  if (!existenceObj) {
@@ -838,7 +838,7 @@ var require_ckplayer = __commonJS({
838
838
  } else if (valType(vstr) == "array") {
839
839
  for (i = 0; i < vstr.length; i++) {
840
840
  if (valType(vstr[i]) == "array") {
841
- if (vars["plug"] && !canPlay(vstr[i][0])) {
841
+ if (vars["plug"] && (vars["preferBuiltinPlug"] || !canPlay(vstr[i][0]))) {
842
842
  plugPlayer(vstr[i][0]);
843
843
  } else {
844
844
  var type = ' type="' + vstr[i][1] + '"';
@@ -919,7 +919,6 @@ var require_ckplayer = __commonJS({
919
919
  resumeAt = parseResumeSeekFromVars();
920
920
  }
921
921
  if (resumeAt && resumeAt > 0 && (isUndefined(vars["live"]) || !vars["live"])) {
922
- hlsConf.autoStartLoad = false;
923
922
  maxSeeTime = Math.max(maxSeeTime, resumeAt);
924
923
  if (firstSeekTime < 0) {
925
924
  firstSeekTime = resumeAt;
@@ -936,19 +935,34 @@ var require_ckplayer = __commonJS({
936
935
  hls.on(Hls.Events.MANIFEST_PARSED, function() {
937
936
  if (seekTime > 0 && hlsResumeSettling) {
938
937
  hlsStartPositionUsed = true;
939
- hlsSeekTo(seekTime, true);
940
938
  if (C["buffer"]) {
941
939
  C["buffer"].show();
942
940
  }
943
- setTimeout(function() {
944
- if (!hlsResumeSettling) {
941
+ var doResumeSeek = function() {
942
+ if (!hlsResumeSettling || !seekTime) {
945
943
  return;
946
944
  }
947
- var t = seekTime > 0 ? seekTime : hlsResumeTarget;
948
- if (t > 0 && !tryCompleteResumeSeek(t) && hlsResumeSettling) {
945
+ var t = seekTime;
946
+ if (video && video.seekable && video.seekable.length > 0 && video.seekable.end(0) >= t) {
949
947
  finishResumeSeek(t);
948
+ return;
949
+ }
950
+ seekRetryCount++;
951
+ if (seekRetryCount <= 100) {
952
+ if (seekRetryTimer) {
953
+ clearTimeout(seekRetryTimer);
954
+ }
955
+ seekRetryTimer = setTimeout(doResumeSeek, 50);
956
+ } else {
957
+ finishResumeSeek(t);
958
+ }
959
+ };
960
+ doResumeSeek();
961
+ setTimeout(function() {
962
+ if (hlsResumeSettling && seekTime > 0) {
963
+ finishResumeSeek(seekTime);
950
964
  }
951
- }, 8e3);
965
+ }, 1e4);
952
966
  return;
953
967
  }
954
968
  if (!hlsStartPositionUsed) {
@@ -1009,9 +1023,9 @@ var require_ckplayer = __commonJS({
1009
1023
  }
1010
1024
  }
1011
1025
  }
1012
- CT.error = { code, message: message2 };
1013
- eventTarget("error", CT.error);
1014
1026
  if (fatal) {
1027
+ CT.error = { code, message: message2 };
1028
+ eventTarget("error", CT.error);
1015
1029
  showError();
1016
1030
  }
1017
1031
  });
@@ -1804,28 +1818,16 @@ var require_ckplayer = __commonJS({
1804
1818
  if (!timeInBuffered(t)) {
1805
1819
  return false;
1806
1820
  }
1807
- var loadStart = hlsPriorLoadTime(t);
1808
- try {
1809
- var buf = video.buffered;
1810
- for (var i = 0; i < buf.length; i++) {
1811
- var start = buf.start(i);
1812
- var end = buf.end(i);
1813
- if (loadStart >= start - 0.35 && t <= end + 0.15) {
1814
- return true;
1815
- }
1816
- }
1817
- } catch (event2) {
1818
- }
1819
- return false;
1821
+ return true;
1820
1822
  }, tryCompleteResumeSeek = function(t) {
1821
1823
  if (!hlsResumeSettling || isNaN(t) || t <= 0 || !video) {
1822
1824
  return false;
1823
1825
  }
1824
- if (hlsCanSafelySeekTo(t)) {
1825
- finishResumeSeek(t);
1826
- return true;
1826
+ if (!timeInBuffered(t)) {
1827
+ return false;
1827
1828
  }
1828
- return false;
1829
+ finishResumeSeek(t);
1830
+ return true;
1829
1831
  }, finishResumeSeek = function(t) {
1830
1832
  hlsResumeWarmup = false;
1831
1833
  hlsResumeSettling = false;
@@ -1879,6 +1881,9 @@ var require_ckplayer = __commonJS({
1879
1881
  if (!seekTime || !video || seekApplyLock) {
1880
1882
  return;
1881
1883
  }
1884
+ if (hlsResumeSettling && hls) {
1885
+ return;
1886
+ }
1882
1887
  if (!isUndefined(vars["live"]) && (valType(vars["live"]) == "boolean" && vars["live"] || valType(vars["live"]) == "number")) {
1883
1888
  return;
1884
1889
  }
@@ -2224,10 +2229,18 @@ var require_ckplayer = __commonJS({
2224
2229
  seekApplyLock = false;
2225
2230
  decodeRecoverCount = 0;
2226
2231
  hlsScrubbing = false;
2227
- hlsResumeSettling = false;
2232
+ var resumePending = false;
2233
+ if (hlsResumeSettling && hlsResumeTarget > 0) {
2234
+ resumePending = true;
2235
+ }
2236
+ if (!resumePending) {
2237
+ hlsResumeSettling = false;
2238
+ }
2228
2239
  startPendingAutoplay();
2229
2240
  pSliderMouseDown = false;
2230
- hidePlaybackBuffer();
2241
+ if (!resumePending) {
2242
+ hidePlaybackBuffer();
2243
+ }
2231
2244
  if (hlsScrubResumePlay) {
2232
2245
  hlsScrubResumePlay = false;
2233
2246
  try {
@@ -6442,7 +6455,7 @@ var require_ckplayer = __commonJS({
6442
6455
  if (!isRetry && (!vars || vars["cdnFallback"] !== false)) {
6443
6456
  var cdn = typeof window !== "undefined" && window.ckplayerPlusCdn ? window.ckplayerPlusCdn : ckplayerPlusDefaultCdn;
6444
6457
  var m = String(file).match(/\/(hls\.js|flv\.js|mpegts\.js|language)\/([^/?#]+)(?:[?#].*)?$/i);
6445
- if (cdn && cdn.indexOf("1.1.8") === -1 && m) {
6458
+ if (cdn && cdn.indexOf("1.1.10") === -1 && m) {
6446
6459
  if (cdn.slice(-1) !== "/") {
6447
6460
  cdn += "/";
6448
6461
  }
package/dist/react.js CHANGED
@@ -204,7 +204,7 @@ var require_ckplayer = __commonJS({
204
204
  cdnFallback: true
205
205
  // getPath 失败时是否回退到 jsDelivr(内网可设 false,并配置 pluginPath)
206
206
  };
207
- var ckplayerPlusDefaultCdn = "https://cdn.jsdelivr.net/npm/ckplayer-plus@1.1.8/dist/";
207
+ var ckplayerPlusDefaultCdn = "https://cdn.jsdelivr.net/npm/ckplayer-plus@1.1.10/dist/";
208
208
  function ckplayerEmbed(videoObj) {
209
209
  var rightMenu = [
210
210
  {
@@ -429,7 +429,7 @@ var require_ckplayer = __commonJS({
429
429
  }
430
430
  var allowCdn = !vars || vars["cdnFallback"] !== false;
431
431
  var cdn = typeof window !== "undefined" && window.ckplayerPlusCdn ? window.ckplayerPlusCdn : ckplayerPlusDefaultCdn;
432
- if (!allowCdn || !cdn || cdn.indexOf("1.1.8") > -1) {
432
+ if (!allowCdn || !cdn || cdn.indexOf("1.1.10") > -1) {
433
433
  return folder + "/" + file;
434
434
  }
435
435
  if (cdn.slice(-1) !== "/") {
@@ -820,7 +820,7 @@ var require_ckplayer = __commonJS({
820
820
  } });
821
821
  return;
822
822
  } else {
823
- if (vars["plug"] && !canPlay(vstr)) {
823
+ if (vars["plug"] && (vars["preferBuiltinPlug"] || !canPlay(vstr))) {
824
824
  plugPlayer(vstr);
825
825
  } else {
826
826
  if (!existenceObj) {
@@ -832,7 +832,7 @@ var require_ckplayer = __commonJS({
832
832
  } else if (valType(vstr) == "array") {
833
833
  for (i = 0; i < vstr.length; i++) {
834
834
  if (valType(vstr[i]) == "array") {
835
- if (vars["plug"] && !canPlay(vstr[i][0])) {
835
+ if (vars["plug"] && (vars["preferBuiltinPlug"] || !canPlay(vstr[i][0]))) {
836
836
  plugPlayer(vstr[i][0]);
837
837
  } else {
838
838
  var type = ' type="' + vstr[i][1] + '"';
@@ -913,7 +913,6 @@ var require_ckplayer = __commonJS({
913
913
  resumeAt = parseResumeSeekFromVars();
914
914
  }
915
915
  if (resumeAt && resumeAt > 0 && (isUndefined(vars["live"]) || !vars["live"])) {
916
- hlsConf.autoStartLoad = false;
917
916
  maxSeeTime = Math.max(maxSeeTime, resumeAt);
918
917
  if (firstSeekTime < 0) {
919
918
  firstSeekTime = resumeAt;
@@ -930,19 +929,34 @@ var require_ckplayer = __commonJS({
930
929
  hls.on(Hls.Events.MANIFEST_PARSED, function() {
931
930
  if (seekTime > 0 && hlsResumeSettling) {
932
931
  hlsStartPositionUsed = true;
933
- hlsSeekTo(seekTime, true);
934
932
  if (C["buffer"]) {
935
933
  C["buffer"].show();
936
934
  }
937
- setTimeout(function() {
938
- if (!hlsResumeSettling) {
935
+ var doResumeSeek = function() {
936
+ if (!hlsResumeSettling || !seekTime) {
939
937
  return;
940
938
  }
941
- var t = seekTime > 0 ? seekTime : hlsResumeTarget;
942
- if (t > 0 && !tryCompleteResumeSeek(t) && hlsResumeSettling) {
939
+ var t = seekTime;
940
+ if (video && video.seekable && video.seekable.length > 0 && video.seekable.end(0) >= t) {
943
941
  finishResumeSeek(t);
942
+ return;
943
+ }
944
+ seekRetryCount++;
945
+ if (seekRetryCount <= 100) {
946
+ if (seekRetryTimer) {
947
+ clearTimeout(seekRetryTimer);
948
+ }
949
+ seekRetryTimer = setTimeout(doResumeSeek, 50);
950
+ } else {
951
+ finishResumeSeek(t);
952
+ }
953
+ };
954
+ doResumeSeek();
955
+ setTimeout(function() {
956
+ if (hlsResumeSettling && seekTime > 0) {
957
+ finishResumeSeek(seekTime);
944
958
  }
945
- }, 8e3);
959
+ }, 1e4);
946
960
  return;
947
961
  }
948
962
  if (!hlsStartPositionUsed) {
@@ -1003,9 +1017,9 @@ var require_ckplayer = __commonJS({
1003
1017
  }
1004
1018
  }
1005
1019
  }
1006
- CT.error = { code, message: message2 };
1007
- eventTarget("error", CT.error);
1008
1020
  if (fatal) {
1021
+ CT.error = { code, message: message2 };
1022
+ eventTarget("error", CT.error);
1009
1023
  showError();
1010
1024
  }
1011
1025
  });
@@ -1798,28 +1812,16 @@ var require_ckplayer = __commonJS({
1798
1812
  if (!timeInBuffered(t)) {
1799
1813
  return false;
1800
1814
  }
1801
- var loadStart = hlsPriorLoadTime(t);
1802
- try {
1803
- var buf = video.buffered;
1804
- for (var i = 0; i < buf.length; i++) {
1805
- var start = buf.start(i);
1806
- var end = buf.end(i);
1807
- if (loadStart >= start - 0.35 && t <= end + 0.15) {
1808
- return true;
1809
- }
1810
- }
1811
- } catch (event2) {
1812
- }
1813
- return false;
1815
+ return true;
1814
1816
  }, tryCompleteResumeSeek = function(t) {
1815
1817
  if (!hlsResumeSettling || isNaN(t) || t <= 0 || !video) {
1816
1818
  return false;
1817
1819
  }
1818
- if (hlsCanSafelySeekTo(t)) {
1819
- finishResumeSeek(t);
1820
- return true;
1820
+ if (!timeInBuffered(t)) {
1821
+ return false;
1821
1822
  }
1822
- return false;
1823
+ finishResumeSeek(t);
1824
+ return true;
1823
1825
  }, finishResumeSeek = function(t) {
1824
1826
  hlsResumeWarmup = false;
1825
1827
  hlsResumeSettling = false;
@@ -1873,6 +1875,9 @@ var require_ckplayer = __commonJS({
1873
1875
  if (!seekTime || !video || seekApplyLock) {
1874
1876
  return;
1875
1877
  }
1878
+ if (hlsResumeSettling && hls) {
1879
+ return;
1880
+ }
1876
1881
  if (!isUndefined(vars["live"]) && (valType(vars["live"]) == "boolean" && vars["live"] || valType(vars["live"]) == "number")) {
1877
1882
  return;
1878
1883
  }
@@ -2218,10 +2223,18 @@ var require_ckplayer = __commonJS({
2218
2223
  seekApplyLock = false;
2219
2224
  decodeRecoverCount = 0;
2220
2225
  hlsScrubbing = false;
2221
- hlsResumeSettling = false;
2226
+ var resumePending = false;
2227
+ if (hlsResumeSettling && hlsResumeTarget > 0) {
2228
+ resumePending = true;
2229
+ }
2230
+ if (!resumePending) {
2231
+ hlsResumeSettling = false;
2232
+ }
2222
2233
  startPendingAutoplay();
2223
2234
  pSliderMouseDown = false;
2224
- hidePlaybackBuffer();
2235
+ if (!resumePending) {
2236
+ hidePlaybackBuffer();
2237
+ }
2225
2238
  if (hlsScrubResumePlay) {
2226
2239
  hlsScrubResumePlay = false;
2227
2240
  try {
@@ -6436,7 +6449,7 @@ var require_ckplayer = __commonJS({
6436
6449
  if (!isRetry && (!vars || vars["cdnFallback"] !== false)) {
6437
6450
  var cdn = typeof window !== "undefined" && window.ckplayerPlusCdn ? window.ckplayerPlusCdn : ckplayerPlusDefaultCdn;
6438
6451
  var m = String(file).match(/\/(hls\.js|flv\.js|mpegts\.js|language)\/([^/?#]+)(?:[?#].*)?$/i);
6439
- if (cdn && cdn.indexOf("1.1.8") === -1 && m) {
6452
+ if (cdn && cdn.indexOf("1.1.10") === -1 && m) {
6440
6453
  if (cdn.slice(-1) !== "/") {
6441
6454
  cdn += "/";
6442
6455
  }