随笔分类 -  Javascript

前端记录
摘要:补充:JS部分和C++代码见 WebRTC进阶流媒体服务器开发(三)Mediasoup源码分析之应用层(代码组成、Server.js、Room.js) mediasoup C++:C++部分,用于处理流媒体传输,包括lib与worker两部分 >lib:一些js文件组成,主要用于对mediasoup 阅读全文
posted @ 2021-06-04 21:57 山上有风景 阅读(3828) 评论(0) 推荐(3)
摘要:一:Mediasoup库的JS部分(与C++交互) 整个Mediasoup库通过Nodejs管理,比如整体逻辑、worker、router、producer、consumer...都是通过JS进行管理的。 其底层的数据传输是通过C++部分进行控制的,通过NodeJs来控制C++部分,以实现整体的数据 阅读全文
posted @ 2021-06-04 20:47 山上有风景 阅读(3172) 评论(0) 推荐(1)
摘要:一:Mediasoup Demo分析 了解Mediasoup运行机制,以及如何调用Mediasoup核心库 (一)Mediasoup Demo组成 其中mediasoup-demo为整个代码框架:(包含所有) app应用:提供客户端所需要的应用代码 broadcasters:用于广播使用,用于推流的 阅读全文
posted @ 2021-06-04 16:01 山上有风景 阅读(4242) 评论(2) 推荐(0)
摘要:回顾Mediasoup架构 (一)架构服务分析 服务端提供3个服务: 1.www服务,浏览器通过访问服务器目录获取客户端代码,通过V8引擎,启动底层WebRTC 2.nodejs提供websocket服务和http服务,用于信令交互 3.Mediasoup C++提供的流媒体服务,用于音视频的分享与 阅读全文
posted @ 2021-06-03 15:30 山上有风景 阅读(6145) 评论(0) 推荐(0)
摘要:一:多人互动架构方案 (一)WebRTC回顾,两层含义: 1.WebRTC是google开源的流媒体客户端,可以进行实时通讯,主要应用于浏览器之间进行实时通讯,也可以单独编译在自己的应用中 2.WebRTC也是一套规范,只对客户端做了定义,如何进行媒体协商、通信流程...;对于服务端,比如信令服务端 阅读全文
posted @ 2021-06-02 21:52 山上有风景 阅读(6383) 评论(0) 推荐(3)
摘要:一:浏览器协议栈 左侧为http协议的协议栈,右侧为WebRTC协议栈 (一)http协议栈 API层:提供了XHR、SSE、WebSocket 应用层:提供了http1.x/2.0https协议 会话层:使用了TLS协议(可选),对于https需要这个协议,对于http并不需要 传输层:底层使用T 阅读全文
posted @ 2021-05-30 18:42 山上有风景 阅读(4301) 评论(2) 推荐(3)
摘要:在前面的学习中,我们传输的数据都是音视频数据,实际上webrtc是一个强大的库,不只可以处理这些音视频数据,还可以处理非音视频数据!比如端对端的聊天,文件的传输(二进制传输也可以),网络的加速... 一:WebRTC传输非音视频数据 (一)createDataChannel API基本格式 (二)O 阅读全文
posted @ 2021-05-30 15:06 山上有风景 阅读(1126) 评论(0) 推荐(0)
摘要:补充:查找手册https://developer.mozilla.org/en-US/ 一:WebRTC中的RTP/RTCP模块 (一)RTP/RTCP简介 RTP/RTCP协议是流媒体通信的基石。RTP协议定义流媒体数据在互联网上传输的数据包格式,而RTCP协议则负责可靠传输、流量控制和拥塞控制等 阅读全文
posted @ 2021-05-29 21:30 山上有风景 阅读(2891) 评论(2) 推荐(2)
摘要:接上:WebRTC学习(八)1V1音视频实时互动直播系统 一:客户端状态机 首先我们来看一下直播客户端的一个状态机,客户端与服务器直接通过信令的一个交互之后自然而然的形成一个状态机: 1.最开始的时候状态机是处于初始化状态的,当用户发送了一个join到服务端之后服务端会给它回一个joined消息,客 阅读全文
posted @ 2021-05-28 18:59 山上有风景 阅读(1018) 评论(0) 推荐(2)
摘要:一:PeerConnection参数详解 在前面我们使用RTCPeerConnection的时候,把参数设置成了null(或者不填),因为这个参数configuration本身是可以不填的。 (一)RTCPeerConnection格式 (二)参数了解 在RTCconfiguration这个结构体里 阅读全文
posted @ 2021-05-26 22:11 山上有风景 阅读(2707) 评论(0) 推荐(0)
摘要:一:使用socket.io发送消息 (一)socket.io服务端发送消息 broadcast会向站点中的所有房间发送消息 (二)socket.io客户端处理消息 二:WebRTC信令服务器 (一)信令服务器(TCP)作用 1.媒体相关信息交换:发送SDP描述信息(是否支持音频、视频,已经对应的编解 阅读全文
posted @ 2021-05-20 16:25 山上有风景 阅读(2166) 评论(0) 推荐(1)
摘要:一:WebRTC录制基本知识 (一)MediaRecoder类基本格式 (二)options限制选项 mimeType:用来指定要录制的是视频还是音频,即录制的格式是什么,上面的列表中是webm格式的多媒体类型,也可以设置为其他格式,比如mp4。也可以指定编码方式 (三)MediaRecorder常 阅读全文
posted @ 2021-05-19 21:28 山上有风景 阅读(3784) 评论(0) 推荐(1)
摘要:一:WebRTC设备管理 (一)重要API,用于获取音视频设备 其中返回的ePromise结果,是一个Promise对象。 Promise对象的结构体:MediaDevicesInfo deviceID:是设备唯一标识符ID label:是设备的名字(可读的) kind:设备的种类(音频输入/输出两 阅读全文
posted @ 2021-05-19 19:12 山上有风景 阅读(2012) 评论(0) 推荐(0)
摘要:一:Web服务器了解 (一)Web服务器类型 Nodejs 比较特殊,可以用js开发服务端程序; 有两份JS,一份是用于控制服务器的,一份是用于下载到客户端去运行的; Nginx 性能上比Apache更好,灵活度等也优于Apache, 所以逐渐把Apache取代; Apache 一开始出现的时候占服 阅读全文
posted @ 2021-05-18 21:55 山上有风景 阅读(2287) 评论(1) 推荐(0)
摘要:参考:https://www.jianshu.com/p/7cb5c2cffaaa 一:安装Homebrew (一)环境配置 sudo apt-get update sudo apt-get upgrade -y sudo sudo apt-get install -y build-essentia 阅读全文
posted @ 2021-05-18 21:15 山上有风景 阅读(1813) 评论(1) 推荐(1)
摘要:jquery中使用each方法,类似于while或者for循环 一种退出循环的方式是:当数据全部被遍历完成,自然退出, 另一种方法是:当我们在循环中返回一个false时,会跳出循环 这里来使用第二种方法遍历数据,并获取数据的返回值 阅读全文
posted @ 2018-05-22 20:05 山上有风景 阅读(3382) 评论(0) 推荐(0)
摘要:一般使用var声明的变量为局部变量。 在函数中不使用var声明的变量为全局变量 或者使用window将数据加载到当前窗口,也可以实现全局 本质:上面未使用var声明的变量,就相当于window.变量或者window['变量'] 阅读全文
posted @ 2018-05-22 19:16 山上有风景 阅读(530) 评论(0) 推荐(0)
摘要:KindEditor的简单了解 http://www.cnblogs.com/wupeiqi/articles/6307554.html 简单使用: <div class="comm"> <form method="POST" enctype="multipart/form-data"> {% cs 阅读全文
posted @ 2018-04-14 22:49 山上有风景 阅读(852) 评论(0) 推荐(0)
摘要:页面显示照片样式为瀑布流: 上面的div个数可以按照自己安排进行划分。img的分布可以使用模板标签以及自定义模板函数进行排布: 自定义模板函数实现可以看,最后几列:python django中模板渲染 def img(req): img = models.Img.objects.all() retu 阅读全文
posted @ 2018-04-09 15:30 山上有风景 阅读(354) 评论(0) 推荐(0)
摘要:1.javascript中以函数来表示类: 一般函数是小写开头:function foo() 类开头是大写:function Foo() 实例化类: obj = new Foo() 其他属性就同类是一致的 与类的思想来考虑就出来结果了,干扰项都不是问题 再比如: 2.补充:this关键字 this代 阅读全文
posted @ 2018-04-02 22:16 山上有风景 阅读(2043) 评论(0) 推荐(1)