- 博客(59)
- 资源 (147)
- 收藏
- 关注
原创 【owt-server】微服务结构
owt-server的主要微服务最近做mcu相关业务,原项目利用owt-server开发。参考大神:原项目利用owt-server开发management_api1个或者多个实例,owt服务的入口,保存所有房间的配置,产生和认证tokens,部署多个实例可以实现负载均衡,用户接入可见cluster-manager1个或者多个实例,控制集群中所有的workers,检查保活,按照配置去调度workers,如果设定一个是master,则提供服务,其他的作为备用,用户不可见webrtc_..
2021-05-31 14:49:47 448
原创 【VSCODE】vs配置remote 开发环境自动登录
插件装载remote侧SSH 免密码登陆参考在windows上ssh-keygen得到pair复制 pub 的到 ubuntu上。复制到authorized_keys 里面:zhangbin@ubuntu:~/simu$ cd ~/.sshzhangbin@ubuntu:~/.ssh$ lszhangbin@ubuntu:~/.ssh$ ls -altotal 8drwx------ 2 zhangbin zhangbin 4096 Apr 21 20:02 .dr...
2021-05-31 13:59:46 478
原创 【高斯 GANSS 键盘】 GS87-D 设置指南
zz高斯 GANSS GS87-D 设置指南说明书zz from: https://www.jianshu.com/p/ce4fd3f3e598前言大概一年前入手高斯GS87-D白色茶轴, 用到现在个人感觉相当满意, 只是蓝牙设置逻辑颇为奇怪且繁琐, 故把之前文章中的错误改正并且把说明书上的其他也内容整理一下搬上来.蓝牙模式如何打开蓝牙模式供电: 蓝牙工作需要供电, 给高斯 GS87-D 供电有两种方式:键盘背后的开关打到ON;使用 USB Type-C 电源.切换模式: 有线和无
2021-05-29 12:06:26 15426
原创 【livevideosdk直播笔记】rtc安全/传输/turn
AP2P 信令交互身份校验网络协商通信地址https websockets 安全传输浏览器中,访问本地资源的权限媒体dtls 密钥协商srtp 使用udp 传输。安全访问信令安全信令提供ICE的关键信息ICE UNMAE PASSWORD基于ICE框架,使用关键信息协商DTLS 协商时 身份媒体通道的候选地址,用于媒体通道连通性检测。使用https/wss 传输以上的SDP信息ICE 媒体通道建立通话前,建立通信链路基于.
2021-05-29 11:43:37 174
原创 【转载】fantasy_arch:nginx-rtmp内网回源架构
nginx-rtmp内网回源架构流程系统缺陷无支持多个客户端连接对应一个nvr录制机到外网服务器的连接,因为是通过唯一的会话id匹配的,后期采用连接池方案,解决这个问题。1 需求问题外网服务器接受客户端的hls回放请求,希望能通过外网服务器回源内网的录制机上的录像文件。2 问题点(1)内网录制机如何主动连接外网服务器(2)外网服务器如何标识和内网录制机的连接(3)连接断开后,如何找回3 实现方案Hls回放请求响应流程(1) 内网录制机和CMS建立常连..
2021-05-28 17:58:04 230 1
原创 【转载】「一朵喇叭花压海棠」大神的详细设计:基于WebRTC的直播CDN
基于WebRTC的直播CDN转载大神的 一朵喇叭花压海棠 2018-12-17 16:22:56 5988 已收藏 21分类专栏: 直播 webrtc CDN 文章标签: WebRTC CDN 直播基于WebRTC的直播CDN1 背景2 功能3 架构4 主要业务4.1 推流4.1.1 推WebRTC4.1.2 推RTMP4.1.3 推WebRTC转RTMP4.1.4 推RTMP转WebRTC4.2 拉流4.1.1 拉WebRTC4.2.2 拉FLV/HLS/FMP45
2021-05-28 17:06:17 302
原创 【WebRTC Insertable Stream】1 音频channel 处理流程
WebRTC Insertable Stream 初探与 WebRTC"管道化可能是比较有用的。剑痴乎大神也进行了分析本文首次认知【WebRTC Insertable Stream】,明确了 一些代码使用的地方。并追踪了 audio channel (F:\WEBRWTCSTORE\webrtc-checkout\src\audio\channel_send.cc)阶段的处理流程。frame_transformer_delegate_ 的使用搜索 frame_transformer_de..
2021-05-28 11:23:35 290
转载 【zz】替換 mediasoup 的 Node.js 模塊實現的嘗試
替換 mediasoup 的 Node.js 模塊實現的嘗試語言: CN / TW / HK時間 2020-03-31 22:09:50 Tubumu主題: Node.js libuv關於 mediaSoup 是什麼以及能用其做什麼,不是本文的重點。基於某些原因考慮,希望將 mediasoup 的 Node.js 模塊使用其他平台/語言來實現,比如 Java 或 .Net Core 。 CSDN 上有位博主使用 C++ 在 Windows 平台實現了,不過沒開源所以只好自己動手。二、Nod.
2021-05-27 16:39:11 260
原创 【mediasoup】JS进程与Cpp进程通信:channel建立
转载自:Media soup源码分析(二)channel的建立constructorspawn里标准io口有7个参数,分别是标准输入、标准输出、标准错误、以及4个通道,源码中对标准输入规定的是ignore,其它6个参数是pipe(管道),这里要注意的是,这个管道并不是Linux进程间通信的匿名管道或有名管道,它是UnixSocketPair,因为只有UnixSocketPair才是全双工通信,从代码中我们也能看出它是全双工的,而匿名(有名)管道是半双工通信接着重点是 this._ch..
2021-05-27 11:23:42 280
原创 【mediasoup】基础架构
Mediasoup源码分析大神还介绍了如何用vscode nodejs 调试 mediasoup:vscode调试gulp设置我现在是vs2019 调试cpp版本demo 的 exe设计架构图Router用于流媒体复制转发,WebRtcTransport维护与客户端的通信。3种Transport:WebRtcTransport,PlainRtpTransport,PipeTransport.有一个问题webrtc的上下行,rtp流是区分音频和视频的?进程间,通过consumer ..
2021-05-27 10:38:33 182
原创 【mediasoup】DepLibUV的使用
一个 worker 对应一个libuv 实例一个libuv实例 对应一个loopDepLibUVE:\ADDEV\RTCTRANS\36tTRANS\36trans_mediasoup\tomkwok-mediasoup-cpp\worker\src\DepLibUV.cpp#define MS_CLASS "DepLibUV"// #define MS_LOG_DEV_LEVEL 3#include "DepLibUV.hpp"#include "Logger.hpp"#in..
2021-05-27 10:09:59 261
原创 【mediasoup】判断数据包是否是rtp包
webrtc音频系列——4、RTP与RTCP协议 RTP: A Transport Protocol for Real-Time Applications一般情况下,在实时互动直播系统传输音视频数据流时,我们并不直接将音视频数据流交给 UDP 传输,而是先给音视频数据加个 RTP 头,然后再交给 UDP 进行传输。RTP Fixed Header Fields版本号必须是2version (V): 2 bitsThis field identifies the..
2021-05-26 19:12:30 621
原创 【mediasoup】RTP Header 扩展
参考 WebRTC RTP Header Extension 分析mediasoup使用 rfc5285 。说明其中,frameMarking07 好像已经被RFC删除了。 uint8_t frameMarking07{ 0u }; // NOTE: Remove once RFC.mediasoup 实现E:\ADDEV\RTCTRANS\36tTRANS\36trans_mediasoup\tomkwok-mediasoup-cpp\worker\include\RT..
2021-05-26 19:01:01 395
原创 【congestion_controller】6 goog_cc : DelayBasedBwe
F:\WEBRWTCSTORE\webrtc-checkout\src\modules\congestion_controller\goog_cc\delay_based_bwe.h参考WebRTC带宽估计基于延迟的带宽估计接收端和发送端均可以做,新版本发送端做。接收端不再做。虽然有代码,但没调用。重要概念包组在 WebRTC 中,延迟梯度不是一个个包来计算的,而是通过将包分组,然后计算这些包组之间的延迟,这样做可以减少计算次数,同时减少误差。包组的划分原则为2个- ..
2021-05-26 17:35:36 247
原创 【MediaSoup】PlainTransport 创建
参考大神 Mediao Soup Demo协议分析 router 响应requestE:\ADDEV\RTCTRANS\36tTRANS\36trans_mediasoup\tomkwok-mediasoup-cpp\worker\src\RTC\Router.cppvoid Router::HandleRequest(Channel::Request* request)PlainTransport收到请求上图method 对应的是methodId从request中获取tra..
2021-05-26 14:24:53 369
原创 【mediasoup】ffmpeg推拉流
参考lee-jong/mideasoup_server发送裸的rtp 流要制定ssrc音视频还是分开发送的 "[select=a:f=rtp:ssrc=${AUDIO_SSRC}:payload_type=${AUDIO_PT}]rtp://${transportIp}:${transportPort}|[select=v:f=rtp:ssrc=${VIDEO_SSRC}:payload_type=${VIDEO_PT}]rtp://${transportIp}:${transportPo..
2021-05-26 12:03:51 812
原创 【mediasoup】VS 构建运行demo和worker
tomkwok 工程是跨平台的E:\ADDEV\RTCTRANS\36tTRANS\36trans_mediasoup\tomkwok-mediasoup-cpp\worker\CMakeLists.txtdemo 依赖于mediasoup 库mediasoup 库 依赖三个库 spdlog uv netstringcmake_minimum_required(VERSION 3.13)set(PROJECT_NAME "mediasoup")project(${P
2021-05-26 11:17:32 299 1
原创 【congestion_controller】5 goog_cc : TrendlineEstimator
TrendlineEstimator 对网络状态进行估计参考 剑痴乎 大神 WebRTC研究:Trendline滤波器-TrendlineEstimator 我之前的文章 : 到达时间滤波器-InterArrival 做了 包组时间差计算 这些值会给到TrendlineEstimator 进一步做网络状态的估计与预测。在gcc 算法中,TrendlineEstimator 实际使用是在基于延迟的带宽估计 DelayBasedBwe 中使用到。F:\WEB
2021-05-25 17:23:10 270
原创 【congestion_controller】3 GoogCcNetworkController
核心NetworkStateEstimator 和 NetworkStatePredictorstruct GoogCcConfig { std::unique_ptr<NetworkStateEstimator> network_state_estimator = nullptr; std::unique_ptr<NetworkStatePredictor> network_state_predictor = nullptr; bool feedback_on.
2021-05-25 16:03:42 252
原创 【congestion_controller】4 libcc
congestion_controller模块组成大神给出了类图 congestion_controller、 remote bitrate estimator、pacing模块浅析congestion_controller模块包含了多个类,其中核心类的类图如下:涉及到的类真的是很多啊。大神也做了把gcc这块拿出来的办法,独立为一个libcc库。提供c 的api 即可。但是大神没有开源我看了下,mediasoup是有这个实现的。但是有不同。搞清楚原理,然后再实操一把。med
2021-05-25 15:58:21 189
原创 【congestion_controller】2 GoogCcNetworkController 与 NetworkControllerInterface
GoogCcNetworkController 实现了网络控制器接口。网络控制器接口是api 里的类。接口通过factory实现,GoogCcNetworkController 实现了NetworkControllerInterfaceGoogCcNetworkControllerFactory 实现了NetworkControllerFactoryInterfaceGoogCcNetworkController拥塞控制的核心实现类。m90 路径:F:\WEBRWTCSTORE\..
2021-05-25 15:25:15 460 1
原创 【congestion_controller】1 目录结构
(congestion_controller)目录结构gcc 使用的发送端bwe我之前文章,是看的接收端的新版本似乎是基于发送端做带宽估计。老版本的gcc估算方式 是接收端通过 rtcp .remb返回的建议码率,新版 bwe 接收端的码率估算也放到了发送端进行的 。WebRTC研究:包组时间差计算-InterArrival 中提到:在新版GCC(Google Congestion Control)也就是Sendside BWE中,包含两种拥塞控制模型。一种是基于丢包的,一种
2021-05-25 12:00:35 221
原创 【带宽估计module】InterArrival 到达时间滤波器
上一篇,RemoteBitrateEstimatorAbsSendTime 带宽估计算法用到了 InterArrival 是 到达时间模型参考 剑痴乎大神基于时延的拥塞控制算法主要由四部分组成:预处理(pre-filtering), 到达时间滤波器(arrival-time filter), 过载检测器(over-use detector),码率控制器(and a rate controller)。本文主要介绍其中的到达时间滤波器 InterArrival 。拥塞值参..
2021-05-24 18:20:47 246
原创 【带宽估计module】接收侧 RemoteBitrateEstimatorAbsSendTime 2 算法实现
【带宽估计module】接收侧 RemoteBitrateEstimatorAbsSendTime 2 实现前面,我们知道cc需要BE参考大神: WebRTC GCC拥塞控制算法详解GCC核心思想就是通过预测可用带宽来控制发送的速率,会结合发送端和接收端两端各自估测的带宽来综合计算, 其中发送端的带宽估测主要依赖于丢包率(其实也有延迟), 接收端的带宽估测依赖于延迟(的变化)。每个包都需要IncomingPacket 处理。处理时调用REB算法,如RBE算法中接受侧实现Re
2021-05-24 18:12:14 343
原创 【拥塞控制】ReceiveSideCongestionController调用发送侧/接收侧RBE
参考 LearningWebRTC: 拥塞控制 WebRTC 实现拥塞控制牵涉到三个模块RBE(Remote Bitrate Estimator),负责算法核心部分,即带宽估计。CC(Congestion Control),封装RBE,负责实现DBCC。BC(BitrateController):实现LBCC,并取min(DBCC, LBCC)作为最终结果。各自的功能在下面会看到详细的介绍。RBE分为发送侧、接收侧。CC模块(如ReceiveSideCongestionControl..
2021-05-24 15:24:23 337
原创 【k8s】网络操作相关指令
读懂k8s网络策略NetworkPolicybusyboxexit退出kubectl run -it --rm --image busybox busybox --namespace cdnnginx为例nslloop# run nginx pods via deployment$ kubectl run nginx-is-dumb --image=nginx --replicas=2 --port=80deployment "nginx-is-dumb" created..
2021-05-18 15:05:28 94
原创 【k8s】转载:Kubernetes的三种外部访问方式:NodePort、LoadBalancer 和 Ingress
Kubernetes的三种外部访问方式:NodePort、LoadBalancer 和 Ingress【编者的话】本文分析了 NodePort,LoadBalancer 和 Ingress 这三种访问服务方式的使用方式和使用场景,指出了各自的优缺点,帮助用户基于自己的场景做出更好的决策。最近有些同学问我 NodePort,LoadBalancer 和 Ingress 之间的区别。它们都是将集群外部流量导入到集群内的方式,只是实现方式不同。注意:这里说的每一点都基于Google Kuberne
2021-05-17 17:00:33 486
原创 【k8s】华为云2:Pod:Kubernetes中的最小调度对象
更新时间:2021/04/14 GMT+08:00查看PDF分享什么是PodPod是Kubernetes创建或部署的最小单位。一个Pod封装一个或多个容器(container)、存储资源(volume)、一个独立的网络IP以及管理控制容器运行方式的策略选项。Pod使用主要分为两种方式:Pod中运行一个容器。这是Kubernetes最常见的用法,您可以将Pod视为单个封装的容器,但是Kubernetes是直接管理Pod而不是容器。Pod中运行多个需要耦合在一起工作、需要共享资源的容器.
2021-05-17 16:31:57 315
原创 【k8s】华为云:容器与Kubernetes讲解,什么是k8s节点?
Kubernetes更新时间:2021/04/14 GMT+08:00查看PDF分享Kubernetes是什么Kubernetes是一个很容易地部署和管理容器化的应用软件系统,使用Kubernetes能够方便对容器进行调度和编排。对应用开发者而言,可以把Kubernetes看成一个集群操作系统。Kubernetes提供服务发现、伸缩、负载均衡、自愈甚至选举等功能,让开发者从基础设施相关配置等解脱出来。Kubernetes可以把大量的服务器看做一台巨大的服务器,在一台大服务器上面运行应
2021-05-17 16:23:33 369
原创 【k8s】Install kubectl binary with curl on Linux
阿里云推荐安装kubectlInstall kubectl binary with curl on Linuxroot@zhangbin-i58265u:~# curl -LO “https://dl.k8s.io/release/KaTeX parse error: Expected 'EOF', got '#' at position 415: …ngbin-i58265u:~#̲ curl -LO "http…(curl -L -s https://dl.k8s.io/release/sta..
2021-05-17 15:49:59 142
原创 【k8s】使用minikube在Ubuntu上搭建一个单机版的k8s
https://minikube.sigs.k8s.io/docs/start/下载minikuberoot@ubuntu:/home/zhangbin# curl -LO https://storage.googleapis.com/minikube/releases/latest/minikube-linux-amd64% Total % Received % Xferd Average Speed Time Time Time CurrentDload ..
2021-05-17 15:29:37 513
原创 【K8S】Skupper 和 Submariner 打通到kubernetes集群的网络
SkupperVIRTUAL APPLICATION NETWORKS FOR HYBRID CLOUD INTERCONNECTAMQP AS A NETWORK PROTOCOLSkupper uses the Apache Qpid Dispatch Router as its VAN router. The router is based on the AMQP protocol and is lightweight and stateless.In addition to
2021-05-17 11:27:14 664 2
原创 【k8s】停止容器,删除镜像
【LAS K8S】查看srs 镜像内容接下来,停止我开启的容器,删除镜像。以便我重新构建。停止镜像ctl c 停止了镜像停止容器root@zhangbin-i58265u:/home/zhangbin/aliply/srs-las/srs# docker run 4c76011ec4ae[2021-05-13 03:41:42.812][Trace][1][l0267w3c] XCORE-SRS/4.0.79(Leo)[2021-05-13 03:41:42.813][Tr..
2021-05-17 11:20:38 2711
原创 【K8S】Submariner实现跨集群通信
混合云跨集群pod通信有Skupper Submariner华为云转载 了一篇 Pod在混合云中的多K8S集群通信,RH@KubeCon 2019 Day2 文章来源: blog.51cto.com,作者:mb5fdcad5445be3,版权归原作者所有,如需转载,请联系作者。原文链接:blog.51cto.com/15061931/2568935Pod在混合云中的多K8S集群通信,RH@KubeCon 2019 Day2,OCP是红帽OpenShift Container Platfor..
2021-05-17 11:19:01 1443
原创 【k8s】【转载】落地多集群Kubernetes的方案
转载 大神 iyacontrol 关于多集群Kubernetes的一些思考 集群联邦Kubernetes Cluster FederationCilium Cluster Mesh解决方案通过隧道或直接路由,解决跨多个Kubernetes集群的Pod IP路由,而无需任何网关或代理。当然我们需要规划好每个集群的POD CIDR关于多集群Kubernetes的一些思考iyacontrol iyacontrol 专注kubernetes,istio,faas等云原随着Kub..
2021-05-13 17:35:54 474
原创 【k8s】 Skupper :用于混合云互连的虚拟应用程序网络
用于混合云互连的虚拟应用程序网络2019年11月12日特德·罗斯互连分布在各个云位置的所有组件多云和混合云计算是最近流行的话题。在工作负载的可移植性和管理租用的计算资源方面已经取得了良好的进展。仍然难以捉摸的一个重要方面是如何互连分布在各个云位置的所有组件。本文将介绍虚拟应用程序网络(VAN),作为针对多重和混合云互连的通用解决方案。虚拟应用程序网络(VAN)虚拟应用程序网络必须满足以下要求:适用于互连云位置的灵活拓扑无需星形或全网格拓扑允许冗余路径以实现弹
2021-05-13 16:32:03 300
原创 【k8s】Docker容器是如何进行网络通信的, Docker和Kubernetes网络模型
转载 知乎大神: luoxn28 大神docker0veth查看容器: 端口映射docker port daf83266f8ecDocker容器是如何进行网络通信的Docker是基于go语言开发,Linux下的底层技术主要基于cgroups、namespace以及联合文件技术实现的一种进程级别的轻量级虚拟化解决方案。由于Docker进程隔离独立于宿主机上其他进程,因此也称为容器,Docker在容器的基础上,进行了更进一步的封装,从文件系统、网络到进程隔离等,极大简化了容器的创..
2021-05-13 15:13:27 339 1
原创 【K8S】[掘金] kubernetes 网络分析之二 K8S的网络模型
kubernetes 网络分析之二 K8S的网络模型K8S 的网络特征每个POD 一个IP (IP peer POD)所有POD 通过IP 直接访问其他POD 而不管POD 是否在同一台物理机上POD 内的所有容器共享一个LINUX NET NAMESPACE (网络堆栈), POD 内的容器, 都可以使用localhost 来访问pod 内的其他容器.K8S 对集群网络的要求:所有容器都可以在不用NAT 的方式下访问其他容器所有节点都可以在不用NAT的方式下同所有容器..
2021-05-13 15:00:45 180
DX910-SW-99002-r3p2-01rel1.tgz
2015-09-01
usb转串口适用于win8/8.1/10
2015-08-02
nexus5-cm11 提取的boot.img
2015-03-30
nexusd5 android5.0 型号LRX210 ROOT所需文件打包
2014-11-23
Creating Android Applications: Develop and Design 源码
2014-04-16
moto MB865 ROOT 工具包
2014-03-28
UPnP-arch-DeviceArchitecture-v1.1.pdf
2014-03-14
live.2013.10.18windows
2013-10-19
Whole Tomato Visual Assist X 2023.1 v10.9.2476.0 (19 Jan 2023)
2023-05-28
vs2022 visual assist x10.9.2451.0 by piaopyun/oledlg
2022-09-23
VS2022 VISUAL ASSIST X 小番茄 v10.9.2435.0 VA_X_Setup2440_0.exe
2022-02-25
[FLV 解析工具]FLV_UI_Parse.exe
2021-10-08
【右键菜单直接修改工具】shmnviewRightMenuModiy.zip
2021-10-08
openssl-OpenSSL_1_1_1-stable.7z
2020-07-04
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人