index.html 30 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866
  1. <!doctype html>
  2. <html lang="zh" xmlns:th="http://www.thymeleaf.org">
  3. <head>
  4. <title>数字伊通电视墙</title>
  5. <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
  6. <meta http-equiv="Pragma" content="no-cache" />
  7. <meta http-equiv="Cache-Control" content="no-cache, must-revalidate" />
  8. <meta http-equiv="Expires" content="0" />
  9. <link th:href="@{/v/camera/css/jquery-ui.css}" rel="stylesheet">
  10. <link th:href="@{/v/camera/css/demo.css}" rel="stylesheet">
  11. <link rel="shortcut icon" href="../../static/sooka.ico" th:href="@{/sooka.ico}"/>
  12. <script th:src="@{/v/camera/lib/jquery.js}"></script>
  13. <script th:src="@{/v/camera/lib/jquery-ui.js}"></script>
  14. <script th:src="@{/v/camera/lib/json2.js}"></script>
  15. <script th:inline="javascript">var ctx = [[@{/}]];</script>
  16. </head>
  17. <script>
  18. // document.write("<link type='text/css' href='../css/demo.css?version=" + new Date().getTime() + "' rel='stylesheet' />");
  19. </script>
  20. <body>
  21. <div class="header_div">数字伊通视频共享总平台</div>
  22. <ul class="top_ul">
  23. <li class="on"><a>电视墙</a></li>
  24. <li id="jkd"><a>指挥端</a></li>
  25. <li id="gld"><a>管理端</a></li>
  26. <li id="dsj"><a>大数据端</a></li>
  27. </ul>
  28. <div class="spjk_div">
  29. <div class="left con_left">
  30. <ul class="sp_list" >
  31. <li th:each="device : ${device_list}" th:text="${device['name']}" th:onclick="playplay([[${device.deviceIp}]])"></li>
  32. </ul>
  33. </div>
  34. <div class="left con_cont">
  35. <div id="divPlugin" class="plugin">
  36. </div>
  37. <!--
  38. <fieldset class="login">
  39. <legend>开启注册监听</legend>
  40. <table cellpadding="0" cellspacing="3" border="0">
  41. <tr>
  42. <td class="tt">服务器IP</td>
  43. <td><input id="serverip" type="text" class="txt" value="10.33.12.59" /></td>
  44. <td class="tt">端口</td>
  45. <td><input id="serverport" type="text" class="txt" value="9500" /></td>
  46. </tr>
  47. <tr>
  48. <td colspan="4">
  49. <input type="button" value="开启注册监听" onclick="startRegisterListen()" />
  50. </td>
  51. </tr>
  52. </table>
  53. </fieldset>
  54. <-->
  55. <fieldset class="login hide">
  56. <legend>登录</legend>
  57. <table cellpadding="0" cellspacing="3" border="0">
  58. <tr>
  59. <td class="tt">IP地址</td>
  60. <td><input id="loginip" type="text" class="txt" value="172.31.17.131" /></td>
  61. <td class="tt">端口号</td>
  62. <td><input id="port" type="text" class="txt" value="80" /></td>
  63. </tr>
  64. <tr>
  65. <td class="tt">协议类型</td>
  66. <td >
  67. <select id="protocolType" class="sel" onchange="changeProtocol(this.value);">
  68. <option value="0">TCP</option>
  69. <option value="2">SERVER_CONN</option>
  70. <option value="4">UDP</option>
  71. <option value="3">组播</option>
  72. </select>
  73. </td>
  74. </tr>
  75. <tr>
  76. <td class="tt">用户名</td>
  77. <td><input id="username" type="text" class="txt" value="admin" /></td>
  78. <td class="tt">密码</td>
  79. <td><input id="password" type="password" class="txt" value="admin123" /></td>
  80. </tr>
  81. <tr>
  82. <td class="tt">RTSP端口</td>
  83. <td ><input id="rtspport" type="text" class="txt" value="80" />(可选参数)</td>
  84. <td colspan="4">
  85. <input type="button" class="btn" value="登录" onclick="clickLogin();" />
  86. <input type="button" class="btn" value="退出" onclick="clickLogout();" />
  87. </td>
  88. </tr>
  89. <tr>
  90. <td class="tt">已登录设备</td>
  91. <td>
  92. <select id="ips" class="sel" onchange="switchDeviceInfo(this.value);"></select>
  93. </td>
  94. <td class="tt">通道列表</td>
  95. <td>
  96. <select id="channels" class="sel"></select>
  97. </td>
  98. </tr>
  99. <tr>
  100. <td class="tt">窗口分割数</td>
  101. <td >
  102. <select id="wndNum" class="sel2" onchange="changeWndNum(this.value);">
  103. <option value="1">1x1</option>
  104. <option value="2" selected>2x2</option>
  105. <option value="3">3x3</option>
  106. <option value="4">4x4</option>
  107. <option value="5">5x5</option>
  108. <option value="6">6x6</option>
  109. </select>
  110. </td>
  111. <td colspan="4">
  112. <input type="button" class="btn" value="全屏" onclick="clickFullScreen();" />
  113. </td>
  114. </tr>
  115. <tr>
  116. <td class="tt">窗口分割自定义</td>
  117. <td >
  118. <select id="wndRow" class="sel2" onchange="changeWndRow(this.value);">
  119. <option value="1">1</option>
  120. <option value="2" selected>2</option>
  121. <option value="3">3</option>
  122. <option value="4">4</option>
  123. <option value="5">5</option>
  124. <option value="6">6</option>
  125. </select>
  126. </td>
  127. <td >
  128. <select id="wndCol" class="sel2" onchange="changeWndCol(this.value);">
  129. <option value="1">1</option>
  130. <option value="2" selected>2</option>
  131. <option value="3">3</option>
  132. <option value="4">4</option>
  133. <option value="5">5</option>
  134. <option value="6">6</option>
  135. </select>
  136. </td>
  137. </tr>
  138. </table>
  139. </fieldset>
  140. <fieldset class="localconfig hide">
  141. <legend>本地配置</legend>
  142. <table cellpadding="0" cellspacing="3" border="0">
  143. <tr>
  144. <td class="tt">播放性能</td>
  145. <td>
  146. <select id="netsPreach" name="netsPreach" class="sel">
  147. <option value="0">最短延时</option>
  148. <option value="1">实时性好</option>
  149. <option value="2">均衡</option>
  150. <option value="3">流畅性好</option>
  151. </select>
  152. </td>
  153. <td class="tt">图像尺寸</td>
  154. <td>
  155. <select id="wndSize" name="wndSize" class="sel">
  156. <option value="0">充满</option>
  157. <option value="1">4:3</option>
  158. <option value="2">16:9</option>
  159. </select>
  160. </td>
  161. </tr>
  162. <tr>
  163. <td class="tt">规则信息</td>
  164. <td>
  165. <select id="rulesInfo" name="rulesInfo" class="sel">
  166. <option value="1">启用</option>
  167. <option value="0">禁用</option>
  168. </select>
  169. </td>
  170. <td class="tt">抓图文件格式</td>
  171. <td>
  172. <select id="captureFileFormat" name="captureFileFormat" class="sel">
  173. <option value="0">BMP</option>
  174. <option value="1">JEPG</option>
  175. </select>
  176. </td>
  177. </tr>
  178. <tr>
  179. <td class="tt">录像文件保存路径</td>
  180. <td colspan="3"><input id="LiveRecord" type="text" class="txt" />&nbsp;<input type="button" class="btn" value="浏览" onclick="clickOpenFileDlg('LiveRecord');" /></td>
  181. </tr>
  182. <tr>
  183. <td class="tt">回放下载保存路径</td>
  184. <td colspan="3"><input id="Download" type="text" class="txt" />&nbsp;<input type="button" class="btn" value="浏览" onclick="clickOpenFileDlg('Download');" /></td>
  185. </tr>
  186. <tr>
  187. <td class="tt">预览抓图保存路径</td>
  188. <td colspan="3"><input id="LiveSnapshot" type="text" class="txt" />&nbsp;<input type="button" class="btn" value="浏览" onclick="clickOpenFileDlg('LiveSnapshot');" /></td>
  189. </tr>
  190. <tr>
  191. <td class="tt">回放抓图保存路径</td>
  192. <td colspan="3"><input id="PlaybackPicPath" type="text" class="txt" />&nbsp;<input type="button" class="btn" value="浏览" onclick="clickOpenFileDlg('PlaybackPicPath');" /></td>
  193. </tr>
  194. <tr>
  195. <td class="tt">回放剪辑保存路径</td>
  196. <td colspan="3"><input id="PlaybackFilePath" type="text" class="txt" />&nbsp;<input type="button" class="btn" value="浏览" onclick="clickOpenFileDlg('playbackFilePath');" /></td>
  197. </tr>
  198. </table>
  199. </fieldset>
  200. <fieldset class="operate hide">
  201. <legend>操作信息</legend>
  202. <div id="opinfo" class="opinfo"></div>
  203. </fieldset>
  204. </div>
  205. <div class="right con_right">
  206. <fieldset class="preview hide">
  207. <legend>预览</legend>
  208. <table cellpadding="0" cellspacing="3" border="0">
  209. <tr>
  210. <td class="tt" >码流类型</td>
  211. <td >
  212. <select id="streamtype" class="sel2" onchange="changeStreamType(this.value);">
  213. <option value="1">主码流</option>
  214. <option value="2">子码流</option>
  215. </select>
  216. </td>
  217. <td>
  218. </td>
  219. </tr>
  220. <tr>
  221. <td class="tt" >播放窗口选择</td>
  222. <td >
  223. <select id="winMode" class="sel2" onchange="changeWinMode(this.value);">
  224. <option value="0">选中窗口</option>
  225. <option value="1">指定窗口</option>
  226. </select>
  227. <select style="margin-top: 5px;" id="winIndex" class="sel2" onchange="changeWndIndex(this.value);">
  228. </select>
  229. </td>
  230. </tr>
  231. <tr><td height="5"></td></tr>
  232. <tr>
  233. <td width="50%" >
  234. <input type="button" class="btn" value="开始预览" onclick="clickStartRealPlay();" />
  235. </td>
  236. <td width="50%" >
  237. <input type="button" class="btn" value="停止预览" onclick="clickStopRealPlay();" />
  238. </td>
  239. </tr>
  240. <tr>
  241. <td >
  242. <input type="button" class="btn" value="播放所有" onclick="clickStartAllRealPlay();" />
  243. </td>
  244. <td >
  245. <input type="button" class="btn" value="关闭所有" onclick="clickStopAllRealPlay();" />
  246. </td>
  247. </tr>
  248. <tr>
  249. <td >
  250. <input type="button" class="btn" value="开始对讲" onclick="clickStartVoiceTalk();" />
  251. </td>
  252. <td >
  253. <input type="button" class="btn" value="停止对讲" onclick="clickStopVoiceTalk();" />
  254. </td>
  255. </tr>
  256. <tr>
  257. <td >
  258. <input type="button" class="btn" value="开启智能" onclick="enableIVS();" />
  259. </td>
  260. <td >
  261. <input type="button" class="btn" value="停止智能" onclick="disableIVS();" />
  262. </td>
  263. </tr>
  264. </table>
  265. </fieldset>
  266. <fieldset class="preview hide">
  267. <legend>音视频操作</legend>
  268. <div id="tabs_control">
  269. <ul>
  270. <li><a href="#tabs-1">本地操作</a></li>
  271. <li><a href="#tabs-2">聚集控制</a></li>
  272. </ul>
  273. <div id="tabs-1">
  274. <table cellpadding="0" cellspacing="3" border="0">
  275. <tr>
  276. <td class="tt">
  277. <input type="button" class="btn" value="打开声音" onclick="clickOpenSound();" />
  278. </td>
  279. <td >
  280. <input type="button" class="btn" value="关闭声音" onclick="clickCloseSound();" />
  281. </td>
  282. <td>
  283. </td>
  284. </tr>
  285. <tr>
  286. <td>
  287. <input type="button" class="btn" value="抓图" onclick="clickCapturePic();" />
  288. </td>
  289. </tr>
  290. <tr>
  291. <td>
  292. <select id="recordFormat" class="sel">
  293. <option value="0" selected>dav</option>
  294. <option value="1">avi</option>
  295. <option value="3">mp4</option>
  296. </select>
  297. </td>
  298. <td>
  299. <input type="button" class="btn" value="开始录像" onclick="clickStartRecord();" />
  300. </td>
  301. <td>
  302. <input type="button" class="btn" value="停止录像" onclick="clickStopRecord();" />
  303. </td>
  304. </tr>
  305. <tr>
  306. <td>
  307. <input type="button" class="btn2" value="启用电子放大" onclick="clickEnableEZoom();" />
  308. </td>
  309. <td>
  310. <input type="button" class="btn2" value="禁用电子放大" onclick="clickDisableEZoom();" />
  311. </td>
  312. <td>
  313. </td>
  314. </tr>
  315. </table>
  316. </div>
  317. <div id="tabs-2">
  318. <table cellpadding="0" cellspacing="3" border="0">
  319. <tr>
  320. <td class="tt">
  321. <input type="button" class="btn" value="区域聚集" onclick="clickFocusRegion();" />
  322. </td>
  323. <td >
  324. </td>
  325. <td>
  326. </td>
  327. </tr>
  328. </table>
  329. </div>
  330. </fieldset>
  331. <fieldset class="playback hide">
  332. <legend>回放</legend>
  333. <div id="tabs_playback">
  334. <ul>
  335. <li><a href="#tabs-1">按文件播放</a></li>
  336. <!--
  337. <li><a href="#tabs-2">按时间播放</a></li>
  338. <-->
  339. </ul>
  340. <div id="tabs-1">
  341. <table width="100%" cellpadding="0" cellspacing="3" border="0">
  342. <tr>
  343. <td class="tt"><input type="button" class="btn2" value="查询录像状态" onclick="clickSearchRecordStatus();" /></td>
  344. <td>
  345. <!--年份信息-->
  346. <select id="recordStatus_year" class="sel">
  347. <option value="2018">2018</option>
  348. <option value="2019">2019</option>
  349. <option value="2019" selected>2020</option>
  350. </select>
  351. <!--月份信息-->
  352. <select id="recordStatus_month" class="sel">
  353. </select>
  354. </td>
  355. </tr>
  356. <tr>
  357. <td class="tt">录像状态</td>
  358. <td>
  359. <select id="record_Status" class="sel">
  360. </select>
  361. </td>
  362. </tr>
  363. <tr>
  364. <td class="tt">码流类型</td>
  365. <td>
  366. <select id="record_streamtype" class="sel">
  367. <option value="0">所有码流</option>
  368. <option value="1">主码流</option>
  369. <option value="2">子码流</option>
  370. </select>
  371. </td>
  372. </tr>
  373. <tr>
  374. <td class="tt">开始时间</td>
  375. <td>
  376. <input id="starttime" type="text" class="txt" value="2020-09-04 00:00:00" />(时间格式:2013-11-11 12:34:56)
  377. </td>
  378. </tr>
  379. <tr>
  380. <td class="tt">结束时间</td>
  381. <td>
  382. <input id="endtime" type="text" class="txt" value="2020-09-04 23:59:59" />
  383. </td>
  384. </tr>
  385. <tr>
  386. <td >
  387. 查询:<input type="button" class="btn2" value="开始搜索" onclick="clickStartRecordSearch();" />
  388. 查询句柄:<input id="recordQueyrHandle" type="text" class="txt" value="0" />
  389. <input type="button" class="btn2" value="继续搜索" onclick="clickNextRecordSearch();" />
  390. </td>
  391. </tr>
  392. <tr>
  393. <td >
  394. <!--录像信息-->
  395. 录像信息:
  396. <select id="recordInfor">
  397. </select>
  398. </td>
  399. </tr>
  400. <tr>
  401. <td >
  402. <input type="button" class="btn2" value="开始回放" onclick="clickStartPlayback();" />
  403. <input type="button" class="btn2" value="停止回放" onclick="clickStopPlayback();" />
  404. </td>
  405. </tr>
  406. <tr>
  407. <td >
  408. <input type="button" class="btn" value="暂停" onclick="clickPause();" />
  409. <input type="button" class="btn" value="恢复" onclick="clickResume();" />
  410. <input type="button" class="btn" value="单帧" onclick="clickPlayOneFrame()" />
  411. <input type="button" class="btn" value="慢放" onclick="clickPlaySlow();" />
  412. <input type="button" class="btn" value="快放" onclick="clickPlayFast();" />
  413. </td>
  414. </tr>
  415. </table>
  416. </div>
  417. <div id="tabs-2">
  418. </div>
  419. </div>
  420. </fieldset>
  421. <fieldset class="ptz">
  422. <!--<legend>云台控制</legend>-->
  423. <div >
  424. <table cellpadding="0" cellspacing="3" border="0" class="left table1">
  425. <tr>
  426. <td class="left_btn">
  427. <div class="zs_btn">
  428. <span class="span_img1"><img th:src="@{/v/camera/css/jiao.png}" /></span>
  429. <span class="span_img2 hide"><img th:src="@{/v/camera/css/jiao2.png}" /></span>
  430. <input type="button" class="btn zs_btn" value="左上" onmousedown="mouseUPLeftPTZControl(true);" onmouseup="mouseUPLeftPTZControl(false);" title="左上" />
  431. </div>
  432. <div class="s_btn">
  433. <span class="span_img1"><img th:src="@{/v/camera/css/jiao.png}" /></span>
  434. <span class="span_img2 hide"><img th:src="@{/v/camera/css/jiao2.png}" /></span>
  435. <input type="button" class="btn " value="上" onmousedown="mouseUpPTZControl(true);" onmouseup="mouseUpPTZControl(false);" title="上" />
  436. </div>
  437. <div class="ys_btn">
  438. <span class="span_img1"><img th:src="@{/v/camera/css/jiao.png}" /></span>
  439. <span class="span_img2 hide"><img th:src="@{/v/camera/css/jiao2.png}" /></span>
  440. <input type="button" class="btn " value="右上" onmousedown="mouseUPRightPTZControl(true);" onmouseup="mouseUPRightPTZControl(false);" title="右上" />
  441. </div>
  442. </td>
  443. </tr>
  444. <tr>
  445. <td class="con_btn">
  446. <div class="z_btn">
  447. <span class="span_img1"><img th:src="@{/v/camera/css/jiao.png}" /></span>
  448. <span class="span_img2 hide"><img th:src="@{/v/camera/css/jiao2.png}" /></span>
  449. <input type="button" class="btn " value="左" onmousedown="mouseLefPTZControl(true);" onmouseup="mouseLefPTZControl(false);" title="左" />
  450. </div>
  451. <div class="zs_btn">
  452. <input type="button" class="center" value="全屏" onclick="clickFullScreen();" />
  453. </div>
  454. <div class="y_btn">
  455. <span class="span_img1"><img th:src="@{/v/camera/css/jiao.png}" /></span>
  456. <span class="span_img2 hide"><img th:src="@{/v/camera/css/jiao2.png}" /></span>
  457. <input type="button" class="btn " value="右" onmousedown="mouseRightPTZControl(true);" onmouseup="mouseRightPTZControl(false);" title="右" />
  458. </div>
  459. </td>
  460. </tr>
  461. <tr>
  462. <td class="right_btn">
  463. <div class="zx_btn">
  464. <span class="span_img1"><img th:src="@{/v/camera/css/jiao.png}" /></span>
  465. <span class="span_img2 hide"><img th:src="@{/v/camera/css/jiao2.png}" /></span>
  466. <input type="button" class="btn " value="左下" onmousedown="mouseDownLeftPTZControl(true);" onmouseup="mouseDownLeftPTZControl(false);" title="左上" />
  467. </div>
  468. <div class="x_btn">
  469. <span class="span_img1"><img th:src="@{/v/camera/css/jiao.png}" /></span>
  470. <span class="span_img2 hide"><img th:src="@{/v/camera/css/jiao2.png}" /></span>
  471. <input type="button" class="btn " value="下" onmousedown="mouseDownPTZControl(true);" onmouseup="mouseDownPTZControl(false);" title="下" />
  472. </div>
  473. <div class="yx_btn">
  474. <span class="span_img1"><img th:src="@{/v/camera/css/jiao.png}" /></span>
  475. <span class="span_img2 hide"><img th:src="@{/v/camera/css/jiao2.png}" /></span>
  476. <input type="button" class="btn " value="右下" onmousedown="mouseDownRightPTZControl(true);" onmouseup="mouseDownRightPTZControl(false);" title="右下" />
  477. </div>
  478. </td>
  479. </tr>
  480. </table>
  481. <table cellpadding="0" cellspacing="3" border="0" class="table2">
  482. <tr>
  483. <td><span class="span_img1"><img th:src="@{/v/camera/css/d_icon.png}"/></span>
  484. <span class="span_img2 hide"><img th:src="@{/v/camera/css/d_icon_2.png}"/></span>
  485. <input type="button" class="btn2" title="变倍+" onmousedown="PTZZoomIn(true)" onmouseup="PTZZoomIn(false)"></td>
  486. <td>变倍</td>
  487. <td>
  488. <span class="span_img1"><img th:src="@{/v/camera/css/x_icon.png}"/></span>
  489. <span class="span_img2 hide"><img th:src="@{/v/camera/css/x_icon_2.png}"/></span>
  490. <input type="button" class="btn2" title="变倍-" onmousedown="PTZZoomout(true)" onmouseup="PTZZoomout(false)"></td>
  491. </tr>
  492. <tr>
  493. <td>
  494. <span class="span_img1"><img th:src="@{/v/camera/css/d_icon2.png}"/></span>
  495. <span class="span_img2 hide"><img th:src="@{/v/camera/css/d_icon2_2.png}"/></span>
  496. <input type="button" class="btn2" title="变焦+" onmousedown="PTZFocusIn(true)" onmouseup="PTZFocusIn(false)"></td>
  497. <td>变焦</td>
  498. <td>
  499. <span class="span_img1"><img th:src="@{/v/camera/css/x_icon2.png}"/></span>
  500. <span class="span_img2 hide"><img th:src="@{/v/camera/css/x_icon2_2.png}"/></span>
  501. <input type="button" class="btn2" title="变焦-" onmousedown="PTZFoucusOut(true)" onmouseup="PTZFoucusOut(false)"></td>
  502. </tr>
  503. <tr>
  504. <td>
  505. <span class="span_img1"><img th:src="@{/v/camera/css/d_icon3.png}"/></span>
  506. <span class="span_img2 hide"><img th:src="@{/v/camera/css/d_icon3_2.png}"/></span>
  507. <input type="button" class="btn2" title="光圈+" onmousedown="PTZIrisIn(true)" onmouseup="PTZIrisIn(false)"></td>
  508. <td>光圈</td>
  509. <td>
  510. <span class="span_img1"><img th:src="@{/v/camera/css/d_icon3.png}"/></span>
  511. <span class="span_img2 hide"><img th:src="@{/v/camera/css/x_icon3_3.png}"/></span>
  512. <input type="button" class="btn2" title="光圈-" onmousedown="PTZIrisOut(true)" onmouseup="PTZIrisOut(false)"></td>
  513. </tr>
  514. </table>
  515. <script>
  516. $(".table1 tr td div input").hover(function(){
  517. $(this).siblings('.span_img1').addClass('hide').siblings('.span_img2').removeClass('hide');
  518. },function(){
  519. $(this).siblings('.span_img2').addClass('hide').siblings('.span_img1').removeClass('hide');
  520. });
  521. $(".table2 tr td div input").hover(function(){
  522. $(this).siblings('.span_img1').addClass('hide').siblings('.span_img2').removeClass('hide');
  523. },function(){
  524. $(this).siblings('.span_img2').addClass('hide').siblings('.span_img1').removeClass('hide');
  525. });
  526. </script>
  527. <table cellpadding="0" cellspacing="3" border="0" class="table3">
  528. <tr>
  529. <td class="tt">云台速度</td>
  530. <td colspan="2">
  531. <select id="ptzspeed" class="sel">
  532. <option value="1">1</option>
  533. <option value="2">2</option>
  534. <option value="3">3</option>
  535. <option value="4" selected>4</option>
  536. <option value="5">5</option>
  537. <option value="6">6</option>
  538. <option value="7">7</option>
  539. <option value="8">8</option>
  540. </select>
  541. </td>
  542. </tr>
  543. <tr>
  544. <td class="tt">窗口分割</td>
  545. <td colspan="2">
  546. <select id="wndNum" class="sel2" onchange="changeWndNum(this.value);">
  547. <option value="1">1x1</option>
  548. <option value="2" selected>2x2</option>
  549. <option value="3">3x3</option>
  550. <option value="4">4x4</option>
  551. <option value="5">5x5</option>
  552. <option value="6">6x6</option>
  553. </select>
  554. </td>
  555. </tr>
  556. <tr>
  557. <td class="tt" >窗口选择</td>
  558. <td colspan="2">
  559. <select id="winMode" class="sel2" onchange="changeWinMode(this.value);">
  560. <option value="0">选中窗口</option>
  561. <option value="1">指定窗口</option>
  562. </select>
  563. <select style="margin-top: 5px;float:left;" id="winIndex" class="sel2" onchange="changeWndIndex(this.value);">
  564. </select>
  565. </td>
  566. </tr><tr>
  567. <td colspan="3">
  568. <input type="button" class="btn btn2" value="播放所有" onclick="clickStartAllRealPlay();" />
  569. <input type="button" class="btn btn2" value="关闭所有" onclick="clickStopAllRealPlay();" />
  570. </td>
  571. </tr><tr>
  572. <td colspan="3">
  573. <input type="button" class="btn3" value="抓图" onclick="clickCapturePic();" />
  574. </td>
  575. </tr>
  576. <tr>
  577. <td>
  578. <select id="recordFormat" class="sel">
  579. <option value="0" selected>dav</option>
  580. <option value="1">avi</option>
  581. <option value="3">mp4</option>
  582. </select>
  583. </td>
  584. <td>
  585. <input type="button" class="btn" value="开始录像" onclick="clickStartRecord();" />
  586. </td>
  587. <td>
  588. <input type="button" class="btn" value="停止录像" onclick="clickStopRecord();" />
  589. </td>
  590. </tr>
  591. </table>
  592. </div>
  593. </fieldset>
  594. <!--
  595. <fieldset class="playback">
  596. <legend>回放</legend>
  597. <table width="100%" cellpadding="0" cellspacing="3" border="0">
  598. <tr>
  599. <td class="tt">码流类型</td>
  600. <td>
  601. <select id="record_streamtype" class="sel">
  602. <option value="1">主码流</option>
  603. <option value="2">子码流</option>
  604. </select>
  605. </td>
  606. </tr>
  607. <tr>
  608. <td class="tt">开始时间</td>
  609. <td>
  610. <input id="starttime" type="text" class="txt" value="2013-12-10 00:00:00" />(时间格式:2013-11-11 12:34:56)
  611. </td>
  612. </tr>
  613. <tr>
  614. <td class="tt">结束时间</td>
  615. <td>
  616. <input id="endtime" type="text" class="txt" value="2013-12-11 23:59:59" />
  617. <input type="button" class="btn" value="搜索" onclick="clickRecordSearch(0);" />
  618. </td>
  619. </tr>
  620. <tr>
  621. <td >
  622. <div id="searchdiv" class="searchdiv">
  623. <table id="searchlist" class="searchlist" cellpadding="0" cellspacing="0" border="0"></table>
  624. </div>
  625. </td>
  626. </tr>
  627. <tr>
  628. <td >
  629. <input type="button" class="btn2" value="开始回放" onclick="clickStartPlayback();" />
  630. <input type="button" class="btn2" value="停止回放" onclick="clickStopPlayback();" />
  631. <input type="button" class="btn" value="倒放" onclick="clickReversePlayback();" />
  632. <input type="button" class="btn" value="单帧" onclick="clickFrame();" />
  633. <input id="transstream" type="checkbox" class="vtop" />&nbsp;启用转码码流
  634. </td>
  635. </tr>
  636. <tr>
  637. <td >
  638. <input type="button" class="btn" value="暂停" onclick="clickPause();" />
  639. <input type="button" class="btn" value="恢复" onclick="clickResume();" />
  640. <input type="button" class="btn" value="慢放" onclick="clickPlaySlow();" />
  641. <input type="button" class="btn" value="快放" onclick="clickPlayFast();" />
  642. </td>
  643. </tr>
  644. <tr>
  645. <td >
  646. <input type="button" class="btn" value="抓图" onclick="clickCapturePic();" />
  647. <input type="button" class="btn2" value="开始剪辑" onclick="clickStartRecord('playback');" />
  648. <input type="button" class="btn2" value="停止剪辑" onclick="clickStopRecord('playback');" />
  649. <input type="button" class="btn2" value="OSD时间" onclick="clickGetOSDTime();" />&nbsp;<input id="osdtime" type="text" class="txt" readonly />
  650. </td>
  651. </tr>
  652. </table>
  653. </fieldset>
  654. <-->
  655. <fieldset class="playback hide">
  656. <legend>人数统计</legend>
  657. <table width="100%" cellpadding="0" cellspacing="3" border="0">
  658. <tr>
  659. <td class="tt">规则</td>
  660. <td>
  661. <select id="humanFlowRule" class="sel">
  662. <option value="0">区域内人数统计</option>
  663. <option value="1">人数统计</option>
  664. </select>
  665. </td>
  666. </tr>
  667. <tr>
  668. <td class="tt">跨度</td>
  669. <td>
  670. <select id="humanFlowGranularity" class="sel">
  671. <option value="0">日</option>
  672. <option value="1">月</option>
  673. </select>
  674. </td>
  675. </tr>
  676. <tr>
  677. <td class="tt">开始时间</td>
  678. <td>
  679. <input id="humanFlowStarttime" type="text" class="txt" value="2020-09-04 00:00:00" />(时间格式:2013-11-11 12:34:56)
  680. </td>
  681. </tr>
  682. <tr>
  683. <td class="tt">结束时间</td>
  684. <td>
  685. <input id="humanFlowEndtime" type="text" class="txt" value="2020-09-04 23:59:59" />
  686. </td>
  687. </tr>
  688. <tr>
  689. <td class="tt">滞留时间</td>
  690. <td>
  691. <select id="humanFlowMinStayTime" class="sel">
  692. <option value="5">5秒</option>
  693. <option value="30">30秒</option>
  694. <option value="60">60秒</option>
  695. </select>
  696. </td>
  697. </tr>
  698. <tr>
  699. <td >
  700. <input type="button" class="btn2" value="开启查询" onclick="clickStartTrafficDataQuery();" />
  701. 查询句柄:<input id="humanFlowQueryHandle" type="text" class="txt" value="0" />
  702. </td>
  703. </tr>
  704. <tr>
  705. <td>
  706. <input type="button" class="btn3" value="获得信息总数" onclick="clickGetTrafficDataTotalCount();" />
  707. </td>
  708. <td>
  709. 信息条数<input id="humanFlowInfoCount" type="text" class="txt" value="0" />
  710. </td>
  711. </tr>
  712. <tr>
  713. <td>
  714. <input type="button" class="btn3" value="获得查询信息" onclick="clickQueryTrafficData();" />
  715. </td>
  716. </tr>
  717. <tr>
  718. <td >
  719. <input type="button" class="btn3" value="停止查询" onclick="clickStopTrafficDataQuery();" />
  720. </td>
  721. </tr>
  722. </table>
  723. </fieldset>
  724. <fieldset class="operate hide">
  725. <legend>订阅事件</legend>
  726. <table>
  727. <tr>
  728. <td><input id="subscribeEventName" type="text" class="txt" value="CitizenPictureCompare" /></td>
  729. <td>
  730. <input type="button" class="btn3" value="订阅" onclick="clickSubScribeEvent();" />
  731. </td>
  732. <td>
  733. <input type="button" class="btn3" value="取消订阅" onclick="clickUnSubScribeEvent();" />
  734. </td>
  735. </tr>
  736. <tr>
  737. <td style="width:100%"><div id="eventMessage" class="opinfo"></div></td>
  738. </tr>
  739. </table>
  740. </fieldset>
  741. <fieldset class="Thermal hide">
  742. <legend>热成像</legend>
  743. <table cellpadding="0" cellspacing="3" border="0">
  744. <tr>
  745. <td class="tt">点测温</td>
  746. <td class="tt">
  747. <input type="button" class="btn2" value="开启" onmousedown="clickenableCheck(true)"></td>
  748. <td><input type="button" class="btn2" value="关闭" onmousedown="clickenableCheck(false)"></td>
  749. <td class="tt">温度</td>
  750. <td colspan="3"><input id="Temper" type="text" class="txt" value=""/></td>
  751. </tr>
  752. </table>
  753. </fieldset>
  754. <fieldset class="downloadLink hide">
  755. <legend>weci下载</legend>
  756. <table cellpadding="0" cellspacing="3" border="0">
  757. <tr>
  758. <td class="tt">
  759. <input id="linkUrl" type="text" class="txt" />(weciURL)
  760. </td>
  761. <td class="tt">
  762. <input id="fileName" type="text" class="txt" value="E:\\11.zip"/>(存储路径)
  763. </td>
  764. <td>
  765. <select id="downloadID" class="sel">
  766. </select>
  767. </td>
  768. <td>
  769. <input type="button" class="btn2" value="下载" onmousedown="downloadLink()">
  770. </td>
  771. <td>
  772. <input type="button" class="btn2" value="停止下载" onmousedown="stopdownloadLink()">
  773. </td>
  774. </tr>
  775. </table>
  776. </fieldset>
  777. </div>
  778. </div>
  779. <script th:src="@{/v/camera/module/foundation.js}"></script>
  780. <script th:src="@{/v/camera/module/WebVideoCtrl.js}"></script>
  781. <script th:src="@{/v/camera/module/modifyUI.js}"></script>
  782. <script th:src="@{/v/camera/module/demo.js}"></script>
  783. <script>
  784. var device_ip;
  785. var device_port = 2021;
  786. var device_username ="admin";
  787. var device_password ="Admin@666";
  788. var device_protocol = 0;
  789. //-------------------------------
  790. var prefix = ctx + "v";
  791. var hei = $(window).height();
  792. $(".con_left").height(hei);
  793. $(".con_right").height(hei-40);
  794. function sleep(callback, time) {
  795. if (typeof callback == "function") {
  796. setTimeout(callback, time);
  797. }
  798. }
  799. function output() {
  800. console.log(1);
  801. }
  802. function playplay(ip) {
  803. console.log("playplay===",ip)
  804. device_ip = ip;
  805. console.log("set ip===",ip)
  806. clickLogin();
  807. console.log("clickLogin===",ip)
  808. sleep(output, 3000);
  809. clickStartRealPlay();
  810. }
  811. </script>
  812. </body>
  813. </html>