摘要: 参考自: http://blog.chinaunix.net/uid-28541347-id-5578403.html https://blog.csdn.net/jasenwan88/article/details/7365060 https://www.cnblogs.com/oracleloy 阅读全文
posted @ 2021-10-12 23:05 山上有风景 阅读(105) 评论(0) 推荐(0) 编辑
摘要: 一:视频为什么可以被压缩 视频信息之所以存在大量可以被压缩的空间,是因为其中本身就存在大量的数据冗余。 其主要类型有以下四种: 时间冗余:视频相邻的两帧之间内容相似,或者帧直接存在运动关系 空间冗余:视频的某一帧内部的相邻像素存在相似性,或者变化的相关性 编码冗余:视频中不同数据出现的概率不同(所以 阅读全文
posted @ 2021-09-28 13:49 山上有风景 阅读(229) 评论(1) 推荐(1) 编辑
摘要: 一:协议解析 (一)协议格式设计 (二)字段说明 Version(1Byte):版本信息,这里默认0即可 Status(1Byte):协议的状态信息 #define PROTO_LOGIN_REQ 0x01 //登录服务器的请求与响应 #define PROTO_LOGIN_ACK 0x81 #de 阅读全文
posted @ 2021-06-09 10:40 山上有风景 阅读(234) 评论(7) 推荐(0) 编辑
摘要: 一:主业务的创建 主要场景是对房间的管理,多方进行音视频互动。 Router代表房间,Transport代表一个传输,每个用户加入房间都会创建一个对应的连接。 Producer生产者,共享的音视频流中,每个音频、视频流都会产生一个生产者 Consumer消费者,对于每个加入房间的用户,都可以消费其他 阅读全文
posted @ 2021-06-06 15:51 山上有风景 阅读(674) 评论(0) 推荐(0) 编辑
摘要: 补充:JS部分和C++代码见 WebRTC进阶流媒体服务器开发(三)Mediasoup源码分析之应用层(代码组成、Server.js、Room.js) mediasoup C++:C++部分,用于处理流媒体传输,包括lib与worker两部分 >lib:一些js文件组成,主要用于对mediasoup 阅读全文
posted @ 2021-06-04 21:57 山上有风景 阅读(676) 评论(0) 推荐(0) 编辑
摘要: 一:Mediasoup库的JS部分(与C++交互) 整个Mediasoup库通过Nodejs管理,比如整体逻辑、worker、router、producer、consumer...都是通过JS进行管理的。 其底层的数据传输是通过C++部分进行控制的,通过NodeJs来控制C++部分,以实现整体的数据 阅读全文
posted @ 2021-06-04 20:47 山上有风景 阅读(607) 评论(0) 推荐(1) 编辑
摘要: 一:Mediasoup Demo分析 了解Mediasoup运行机制,以及如何调用Mediasoup核心库 (一)Mediasoup Demo组成 其中mediasoup-demo为整个代码框架:(包含所有) app应用:提供客户端所需要的应用代码 broadcasters:用于广播使用,用于推流的 阅读全文
posted @ 2021-06-04 16:01 山上有风景 阅读(565) 评论(2) 推荐(0) 编辑
摘要: 回顾Mediasoup架构 (一)架构服务分析 服务端提供3个服务: 1.www服务,浏览器通过访问服务器目录获取客户端代码,通过V8引擎,启动底层WebRTC 2.nodejs提供websocket服务和http服务,用于信令交互 3.Mediasoup C++提供的流媒体服务,用于音视频的分享与 阅读全文
posted @ 2021-06-03 15:30 山上有风景 阅读(858) 评论(0) 推荐(0) 编辑
摘要: 一:多人互动架构方案 (一)WebRTC回顾,两层含义: 1.WebRTC是google开源的流媒体客户端,可以进行实时通讯,主要应用于浏览器之间进行实时通讯,也可以单独编译在自己的应用中 2.WebRTC也是一套规范,只对客户端做了定义,如何进行媒体协商、通信流程...;对于服务端,比如信令服务端 阅读全文
posted @ 2021-06-02 21:52 山上有风景 阅读(959) 评论(0) 推荐(1) 编辑
摘要: 一:浏览器协议栈 左侧为http协议的协议栈,右侧为WebRTC协议栈 (一)http协议栈 API层:提供了XHR、SSE、WebSocket 应用层:提供了http1.x/2.0https协议 会话层:使用了TLS协议(可选),对于https需要这个协议,对于http并不需要 传输层:底层使用T 阅读全文
posted @ 2021-05-30 18:42 山上有风景 阅读(843) 评论(1) 推荐(1) 编辑