WebRTC
文章平均质量分 82
专门用于讨论WebRTC的相关内容
大飞飞鱼
做自己喜欢的事情,任凭别人去说吧
展开
-
RSA 非对称加密笔记
1、产生密钥2、传递公钥3、用户用公钥加密4、传递密文5、服务器用私钥解密6、初始化完成#include <iostream>#include <fstream>#include <openssl/bn.h>#include <openssl/rsa.h>#include <openssl/pem.h>extern "C"{ #include <openssl/applink.c>};原创 2022-01-13 15:08:20 · 810 阅读 · 0 评论 -
WebRTC 之 DTLS 技术解析
DTLS(Datagram Transport Layer Security) 提供了 UDP 传输场景下的安全机制,能防止窃听、篡改、冒充等问题。在 WebRTC中使用 DTLS 的地方包括两部分:Datachannel 数据通道。在 Datachannel 数据通道中,WebRTC 完全使用 DTLS 来进行协商和加解密MediaChannel 媒体通道。在媒体通道中 WebRTC 使用 SRTP 来进行数据的加解密,DTLS 的作用仅仅是用来做密钥交换,RTP/RTCP 的数据为了与历史原创 2021-12-26 00:46:21 · 1560 阅读 · 0 评论 -
开源免费Webrtc转发服务器Mediasoup的概念解释与基本介绍(一)
用于Webrtc的媒体流转发服务器不计其数,开源与免费的也不计其数,有基于C++开发的,有基于Java开发的,有基于Go开发的,但以笔者的实践经验,mediasoup是性能最好的转发服务器。Mediasoup其实是一个框架,其应用层开发语言为javascript,必须依赖于Nodejs来执行,但其媒体转发模块(Worker)却是用C++开发,而且这个转发模块的网络I/O底层库为Libuv,Libuv是一个目前最优秀的网络I/O库,笔者用它开发了好几款应用,都表现得极其高的性能,所以笔者以为Wo...原创 2021-08-27 19:27:00 · 1579 阅读 · 0 评论 -
Webrtc 信令交换过程
开发Webrtc程序,首先需要知道其连接的建立过程,现记录如下:1、A向服务器发出init请求2、服务器将A的init请求转发给连接上服务器的其他端3、B收到init请求后,调用peerConnection.createOffer()方法创建一个包含SDP的offer信令4、offer信令创建成功后会调用SdpObserver监听中的onCreateSuccess()响应函数在此处B通过peerConnection.setLocalDescription()方法将SDP赋予自己的Peer原创 2021-08-27 16:33:18 · 1054 阅读 · 0 评论 -
Android视频采集与处理
Android中很多基本的架构都是C/S层架构,客户端提供调用接口,而实现工作则是在服务端完成。Android Camera的架构也是C/S架构,Client进程虽然不曾拥有任何实质的Camera数据,但是service端为它提供了丰富的接口,它可以轻松的获得Camera数据的地址,然后处理这些数据。两者通过Binder进行通讯。在Android中调用摄像头需要相应的权限,需要注意的是:权限申请在Android 6.0后变成了动态申请。在本项目中使用了Camera1相关的API对摄像头进行调用,所以对Ca原创 2021-08-23 01:45:29 · 1429 阅读 · 0 评论 -
Android Media API 使用介绍
从事多媒体开发的同学,在对Android 系统开发时,Android系统已经给我们提供了对视音频的强大支持,本文介绍Android的几个和视音频相关的类,通过这几个类的组合使用,其实是能变换出许多视音频处理的相关功能,下面就对这几个类进行简单介绍。MediaMetadataRetriever:用来获取视频的相关信息,例如视频宽高、时长、旋转角度、码率等等。MediaExtractor::视音频分离器,将一些格式的视频分离出视频轨道和音频轨道。MediaCodec:视音频相应的编解码类。MediaMu原创 2021-08-23 01:14:57 · 1171 阅读 · 0 评论 -
Android 声音采集回声与回声消除
回声(或称回音)是指障碍物对声音的反射。声波在遇到障碍物时,一部分声波会穿过障碍物,而另一部分声波会反射回来形成回声。若障碍物具有坚硬光滑的表面易产生回声;反之,具有柔软的表面则易吸收声音;另外,粗糙的表面易散射声音。回声相比那些直接传播的声音所经过的路程更长,所以会比直接传播的声音晚被听到。如果两列声波的时间间隔小于0.1秒,人耳边无法分辨,只能听到被延长的声音。因为室温(20℃)时空气中的声速是343米每秒,所以站在声源处的人要听到回声需要障碍物到声源的距离至少17米。很多时候直播有连麦的需求,这时原创 2021-08-23 00:28:01 · 7120 阅读 · 0 评论 -
Webrtc 源码分析起步
本文是从Webrtc实际应用的方面介绍如何快速理解Webrtc的源码。Webrtc是用于web的实时通信框架,也可以直接使用Google开源的Webrtc实现来开发非Web的APP。要理解如何使用webrtc的源码,最好是先懂得Webrtc通信的流程,请查看用Webrtc实现免费的1对1高清实时视音频会议系统就可以了解Webrtc的接口使用流程,了解这个流程后就可以快速理解Google开源的那部分Webrtc源码了,并为自己使用。需要掌握Webrtc的js部分的PeerConnection,js部...原创 2021-08-21 01:06:41 · 1927 阅读 · 0 评论 -
SSL 服务器与客户端样本代码
本文为了方便进行SSL编程参考而整理,SSL编程调用的大多数流程就如如下样本代码,通过本样本代码可以比较快的测试SSL相关API。原创 2021-08-14 13:53:12 · 2772 阅读 · 0 评论 -
Windows下用OpenSSL生成CA根证书及签发server端证书
一、先下载编译好的OpenSSL程序,并展开后放在E:盘,目录结构如下所示目前放在的目录为:E:\OpensslX64二、打开一个CMD控制台窗口,设置好openssl.cnf路径用以下控制台命令进入到E:\OpensslX64\bin,并设置好openssl.cnf路径。E:cd E:\OpensslX64\binset OPENSSL_CONF=E:\OpensslX64\conf\openssl.cnf三、在当前目录E:\OpensslX64\bin 里创建两个...原创 2021-08-14 11:11:07 · 9357 阅读 · 0 评论 -
用Webrtc实现免费的1对1高清实时视音频会议系统
前言WebRTC,它是由谷歌推广的实时音视频技术栈,是W3C的标准,WebRTC技术的本质是构建点对点的实时通信,目前主流的浏览器,包括Chrome, Firefox, Edge等,天然就支持WebRTC协议。对入门开发者来说,选用这几款浏览器,连开发客户端的时间都省了。技术实现原理最简单的Web视频会议,只需要架设一个Web服务器,服务器兼具信令交换的能力(信令服务也可以独立部署),两个浏览器通过Web Server交换会话信息,就能建立P2P通道来传输媒体流,进行1v1的视频会议。如下图所示:原创 2021-06-08 21:59:11 · 1076 阅读 · 0 评论 -
如何基于WebRTC搭建一个简单的视频会议
前言WebRTC,它是由谷歌推广的实时音视频技术栈,是音视频领域搜索热度最高的技术。它有多重身份,既是W3C的标准,也是一个开源项目,还有一个对应的IETF工作组(RTCWEB)。在WebRTC出现之前,音视频通信是高不可攀的领域,需要大量的专业积累才能入门,而现在,越来越多的开发者通过WebRTC来深入了解RTC技术。WebRTC技术的本质是构建点对点的实时通信,目前主流的浏览器,包括Chrome, Firefox, Edge等,天然就支持WebRTC协议。对入门开发者来说,选用这几款浏览器,连.原创 2021-04-10 22:34:39 · 2558 阅读 · 0 评论 -
当前开源WebRTC项目技术选型
本文介绍了各个开源的视频会议系统的主要特点,用于帮助初次开发视频会议的同学选型参考。对SFU流媒体服务器的选择,没有最好,只有最合适。每个开源实现都有其各自的特点,都可以应用到实际产品中,只不过作为开发人员都有自己独特的技术背景,你需要根据自身特点以及项目特点选一个最合适的。原创 2021-04-10 22:17:47 · 4830 阅读 · 2 评论 -
SCTP协议与程序设计案例
1. 简介SCTP是为了在IP网上传输信令而由IETF的信令传输工作组(SIGTRAN)提出的传输层协议(RFC2960,RFC4960)。 和TCP,UDP相比, UDP是无连接的传输协议,它能满足低延迟的要求,但是它却无法保证可靠传输。TCP能保证数据可靠传输,但是它也不能完全符合信令传输的要求;TCP套接字不支持多宿性;TCP是面向比特流的,将数据传输当作是没有结构的字节序列。2. SCTP的基本概念多宿性(multi-homing) 多宿是指一个SCTP 端点可以通过多个..原创 2021-04-10 22:10:46 · 547 阅读 · 0 评论 -
Webrtc 中的SDP协议字段解释
SDP(Session Description Protocol)会话描述协议,是一种会话描述格式,不是传输协议(例如RTP,RSTP是传输协议),SDP协议是也是基于文本的协议。SDP很早就用于流媒体中来描述媒体信息,例如RTSP的SDP文件,现在的WebRTC也是用SDP来描述媒体信息的。在WebRTC中,SDP主要用来描述:•设备支持的媒体能力,包括编解码器等•ICE候选地址•流媒体传输协议SDP协议基于文本,格式非常简单,可扩展性比较强。它由多个行组成,每一行都为键值格式<类型&原创 2020-07-29 09:19:33 · 835 阅读 · 0 评论