webscoket拉取视频流,通过FileReader()读取文件。 ws.onmessage = function(evt) { var reader = new FileReader(); reader.onload = function(evt){ if(evt.target.readyState == FileReader.DONE){ // readyState = 2; var value = new Uint8Array(evt.target.result); var dataLength = value.byteLength; var offset = 0; // self.fileInfo.chunkSize >=0 ? self.fileInfo.chunkSize:65536; if (dataLength >65536) { do { let len = Math.min(65536, dataLength); var data = value.buffer.slice(offset, offset + len); dataLength -= len; offset += len; var objData = { t: kFeedDataReq, d: data }; that.decodeWorker.postMessage(objData, [objData.d]); } while (dataLength > 0) }else{ var objData = { t: kFeedDataReq, d: value.buffer }; that.decodeWorker.postMessage(objData, [objData.d]); } if (that.decoderState == decoderStateIdle) { that.onStreamDataUnderDecoderIdle(dataLength); } } } reader.readAsArrayBuffer(evt.data); };
ws.onopen = function(evt) {
console.log("Connection open ...");
ws.send("send WebSockets!");
};
ws.onmessage = function(evt) {
var reader = new FileReader();
reader.onload = function(evt){
if(evt.target.readyState == FileReader.DONE){
// readyState = 2;
var value = new Uint8Array(evt.target.result);
var dataLength = value.byteLength;
var offset = 0;
// self.fileInfo.chunkSize >=0 ? self.fileInfo.chunkSize:65536;
if (dataLength >65536) {
do {
let len = Math.min(65536, dataLength);
var data = value.buffer.slice(offset, offset + len);
dataLength -= len;
offset += len;
var objData = {
t: kFeedDataReq,
d: data
};
that.decodeWorker.postMessage(objData, [objData.d]);
} while (dataLength > 0)
}else{
var objData = {
t: kFeedDataReq,
d: value.buffer
- 粉丝: 0
- 资源: 1
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助