当前位置: 首页 > news >正文

WebRTC调研

WebRTC是什么,为什么,如何使用

在这里插入图片描述

在这里插入图片描述

WebRTC有什么优势

在这里插入图片描述

WebRTC Architecture

在这里插入图片描述

在这里插入图片描述

Amazon KVS WebRTC

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

其它厂商WebRTC

海康门禁WebRTC

在这里插入图片描述

在这里插入图片描述

海康门禁其他界面整理

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

威视通WebRTC

局域网

Google浏览器

在这里插入图片描述

Microsoft Edge

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

公网

RTSP

RTMP

NVR

ONVIF

SIP

SRT

WebRTC协议栈的寻找

mongoose + kvs(amazon-kinesis-video-streams-webrtc-sdk-c)

局域网(Web端本地预览需要支持信令交互)

Web端:adapter.js,adapter.min.js,demo.css,jquery-3.0.0.min.js,index.html

设备端:信令服务器设备端web server实现,需要支持WebRTC信令交互(局域网)

STUN server:stun:stun.kinesisvideo.us-west-2.amazonaws.com:443

​ stun:stun.kinesisvideo.ap-east-1.amazonaws.com:443

公网(将信令服务器搭建在公网)

远程访问(米家,海康,TUTK,涂鸦)

信令服务器

PEERJS:https://peerjs.com/

Saltyrtc:https://github.com/saltyrtc

设备支持webrtc

1.音/视频流 不使用链表,使用共享内存(单生产者->多消费者,webrtc、webs、rtsp、rtmp、SIP、nvr、flv、http)

2.kvswebrtc协议栈(https://github.com/awslabs/amazon-kinesis-video-streams-webrtc-sdk-c),设备实现webrtc交互过程,实现信令交互服务

3.web/客户端/设备支持webrtc

4.信令服务器设计(局域网/互联网,STUN,TURN服务,ICE服务)

其他

编译libwebsocket

git clone https://github.com/warmcat/libwebsockets.git
cd libwebsockets/
git checkout v4.3.3
git apply --verbose --ignore-whitespace /root/amazon-kinesis-video-streams-webrtc-sdk-c/CMake/Dependencies/libwebsockets-old-gcc-fix-cast-cmakelists.patchcmake -DCMAKE_C_COMPILER=/opt/hisi-linux/x86-arm/arm-himix200-linux/bin/arm-himix200-linux-gcc -DCMAKE_CXX_COMPILER=/opt/hisi-linux/x86-arm/arm-himix200-linux/bin/arm-himix200-linux-g++ -DCMAKE_INSTALL_PREFIX=$PWD/install -DCMAKE_C_FLAGS="-fPIC" -DLWS_WITH_HTTP2=1 -DLWS_HAVE_HMAC_CTX_new=1 -DLWS_HAVE_SSL_EXTRA_CHAIN_CERTS=1 -DLWS_HAVE_OPENSSL_ECDH_H=1 -DLWS_HAVE_EVP_MD_CTX_free=1 -DLWS_WITHOUT_SERVER=1 -DLWS_WITHOUT_TESTAPPS=1 -DLWS_WITHOUT_TEST_SERVER_EXTPOLL=1 -DLWS_WITHOUT_TEST_PING=1 -DLWS_WITHOUT_TEST_CLIENT=1 -DLWS_STATIC_PIC=1 -DLWS_WITH_STATIC=1 -DLWS_WITH_SHARED=0 -DLWS_WITH_MBEDTLS=OFF -DLWS_WITH_MINIMAL_EXAMPLES=1 -DLWS_HAVE_PTHREAD_H=1 -DLWS_WITH_THREADPOOL=0 -DLWS_WITH_ZLIB=0 -DLWS_HAVE_EVENTFD=0 -DLWS_OPENSSL_INCLUDE_DIRS="/root/temp/arm_build/openssl/include/" -DLWS_OPENSSL_LIBRARIES="/root/temp/arm_build/openssl/lib/libssl.so;/root/temp/arm_build/openssl/lib/libcrypto.so" ..
make
make install

编译kvswebrtc

安装库
sudo apt-get install cmake m4 pkg-config libssl-dev libcurl4-openssl-dev liblog4cplus-dev libgstreamer1.0-dev libgstreamer-plugins-base1.0-dev gstreamer1.0-plugins-base-apps gstreamer1.0-plugins-bad gstreamer1.0-plugins-good gstreamer1.0-plugins-ugly gstreamer1.0-tools git clone --recursive https://github.com/awslabs/amazon-kinesis-video-streams-webrtc-sdk-c.git
mkdir -p amazon-kinesis-video-streams-webrtc-sdk-c/build; cd amazon-kinesis-video-streams-webrtc-sdk-c/build; cmake ..
make

kvswebrtc运行实例

export AWS_ACCESS_KEY_ID=AKIAZIIT3K7LWLLXU3UH
export AWS_SECRET_ACCESS_KEY=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
export AWS_KVS_LOG_LEVEL=LOG_LEVEL_DEBUG
export DEBUG_LOG_SDP=TRUE
export AWS_DEFAULT_REGION=us-east-1./kvsWebrtcClientMasterGstSample demo-webrtc-channel./kvsWebrtcClientMaster demo-webrtc-channel

参考链接

https://webrtc.github.io/webrtc-org/architecture/

参考文档

amazon-kvs.pdf

amazon-kvs-builds-the-visual-ecology-of-Iot.pdf

相关文章:

  • CRMEB 中 PHP 短信扩展开发:涵盖一号通、阿里云、腾讯云、创蓝
  • 初版BL程序一些细节整理(碎碎念)
  • Rust 学习笔记:关于共享状态并发的练习题
  • UNECE R152——解读自动驾驶相关标准法规(AEB)
  • 【向量库】Weaviate概述与架构解析
  • 0day同步!昇思MindSpore框架成功适配面壁MiniCPM4.0模型并上线魔乐社区
  • 树莓派4B, ubuntu20.04, 安装Ros Noetic[踩坑记录]
  • 云原生K8s+Docker+KubeSphere+DevOps
  • K8S认证|CKS题库+答案| 10. Trivy 扫描镜像安全漏洞
  • 数据可视化交互
  • go 里面的指针
  • 盲盒一番赏小程序:引领盲盒新潮流
  • Appuploader:在WindowsLinux上完成iOS APP上架的一种解决方案
  • LeetCode 高频 SQL 50 题(基础版)之 【高级字符串函数 / 正则表达式 / 子句】· 下
  • 手机平板能效生态设计指令EU 2023/1670标准解读
  • 打开网页即可远程控制手机,Linux系统亦可使用
  • 2025盘古石杯决赛【手机取证】
  • Polarr:手机修图,专业与创意并存
  • 从物理机到云原生:全面解析计算虚拟化技术的演进与应用
  • 打手机检测算法AI智能分析网关V4守护公共/工业/医疗等多场景安全应用
  • 贺州住房和城乡建设部网站/重庆网站制作系统
  • 怎么免费制作一个企业网站/深圳全网推广
  • 网站界面用什么做/企业网站制作与维护
  • 长沙网站建站公司/手机访问另一部手机访问文件
  • 济源制作网站/百度app免费下载
  • 中 网站建设 扬州/seo体系百科