|  |  |  | 
|---|
|  |  |  | <button class="toggle-button" onclick="changeGrid(7, 7)">7x7</button> | 
|---|
|  |  |  | <button class="toggle-button" onclick="changeGrid(8, 8)">8x8</button> | 
|---|
|  |  |  | <button class="toggle-button" onclick="changeGrid(9, 9)">9x9</button> | 
|---|
|  |  |  | <input id="videoUrl" type="text" value="" style="width: 250px"/> | 
|---|
|  |  |  | <input id="videoUrl" type="text" value="http://192.168.1.227:8889/164/" style="width: 250px"/> | 
|---|
|  |  |  | </div> | 
|---|
|  |  |  | </div> | 
|---|
|  |  |  | </div> | 
|---|
|  |  |  | 
|---|
|  |  |  | console.log(RTCRtpReceiver.getCapabilities('audio').codecs) | 
|---|
|  |  |  | //whep操作方法 | 
|---|
|  |  |  | const restartPause = 2000; | 
|---|
|  |  |  | const unquoteCredential = (v) => ( | 
|---|
|  |  |  | JSON.parse(`"${v}"`) | 
|---|
|  |  |  | ); | 
|---|
|  |  |  | const linkToIceServers = (links) => ( | 
|---|
|  |  |  | (links !== null) ? links.split(', ').map((link) => { | 
|---|
|  |  |  | const m = link.match(/^<(.+?)>; rel="ice-server"(; username="(.*?)"; credential="(.*?)"; credential-type="password")?/i); | 
|---|
|  |  |  | 
|---|
|  |  |  | chanMap.set("video" + i, videoUrl); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | console.log(chanMap); | 
|---|
|  |  |  | //changeGrid(2, 2); | 
|---|
|  |  |  | changeGrid(2, 2); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | //绑定点击事件 | 
|---|
|  |  |  | let playMap = new Map(); | 
|---|