index1.html 4.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154
  1. <!DOCTYPE html>
  2. <html lang="en">
  3. <head>
  4. <meta charset="UTF-8">
  5. <title>player</title>
  6. </head>
  7. <body style="text-align: center; margin: 0">
  8. <video height="100%" id="video"></video>
  9. <canvas id="canvas" ></canvas>
  10. <canvas id="draw" ></canvas>
  11. </body>
  12. <!--<script src="./node_modules/file-saver/FileSaver.js"/>-->
  13. <!--<script src="./src/md5.js" type="text/javascript"></script>-->
  14. <script type="module">
  15. import Player from "./src/player.js";
  16. window.onload = function() {
  17. document.addEventListener('click', onDocumentClick);
  18. document.addEventListener('dblclick', onDocumenDblClick);
  19. let video = document.getElementsByTagName('body')[0];
  20. video.style.height = data[3];
  21. };
  22. var clickTimeId;
  23. let str = location.href;
  24. let num = str.indexOf('?');
  25. str = str.substr(num+1);
  26. let data = str.split('&');
  27. let isShow = Number(data[0]);
  28. console.log(isShow);
  29. let video = document.getElementsByTagName('body')[0];
  30. console.log(video);
  31. video.dblclick = function () {
  32. }
  33. function onDocumentClick(event) {
  34. // 取消上次延时未执行的方法
  35. clearTimeout(clickTimeId);
  36. //执行延时
  37. clickTimeId = setTimeout(function() {
  38. //此处为单击事件要执行的代码
  39. console.log("鼠标单击");
  40. }, 250);
  41. }
  42. function onDocumenDblClick(event) {
  43. // 取消上次延时未执行的方法
  44. clearTimeout(clickTimeId);
  45. console.log("鼠标双击");
  46. if(isShow === 1) {
  47. console.log(2222);
  48. window.parent.postMessage({
  49. cmd: 'returnDate',
  50. params: {
  51. wsUrl: data[1],
  52. rtspUrl: data[2]
  53. }
  54. }, '*');
  55. }
  56. }
  57. // let data = str.split('cameraOne=')[1];
  58. // let data1 = JSON.parse(data);
  59. const options = {
  60. video: document.getElementById('video'),
  61. canvas: document.getElementById('canvas'),
  62. drawer: document.getElementById('draw'),
  63. // wsUrl:'ws://115.238.57.190:10080/camera_relay?tcpaddr=admin%3Ahm123456%40192.168.1.123',
  64. // rtspUrl: 'rtsp://admin:hm123456@192.168.1.123',
  65. user: '',
  66. pwd: ''
  67. };
  68. options.wsUrl = data[1];
  69. options.rtspUrl = data[2];
  70. let player = new Player(options);
  71. player.init();
  72. player.on('error', function () {
  73. console.log('连接失败')
  74. });
  75. player.on('noStream', function () {
  76. console.log('noStream');
  77. player.close();
  78. player = null;
  79. player = new Player(options);
  80. player.init();
  81. player.connect();
  82. });
  83. player.on('canplay', function () {
  84. //player.close();
  85. });
  86. player.on('initialCompleted', function () {
  87. // let data = [[
  88. // {x: 2861, y: 4395},
  89. // {x: 6403, y: 4013},
  90. // {x: 3260, y: 7986},
  91. // {x: 640, y: 6252}
  92. // ]];
  93. // console.log('initialCompleted')
  94. // player.setROI(data);
  95. });
  96. player.on('ROIFinished', function () {
  97. console.log('ROIFinished');
  98. });
  99. player.connect();
  100. document.getElementById('close').onclick = ()=>{
  101. player.close();
  102. };
  103. document.getElementById('ROIreset').onclick = () =>{
  104. player.resetROI();
  105. };
  106. document.getElementById('ROIset').onclick = () =>{
  107. let data = [[
  108. {x: 2861, y: 4395},
  109. {x: 6403, y: 4013},
  110. {x: 3260, y: 7986},
  111. {x: 640, y: 6252}
  112. ]];
  113. player.setROI(data);
  114. };
  115. document.getElementById('ROIdata').onclick = () =>{
  116. let result = player.getROIData();
  117. console.log(result)
  118. };
  119. document.getElementById('ROIsetNum').onclick = ()=> {
  120. let num = document.getElementById('ROINum').value;
  121. player.setPolygonNum(num);
  122. }
  123. document.getElementById('ROIChange1').onclick = ()=> {
  124. player.changeROIType('Polygon1');
  125. }
  126. document.getElementById('ROIChange2').onclick = ()=> {
  127. player.changeROIType('Polygon2');
  128. }
  129. document.getElementById('ROIChange3').onclick = ()=> {
  130. player.changeROIType('Polygon1Line1');
  131. }
  132. document.getElementById('ROIChange4').onclick = ()=> {
  133. player.changeROIType('Line2');
  134. }
  135. </script>
  136. <script>
  137. </script>
  138. </html>