| | |
| | | import { createApp } from 'vue' |
| | | import ElementPlus from 'element-plus' |
| | | import ElementPlus, { MessageParams } from 'element-plus' |
| | | import 'element-plus/dist/index.css' |
| | | import router from './router/index' |
| | | import "tracking"; |
| | |
| | | } |
| | | } |
| | | // 要重写initUserMedia_ 方法,因为chrome的底层api已做调整 |
| | | window.tracking.initUserMedia_ = function (element, opt_options) { |
| | | window.tracking.initUserMedia_ = function (element: { srcObject: any; src: string; }, opt_options: { audio: any; }) { |
| | | const options = { |
| | | video: true, |
| | | audio: !!(opt_options && opt_options.audio) |
| | | }; |
| | | getUserMedia(options, function (stream) { |
| | | getUserMedia(options, function (stream: Blob | MediaSource) { |
| | | try { |
| | | element.srcObject = stream; |
| | | } catch (err) { |
| | | element.src = window.URL.createObjectURL(stream); |
| | | } |
| | | }, function (e) { |
| | | Notify(e.message); |
| | | }, function (e: { message: MessageParams; }) { |
| | | ElMessage(e.message); |
| | | } |
| | | ); |
| | | }; |
| | | // 重写视频捕获方法,因为不能停止 stop无效的bug |
| | | window.tracking.trackVideo_ = function (element, tracker) { |
| | | window.tracking.trackVideo_ = function (element: CanvasImageSource, tracker: tracking.Tracker) { |
| | | console.log('trackVideo_'); |
| | | var canvas = document.createElement('canvas'); |
| | | var context = canvas.getContext('2d'); |
| | | var width; |
| | | var height; |
| | | var width: number; |
| | | var height: number; |
| | | |
| | | var resizeCanvas_ = function () { |
| | | width = element.offsetWidth; |
| | |
| | | resizeCanvas_(); |
| | | element.addEventListener('resize', resizeCanvas_); |
| | | |
| | | var requestId; |
| | | var requestId: number; |
| | | var stopped = false; |
| | | var requestAnimationFrame_ = function () { |
| | | requestId = window.requestAnimationFrame(function () { |