var videoPacketNum = 0;// var hasPPS = false; self.importScripts("helper.js"); // self.importScripts("pcm-player.js"); // self.importScripts("pcm-player.min.js"); // var socketURL = "ws://192.168.198.21:9101"; var socketURL = "ws://14.215.128.97:15508" // var socketURL = "14.215.128.98:14102"; // var socketURL = "ws://14.215.128.98:14102" // socketURL = "ws://127.0.0.1:8081" var ws = new WebSocket(socketURL); ws.binaryType = 'arraybuffer'; ws.addEventListener('open', function(event) { console.log("发送配置帧"); ws.send(ConfigChannel("RK3923C1201900139")); }); self.addEventListener('message', function(e) { //console.log("收到数据", e.data); console.log('ws', ws); ws.send(e.data); }, false); ws.addEventListener('message', function(event) { //var objData = {type:0, data:input}; var input = new Uint8Array(event.data); if(input[0] == 0 && input[1] == 0 && input[2] == 0 && input[3] == 1) { var nalType = input[4] & 0x1f; if(nalType == 0x05 || nalType == 0x05 || nalType == 0x07) { console.log("收到I 帧"); self.postMessage(input); hasPPS = true; } if(!hasPPS)//请求I 帧 { videoPacketNum++; if(videoPacketNum > 5 && !hasPPS) { console.log("packetnum 编号" + videoPacketNum); videoPacketNum = 0; ws.send(RequestIFrame("RK3923C1201900139")); hasPPS = true; } } else { self.postMessage(input); } } else //音频 { self.postMessage(input); } });