默认
发表评论 5
想开发IM:买成品怕坑?租第3方怕贵?找开源自已撸?尽量别走弯路了... 找站长给点建议
浏览器WebRTC中canvas 转成todataurl数据传输后怎么绘制在另一个canvas上
阅读(20122) | 评论(5 收藏1 淘帖
神秘人  发表于 6 年前 倒序浏览 |阅读模式
可能我说不清除  因为我是个新手   详情请看代码

发送端
var photo = document.getElementById('canvas');
werrewr = atob(photo.toDataURL('image/jpeg', 0.8).replace('data:image/jpeg;base64,', '')),
jiojou = textuint(werrewr),
dataChannel.send(jiojou);      //这个是通过webrtc channel 通道发送的消息


function textuint(str){
    var buf = new ArrayBuffer(str.length);
    window.bufView = new Uint8Array(buf);
    for(var i=0; i<str.length; i++){
        bufView = str.charCodeAt(i);
    }
    return buf;
  }



接收端


以下的代码方式不对
var canvas = document.createElement('canvas');
trail.insertBefore(canvas, trail.firstChild);


function renderPhoto(data) {
  canvas.width = photoContextW;
  canvas.height = photoContextH;
  canvas.classList.add('incomingPhoto');

  var context = canvas.getContext('2d');
  var img = context.createImageData(photoContextW, photoContextH);
  img.data.set(data);
  context.putImageData(img, 0, 0);
}


请教一下接收端  该如何处理这个得到的数据   把图片绘制到新创建的  canvas 上。  
求大神不吝赐教

即时通讯网 - 即时通讯开发者社区! 来源: - 即时通讯开发者社区!

推荐方案
评论 5
神秘人  发表于 6 年前
补充一下 接收端同样是前端代码js代码
引用:CжMжE 发表于 2017-10-27 14:36
补充一下 接收端同样是前端代码js代码

网页端的WebRTC我没有用过,你可以找找别人能跑的通的Demo参照一下
引用:JackJiang 发表于 2017-10-27 14:56
网页端的WebRTC我没有用过,你可以找找别人能跑的通的Demo参照一下

别人能跑的 数据格式跟我这个不一样啊
签名: 难受想哭蓝瘦香菇
就这样沉下去了吗?
签名: 难受想哭蓝瘦香菇
引用:飞落舞 发表于 2017-10-31 10:28
就这样沉下去了吗?

帮不了你,建议找资料系统地学习WebRTC
打赏楼主 ×
使用微信打赏! 使用支付宝打赏!

返回顶部