@vtx/player 0.0.21 → 0.0.22
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/lib/utils/index.js +1 -1
- package/lib/utils/index.js.map +1 -1
- package/package.json +1 -1
package/lib/utils/index.js
CHANGED
|
@@ -56,7 +56,7 @@ var initProtocol = function initProtocol(url) {
|
|
|
56
56
|
var path = url.substring(url.indexOf('/'));
|
|
57
57
|
src = '/visProxy/' + ipPort + '/play' + path;
|
|
58
58
|
} else if (url.startsWith("ws:")) {
|
|
59
|
-
url = url.replace('
|
|
59
|
+
url = url.replace('ws://', '');
|
|
60
60
|
|
|
61
61
|
var _ipPort = url.substring(0, url.indexOf('/'));
|
|
62
62
|
|
package/lib/utils/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["TimeFormat","guidGenerator","S4","Math","random","toString","substring","initProtocol","url","src","isHttps","document","location","protocol","startsWith","replace","ipPort","indexOf","path","window","host","getPlayerParams","live","startTime","endTime","playerUrl","playerType","split","Base64","encode","getFlvListUrl","endsWith","type","getUrlTableData","data","result","list","map","item","i","beginTime","moment","totalSeconds","diff","index","deviceName","channelName","format","params","size","bytesToMegaBytes","duration","secondsToString","downloadUrl","playbackUrl","bytes","pow","toFixed","total","hour","floor","minute","second","secondsToTime","getHKTimeString","time","getHKListUrl","totalUrl","query","urlParams","URLSearchParams","set","getUrlParam","key","href","paramObj","matchList","match","len","length","r"],"sources":["utils/index.js"],"sourcesContent":["import { Base64 } from 'js-base64';\nimport moment from 'moment';\n/** 时间格式枚举 */\nexport var TimeFormat;\n(function (TimeFormat) {\n TimeFormat[\"default\"] = \"YYYY-MM-DDTHH:mm:ss\";\n TimeFormat[\"params\"] = \"YYYY-MM-DD HH:mm:ss\";\n TimeFormat[\"url\"] = \"YYYYMMDDTHHmmss\";\n})(TimeFormat || (TimeFormat = {}));\n/** 生成随机ID */\nexport const guidGenerator = () => {\n const S4 = function () {\n return (((1 + Math.random()) * 0x10000) | 0).toString(16).substring(1);\n };\n return S4() + S4() + '-' + S4() + '-' + S4() + '-' + S4() + '-' + S4() + S4() + S4();\n};\nconst initProtocol = (url) => {\n let src = url;\n const isHttps = 'https:' === document.location.protocol;\n if (isHttps) {\n if (url.startsWith(\"http:\")) {\n url = url.replace('http://', '');\n const ipPort = url.substring(0, url.indexOf('/'));\n const path = url.substring(url.indexOf('/'));\n src = '/visProxy/' + ipPort + '/play' + path;\n }\n else if (url.startsWith(\"ws:\")) {\n url = url.replace('http://', '');\n const ipPort = url.substring(0, url.indexOf('/'));\n const path = url.substring(url.indexOf('/'));\n src = 'wss://' + window.location.host + '/visProxy/' + ipPort + '/play' + path;\n }\n }\n return src;\n};\n/**\n * 获取视频直播地址及格式\n * @param url\n * @returns\n */\nexport const getPlayerParams = (url, live, startTime, endTime) => {\n let playerUrl = url;\n let playerType = 'flv';\n if (url.startsWith('ws://')) {\n playerType = 'hk_ws';\n if (live) {\n playerUrl = url;\n }\n else {\n playerUrl = url.split('?')[0];\n }\n }\n if (url.startsWith('rtsp://')) {\n playerType = 'flv';\n if (live) {\n playerUrl = `/cloud/vic/convert/flv/live.flv?url=${Base64.encode(url)}`;\n }\n else {\n playerUrl = `/cloud/vic/convert/flv/live.flv?url=${Base64.encode(getFlvListUrl(url, startTime, endTime))}`;\n }\n }\n if (url.endsWith('.m3u8')) {\n playerUrl = url;\n playerType = 'hls';\n }\n return { url: initProtocol(playerUrl), type: playerType };\n};\n/**\n * 获取历史回放表格数据\n * @param data\n * @returns\n */\nexport const getUrlTableData = (data) => {\n const result = data.list.map((item, i) => {\n const beginTime = moment(item.beginTime);\n const endTime = moment(item.endTime);\n const totalSeconds = moment(endTime).diff(moment(beginTime), 'seconds');\n return {\n index: i + 1,\n deviceName: data.deviceName,\n channelName: data.channelName,\n beginTime: beginTime.format(TimeFormat.params),\n endTime: endTime.format(TimeFormat.params),\n size: bytesToMegaBytes(item.size),\n duration: secondsToString(totalSeconds),\n downloadUrl: '',\n url: item.playbackUrl || '',\n };\n });\n return result;\n};\n/**\n * bytes转换mb\n * @param bytes\n * @returns\n */\nconst bytesToMegaBytes = (bytes) => `${(bytes / Math.pow(1024, 2)).toFixed(2)}MB`;\n/**\n * 秒数=>0时0分0秒\n * @param total\n * @returns\n */\nconst secondsToString = (total) => {\n const hour = Math.floor(total / 3600);\n const minute = Math.floor((total % 3600) / 60);\n const second = Math.floor(total % 60);\n const result = `${hour > 0 ? hour + '小时' : ''}${minute > 0 ? minute + '分' : ''}${second > 0 ? second + '秒' : ''}`;\n return result;\n};\n/**\n * 秒数=>00:00:00\n * @param total\n * @returns\n */\nexport const secondsToTime = (total) => {\n const hour = Math.floor(total / 3600);\n const minute = Math.floor((total % 3600) / 60);\n const second = Math.floor(total % 60);\n const result = `${hour >= 10 ? hour : '0' + hour}:${minute >= 10 ? minute : '0' + minute}:${second >= 10 ? second : '0' + second}`;\n return result;\n};\n/**\n * 获取海康时间参数\n * @param time 时间\n * @returns\n */\nexport const getHKTimeString = (time) => {\n return moment(time).format(TimeFormat.default) + 'Z';\n};\n/**\n * 获取海康分段播放地址\n * @param totalUrl 总播放地址\n * @param startTime 开始时间\n * @param endTime 结束时间\n * @returns\n */\nexport const getHKListUrl = (totalUrl, startTime, endTime) => {\n const [url, query] = totalUrl.split('?');\n const urlParams = new URLSearchParams(query);\n urlParams.set('beginTime', getHKTimeString(startTime));\n urlParams.set('endTime', getHKTimeString(endTime));\n return `${url}?${urlParams.toString()}`;\n};\n/**\n *\n * 获取flv格式分段播放地址\n * @param totalUrl 总播放地址\n * @param startTime 开始时间\n * @param endTime 结束时间\n * @returns\n */\nexport const getFlvListUrl = (totalUrl, startTime, endTime) => {\n const [url, query] = totalUrl.split('?');\n const urlParams = new URLSearchParams(query);\n urlParams.set('beginTime', moment(startTime).format(TimeFormat.url));\n urlParams.set('endTime', moment(endTime).format(TimeFormat.url));\n return `${url}?${urlParams.toString()}`;\n};\n/**\n * 获取地址栏中的参数信息\n * @param key 字段key\n * @param href 链接\n * @returns 字段值\n */\nexport const getUrlParam = (key, href = window.location.href) => {\n const paramObj = {};\n const matchList = href.match(/([^\\?&]+)=([^\\?&#]+)/g) || [];\n for (let i = 0, len = matchList.length; i < len; i++) {\n const r = matchList[i].match(/([^\\?&]+)=([^\\?&]+)/);\n paramObj[r[1]] = r[2];\n }\n if (key) {\n return paramObj[key];\n }\n else {\n return paramObj;\n }\n};\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","names":["TimeFormat","guidGenerator","S4","Math","random","toString","substring","initProtocol","url","src","isHttps","document","location","protocol","startsWith","replace","ipPort","indexOf","path","window","host","getPlayerParams","live","startTime","endTime","playerUrl","playerType","split","Base64","encode","getFlvListUrl","endsWith","type","getUrlTableData","data","result","list","map","item","i","beginTime","moment","totalSeconds","diff","index","deviceName","channelName","format","params","size","bytesToMegaBytes","duration","secondsToString","downloadUrl","playbackUrl","bytes","pow","toFixed","total","hour","floor","minute","second","secondsToTime","getHKTimeString","time","getHKListUrl","totalUrl","query","urlParams","URLSearchParams","set","getUrlParam","key","href","paramObj","matchList","match","len","length","r"],"sources":["utils/index.js"],"sourcesContent":["import { Base64 } from 'js-base64';\nimport moment from 'moment';\n/** 时间格式枚举 */\nexport var TimeFormat;\n(function (TimeFormat) {\n TimeFormat[\"default\"] = \"YYYY-MM-DDTHH:mm:ss\";\n TimeFormat[\"params\"] = \"YYYY-MM-DD HH:mm:ss\";\n TimeFormat[\"url\"] = \"YYYYMMDDTHHmmss\";\n})(TimeFormat || (TimeFormat = {}));\n/** 生成随机ID */\nexport const guidGenerator = () => {\n const S4 = function () {\n return (((1 + Math.random()) * 0x10000) | 0).toString(16).substring(1);\n };\n return S4() + S4() + '-' + S4() + '-' + S4() + '-' + S4() + '-' + S4() + S4() + S4();\n};\nconst initProtocol = (url) => {\n let src = url;\n const isHttps = 'https:' === document.location.protocol;\n if (isHttps) {\n if (url.startsWith(\"http:\")) {\n url = url.replace('http://', '');\n const ipPort = url.substring(0, url.indexOf('/'));\n const path = url.substring(url.indexOf('/'));\n src = '/visProxy/' + ipPort + '/play' + path;\n }\n else if (url.startsWith(\"ws:\")) {\n url = url.replace('ws://', '');\n const ipPort = url.substring(0, url.indexOf('/'));\n const path = url.substring(url.indexOf('/'));\n src = 'wss://' + window.location.host + '/visProxy/' + ipPort + '/play' + path;\n }\n }\n return src;\n};\n/**\n * 获取视频直播地址及格式\n * @param url\n * @returns\n */\nexport const getPlayerParams = (url, live, startTime, endTime) => {\n let playerUrl = url;\n let playerType = 'flv';\n if (url.startsWith('ws://')) {\n playerType = 'hk_ws';\n if (live) {\n playerUrl = url;\n }\n else {\n playerUrl = url.split('?')[0];\n }\n }\n if (url.startsWith('rtsp://')) {\n playerType = 'flv';\n if (live) {\n playerUrl = `/cloud/vic/convert/flv/live.flv?url=${Base64.encode(url)}`;\n }\n else {\n playerUrl = `/cloud/vic/convert/flv/live.flv?url=${Base64.encode(getFlvListUrl(url, startTime, endTime))}`;\n }\n }\n if (url.endsWith('.m3u8')) {\n playerUrl = url;\n playerType = 'hls';\n }\n return { url: initProtocol(playerUrl), type: playerType };\n};\n/**\n * 获取历史回放表格数据\n * @param data\n * @returns\n */\nexport const getUrlTableData = (data) => {\n const result = data.list.map((item, i) => {\n const beginTime = moment(item.beginTime);\n const endTime = moment(item.endTime);\n const totalSeconds = moment(endTime).diff(moment(beginTime), 'seconds');\n return {\n index: i + 1,\n deviceName: data.deviceName,\n channelName: data.channelName,\n beginTime: beginTime.format(TimeFormat.params),\n endTime: endTime.format(TimeFormat.params),\n size: bytesToMegaBytes(item.size),\n duration: secondsToString(totalSeconds),\n downloadUrl: '',\n url: item.playbackUrl || '',\n };\n });\n return result;\n};\n/**\n * bytes转换mb\n * @param bytes\n * @returns\n */\nconst bytesToMegaBytes = (bytes) => `${(bytes / Math.pow(1024, 2)).toFixed(2)}MB`;\n/**\n * 秒数=>0时0分0秒\n * @param total\n * @returns\n */\nconst secondsToString = (total) => {\n const hour = Math.floor(total / 3600);\n const minute = Math.floor((total % 3600) / 60);\n const second = Math.floor(total % 60);\n const result = `${hour > 0 ? hour + '小时' : ''}${minute > 0 ? minute + '分' : ''}${second > 0 ? second + '秒' : ''}`;\n return result;\n};\n/**\n * 秒数=>00:00:00\n * @param total\n * @returns\n */\nexport const secondsToTime = (total) => {\n const hour = Math.floor(total / 3600);\n const minute = Math.floor((total % 3600) / 60);\n const second = Math.floor(total % 60);\n const result = `${hour >= 10 ? hour : '0' + hour}:${minute >= 10 ? minute : '0' + minute}:${second >= 10 ? second : '0' + second}`;\n return result;\n};\n/**\n * 获取海康时间参数\n * @param time 时间\n * @returns\n */\nexport const getHKTimeString = (time) => {\n return moment(time).format(TimeFormat.default) + 'Z';\n};\n/**\n * 获取海康分段播放地址\n * @param totalUrl 总播放地址\n * @param startTime 开始时间\n * @param endTime 结束时间\n * @returns\n */\nexport const getHKListUrl = (totalUrl, startTime, endTime) => {\n const [url, query] = totalUrl.split('?');\n const urlParams = new URLSearchParams(query);\n urlParams.set('beginTime', getHKTimeString(startTime));\n urlParams.set('endTime', getHKTimeString(endTime));\n return `${url}?${urlParams.toString()}`;\n};\n/**\n *\n * 获取flv格式分段播放地址\n * @param totalUrl 总播放地址\n * @param startTime 开始时间\n * @param endTime 结束时间\n * @returns\n */\nexport const getFlvListUrl = (totalUrl, startTime, endTime) => {\n const [url, query] = totalUrl.split('?');\n const urlParams = new URLSearchParams(query);\n urlParams.set('beginTime', moment(startTime).format(TimeFormat.url));\n urlParams.set('endTime', moment(endTime).format(TimeFormat.url));\n return `${url}?${urlParams.toString()}`;\n};\n/**\n * 获取地址栏中的参数信息\n * @param key 字段key\n * @param href 链接\n * @returns 字段值\n */\nexport const getUrlParam = (key, href = window.location.href) => {\n const paramObj = {};\n const matchList = href.match(/([^\\?&]+)=([^\\?&#]+)/g) || [];\n for (let i = 0, len = matchList.length; i < len; i++) {\n const r = matchList[i].match(/([^\\?&]+)=([^\\?&]+)/);\n paramObj[r[1]] = r[2];\n }\n if (key) {\n return paramObj[key];\n }\n else {\n return paramObj;\n }\n};\n"],"mappings":"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"}
|