E-COM-NET
首页
在线工具
Layui镜像站
SUI文档
联系我们
推荐频道
Java
PHP
C++
C
C#
Python
Ruby
go语言
Scala
Servlet
Vue
MySQL
NoSQL
Redis
CSS
Oracle
SQL Server
DB2
HBase
Http
HTML5
Spring
Ajax
Jquery
JavaScript
Json
XML
NodeJs
mybatis
Hibernate
算法
设计模式
shell
数据结构
大数据
JS
消息中间件
正则表达式
Tomcat
SQL
Nginx
Shiro
Maven
Linux
metartc
metaRTC
8.0,一个全新架构的webRTC SDK库
概述
metaRTC
8.0是
metaRTC
开源以来架构变化最大的一个版本,是metaIPC3.0等高性能的基础。
metaRTC
·
2024-09-16 02:31
webrtc
音视频
metaRTC
/webRTC QOS 方案与实践
概述质量服务(QOS/QualityofService)是指利用各种技术方案提高网络通信质量的技术,网络通信质量需要解决下面两个问题:网络问题:UDP/不稳定网络/弱网下的丢包/延时/乱序/抖动数据量问题:发送数据量超带宽负载和平滑发送拥塞控制是各种技术方案的数据基础,丢包恢复解决丢包问题,抗乱序抖动解决网络乱序抖动问题,流量控制解决平滑发送数据/数据超带宽负载/延时问题。拥塞控制(Congest
metaRTC
·
2024-09-16 02:31
metaRTC
解决方案
webrtc
qos
metaRTC
5.0 API编程指南(一)
概述
metaRTC
5.0版本API进行了重构,本篇文章将介绍webrtc传输调用流程和例子。
metaRTC
5.0版本提供了C++和纯C两种接口。
metaRTC
·
2024-09-16 02:01
metaRTC
c++
c语言
webrtc
用yangwebrtc搭建兼容webrtc云3D云游戏的云平台
下载源码和运行类库https://github.com/
metartc
/yangwebrtc/releases/tag/2.0.058
639c12a85b17
·
2024-02-10 01:37
metartc
5_jz源码阅读-yang_decode_rtcpCompound
//解析rtcp的命令到rtcps中。int32_tyang_decode_rtcpCompound(YangRtcpCompound*rtcps,YangBuffer*buffer){if(rtcps==NULL)return1;int32_terr=Yang_Ok;rtcps->data=buffer->data;rtcps->nb_data=buffer->size;//如果buffer中不
王方帅
·
2024-01-15 00:48
metartc5_jz源码阅读
实时音视频
音视频
p2p
c语言
metartc
5_jz源码阅读-yang_encode_rtpHeader
//编码rtpHeaderint32_tyang_encode_rtpHeader(YangBuffer*buf,YangRtpHeader*header){int32_terr=Yang_Ok;//EncodetheRTPfixheader,12bytes.//@seehttps://tools.ietf.org/html/rfc1889#section-5.1//Theversion,padd
王方帅
·
2024-01-15 00:48
metartc5_jz源码阅读
实时音视频
音视频
p2p
webrtc
metartc
5_jz源码阅读-yang_encode_rtpExtensions
//定义
metartc
的rtp扩展,标准的webrtc不定义任何头扩展,这个由开发者自定义。
王方帅
·
2024-01-15 00:42
metartc5_jz源码阅读
音视频
p2p
实时音视频
webrtc
metartc
5_jz源码阅读-udp->receive
之前在
metartc
5_jz源码阅读-yang_run_rtcudp_thread-CSDN博客中说到://调用udp的receive方法将读取的buffer和udp->user传入。
王方帅
·
2024-01-14 11:00
metartc5_jz源码阅读
音视频
c语言
p2p
实时音视频
metartc
5_jz源码阅读-yang_rtcpush_on_rtcp_nack
//发送端收到接收端发来的rtcpnack命令,需要丢包重传int32_tyang_rtcpush_on_rtcp_nack(YangRtcContext*context,YangRtcPushStream*pub,YangRtcpCommon*rtcp){//容错处理if(context==NULL||pub==NULL||rtcp==NULL)returnERROR_RTC_PUBLISH;i
王方帅
·
2024-01-14 06:55
metartc5_jz源码阅读
webrtc
音视频
p2p
实时音视频
metartc
5_jz源码阅读-yang_rtcpush_on_rtcp_ps_feedback
//(Payload-specificFBmessages,有效载荷反馈信息),这个函数处理Payload重传int32_tyang_rtcpush_on_rtcp_ps_feedback(YangRtcContext*context,YangRtcPushStream*pub,YangRtcpCommon*rtcp){if(context==NULL||pub==NULL)returnERROR
王方帅
·
2024-01-14 06:55
metartc5_jz源码阅读
p2p
音视频
实时音视频
webrtc
metartc
5_jz源码阅读-yang_stats_on_recvRR
int32_tyang_stats_on_recvRR(yangboolisAudio,YangRecvStats*recvStats,YangSendStats*sendStats,YangRtcpCommon*rtcp){YangRemoteRecvStats*stats=isAudio?&recvStats->audio:&recvStats->video;uint32_trtt=0;//d
王方帅
·
2024-01-14 06:55
metartc5_jz源码阅读
音视频
p2p
实时音视频
webrtc
metartc
5_jz源码阅读-yang_push_h264_video
YangRtcConnection.c://如果pushH264不为空时,则调用pushH264的on_video方法。if(session->pushH264)returnsession->pushH264->on_video(session,session->pushH264->push,p);YangPushH264.c://设置on_video的实际执行函数push->on_video=y
王方帅
·
2024-01-14 06:24
metartc5_jz源码阅读
c语言
p2p
音视频
实时音视频
metartc
5_jz源码阅读-yang_push_h264_package_single_nalu2
//通过单一nalu的方式发送视频帧。int32_tyang_push_h264_package_single_nalu2(YangRtcSession*session,YangPushH264Rtp*rtp,YangFrame*videoFrame){int32_terr=Yang_Ok;//重置videoRawPacketyang_reset_rtpPacket(&rtp->videoRawP
王方帅
·
2024-01-14 06:24
metartc5_jz源码阅读
c语言
音视频
实时音视频
p2p
metartc
5_jz源码阅读-p2p通过stun服务器进行通信
1.YangIpc.c/yang_create_ipc需要设置stun服务器的ip地址和端口号设置iceCandidateType为2,表示走stun,即向stun服务器发起请求获取本机的公网ip地址。//设置iceServerIP和端口号,设置iceCandidate类型。strcpy(session->avinfo.rtc.iceServerIP,"182.92.163.143");sessi
王方帅
·
2024-01-14 06:52
metartc5_jz源码阅读
音视频
实时音视频
p2p
webrtc
metartc
5_jz源码阅读-yang_ipc_rtcrecv_publishVideoData
//将视频帧数据publish到p2p客户端int32_tyang_ipc_rtcrecv_publishVideoData(YangIpcRtcSession*session,YangStreamCapture*data){int32_tret=0;//循环获取pushs中所有PeerConnectionfor(int32_ti=0;ipushs.vec.vsize;i++){YangPeerC
王方帅
·
2024-01-07 23:11
metartc5_jz源码阅读
实时音视频
音视频
p2p
c语言
metartc
5_jz源码阅读-yang_push_h264_package_stap_a
//通过stap_a模式发送sps和pps包给对端。int32_tyang_push_h264_package_stap_a(void*psession,YangPushH264Rtp*rtp,YangFrame*videoFrame){interr=Yang_Ok;YangRtcSession*session=(YangRtcSession*)psession;//重置rtpPacket的字段y
王方帅
·
2024-01-07 23:11
metartc5_jz源码阅读
音视频
c语言
p2p
实时音视频
metartc
5_jz源码阅读-yang_create_ipcPublish
voidyang_create_ipcPublish(YangIpcPublish*publish,YangAVInfo*avinfo){YangIpcPublishSession*session=&publish->session;//调用君正的库实现视频录制和编码yang_create_videoEncoder(&session->encoder);//创建p2prtc,以便不断的读取君正录制
王方帅
·
2024-01-07 23:10
metartc5_jz源码阅读
c语言
音视频
实时音视频
p2p
metartc
5_jz源码阅读-yang_ipc_rtcrecv_addPeer
//上一篇文章中读到p2p->receive方法最终会调到这个方法中,设置PeerConnection的sdp,并生成answer。int32_tyang_ipc_rtcrecv_addPeer(YangIpcRtcSession*session,char*sdp,char*answer,char*remoteIp,int32_tlocalPort,int*phasplay){int32_tret
王方帅
·
2024-01-07 23:40
metartc5_jz源码阅读
javascript
开发语言
ecmascript
metartc
5_jz源码阅读-yang_create_videoEncoder
//此方法在metartcore中调用,实现在metaipc5_jz中voidyang_create_videoEncoder(YangEncoderVideo*encoder){//拿到EncoderSessionYangEncoderSession*session=&encoder->session;//重置初始值session->isStart=0;session->isConvert=1;
王方帅
·
2024-01-07 23:40
metartc5_jz源码阅读
音视频
c语言
p2p
实时音视频
metartc
5_jz源码阅读-yang_push_h264_encodeVideo
//编码rtp的视频buffer,发送给p2p对端。int32_tyang_push_h264_encodeVideo(YangRtcSession*session,YangPushH264Rtp*rtp,YangRtpPacket*pkt){interr=0;//用videoRtpBuffer中的数据填充rtp->buf.yang_init_buffer(&rtp->buf,yang_get_r
王方帅
·
2024-01-07 23:08
metartc5_jz源码阅读
音视频
c语言
p2p
实时音视频
metartc
5_jz源码阅读-g_yang_ice_stun_receive
//收到stun服务器的返回数据voidg_yang_ice_stun_receive(char*data,int32_tsize,void*user){if(user==NULL)return;//拿到请求的StunRequestYangIceStunRequest*request=(YangIceStunRequest*)user;//0x00或0x01为stun返回数据的起始标记。uint8
王方帅
·
2024-01-05 00:47
metartc5_jz源码阅读
音视频
c语言
p2p
实时音视频
metartc
5_jz源码阅读-yang_ipc_rtcrecv_start_thread
void*yang_ipc_rtcrecv_start_thread(void*obj){//从形参拿到RtcSessionYangIpcRtcSession*session=(YangIpcRtcSession*)obj;session->isConvert=1;//重置流捕获变量,创建流捕获变量。YangStreamCapturedata;memset(&data,0,sizeof(YangS
王方帅
·
2024-01-05 00:17
metartc5_jz源码阅读
asp.net
服务器
后端
metartc
5_jz源码阅读-yang_ice_stun_request
//发起stunrequest,用于请求本机的外网ip地址用于p2p打洞int32_tyang_ice_stun_request(YangIceServer*server,int32_tlocalport){chartmp[1024]={0};int32_terr=Yang_Ok;int32_twaitTime=0;//创建udpYangRtcUdp*udp=(YangRtcUdp*)calloc
王方帅
·
2024-01-05 00:17
metartc5_jz源码阅读
c语言
p2p
音视频
metartc
5_jz源码阅读-yang_sdp_genLocalSdp2
int32_tyang_sdp_genLocalSdp2(YangRtcSession*session,int32_tlocalport,char*dst,YangStreamOptTyperole){int32_tmediaServer=session->context.avinfo->sys.mediaServer;int32_tredPayloadtype=1;char*src=(char*
王方帅
·
2024-01-05 00:17
metartc5_jz源码阅读
c语言
音视频
实时音视频
p2p
metartc
5_jz源码阅读-yang_ice_initIce
//初始化ice,感觉这个逻辑跟谷歌官方的webrtc正好是相反的逻辑,正常应该县判断Host能不能通,不通在Stun,Stun也不通则走Turn中继。voidyang_ice_initIce(YangIceSession*session){//根据candidateType进行初始化switch(session->candidateType){//Host则什么也不做caseYangIceHos
王方帅
·
2024-01-05 00:17
metartc5_jz源码阅读
实时音视频
音视频
p2p
c语言
metartc
5_jz源码阅读-main.c
#include#include#include#include#include#include#include//声明一个TimerYangCTimer*m_5stimer=NULL;intg_waitState=0;//声明一个互斥锁pthread_mutex_tg_lock;//声明一个条件锁pthread_cond_tg_cond;//创建ctrl+c的回调函数,设置b_exit为1,si
王方帅
·
2024-01-05 00:46
metartc5_jz源码阅读
c语言
音视频
p2p
metartc
5_jz源码阅读-yang_run_p2pserver_thread
void*yang_run_p2pserver_thread(void*obj){//为p2pServer创建socket,AF_INET表示ip4,SOCK_STREAM表示面向可靠连接的TCPYangP2pServer*p2p=(YangP2pServer*)obj;p2p->isStart=1;p2p->serverfd=socket(AF_INET,SOCK_STREAM,IPPROTO_
王方帅
·
2024-01-05 00:46
metartc5_jz源码阅读
c语言
p2p
音视频
metartc
5_jz源码阅读-yang_run_rtcudp_thread
void*yang_run_rtcudp_thread(void*obj){//拿到传入的UdpSessionYangUdpSession*udp=(YangUdpSession*)obj;//设置为开始udp->isStart=1;//设置socket的超时时间为200msstructtimevaltv;tv.tv_sec=0;tv.tv_usec=200000;//200mssetsockop
王方帅
·
2024-01-05 00:43
metartc5_jz源码阅读
c语言
p2p
音视频
metaRTC
集成flutter ui demo编译指南
metaRTC
新增flutterdemo,支持linux/windows/mac/android/ios操作系统,此demo在ubuntu桌面环境下测试成功。
metaRTC
·
2023-10-31 23:14
metaRTC
flutter
ui
webrtc
metaRTC
7集成lvgl ui demo编译指南
metaRTC
新增lvgldemo,可在linux下编译运行。
metaRTC
·
2023-10-16 21:25
metaRTC
webrtc
lvgl
metaRTC
实现ZLMediaKit流媒体服务器webrtc推拉流
概述ZLMediaKit是一个基于C++11的支持webrtc的高性能运营级流媒体服务框架,在github上star为6000,在国内行业应用具有比较大的影响力,
metaRTC
新版本支持zlm的webrtc
metaRTC
·
2023-09-18 09:58
metaRTC
webrtc
音视频
来了,
metaRTC
7.0 标准版
概要
metaRTC
7.0标准版b0版本将于8月底发布,新版本将
metaRTC
产品化中遇到的问题进行了汇总改进,修复了产品化中多个bug,并新增了多个产品化实用的功能模块。
metaRTC
·
2023-08-24 06:14
metaRTC
解决方案
webrtc
音视频
metaRTC
+zlm实现webrtc的H265解决方案
metaRTC
支持webrtc的H265,zlm支持webrtc和rtsp的H265,
metaRTC
+zlm可实现在linux/android
metaRTC
·
2023-08-14 20:31
metaRTC
解决方案
webrtc
H265
zlm
【
metaRTC
学习】
metaRTC
的demo运行说明(一)
metaRTC
的github的地址为:GitHub-
metartc
/
metaRTC
:Across-platformWebRTCSDK其作者杨高峰的博客为:
metaRTC
的博客_CSDN博客-
metaRTC
夜风里唱
·
2023-08-11 17:35
音视频开发
p2p
网络协议
网络
metartc
webrtc
来了,一次编写到处运行的C版webRTC,
metaRTC
7.0
概要
metaRTC
7.0开始全面支持mac/ios操作系统,使
metaRTC
可以支持常用的操作系统linux/windows/mac/android/ios等,使
metaRTC
的移植性更强,实现了一次编写到处运行的
metaRTC
·
2023-08-11 17:31
metaRTC
webrtc
ios
mac
metaRTC
3.0稳定版本编译指南
概述
metaRTC
2.0经历了127个版本更新,
metaRTC
3.0经历了73个版本更新,
metaRTC
也缺乏一个系统性的编译指南,这是一篇在
metaRTC
3.0迎来第一个稳定发布版本时系统性的介绍
metaRTC
metaRTC
·
2023-08-11 17:30
metaRTC
音视频
webrtc
实时音视频
arm
p2p
Android
metaRTC
6.0 编译指南
概述
metaRTC
新版本优化了安卓系统支持,demo将C和C++生成lib库,在lib库上提供了纯Java的webRTC推拉流demo。
metaRTC
·
2023-08-11 17:30
metaRTC
android
webrtc
metaRTC
6.0 new feature (一)
概要
metaRTC
6.0社区版最新版是6.0.212,标准版最新版本是6.0.276,企业版基础版最新版本是6.0.362,在企业版和标准版新增了一些实用功能模块,文件数字证书模块将并入社区版。
metaRTC
·
2023-08-11 17:00
metaRTC
webrtc
metaRTC
7 demo mac/ios编译指南
概要
metaRTC
7.0开始全面支持mac/ios操作系统,新版本7.0.023macosdemo包含有srs/zlm的推拉流演示。
metaRTC
·
2023-08-11 17:55
metaRTC
macos
webrtc
基于
metaRTC
嵌入式webrtc的H265网页播放器实现(我与
metaRTC
的缘分)完结
我与
metaRTC
的缘分开始于实现H265网页播放的理想,搜遍全网,也只发现
metaRTC
实现了webrtcH265编码的发送,相信很多网友也是这个初衷,所以大家聚到了一起,也是这个机缘让我认识了一众大佬
superxxd
·
2023-07-21 07:55
metaRTC
笔记
图像智能
webrtc
音视频
javascript
metaRTC
性能测试
metaRTC
嵌入式版本是采用纯C语言实现,采用了几个著名的通信库,日前在rv1126上实现了硬件编码发送,以及pcm语音采集发送,效果跟主流的pion和kvs毫不逊色,而且采用了多线程模式反复memcpy
superxxd
·
2023-07-21 07:25
metaRTC
笔记
webrtc
c语言
实时音视频
p2p
实时互动
metaRTC
p2p自建信令系统
metaRTC
实现了sfu和p2p两种模式,支持srs和zlm两种推送已经p2pserver模式,如果要实现自己的信令系统其实也比较简单,最近实现了
metaRTC
的基于mqtt的信令,同时可以进行p2p
superxxd
·
2023-07-21 07:24
笔记
metaRTC
p2p
网络协议
网络
metaRTC
datachannel 实现 reply
下面就
metaRTC
5.0进行多链路的datachannel
superxxd
·
2023-07-21 07:24
metaRTC
笔记
物联网
webrtc
实时互动
实时音视频
metaRTC
通用H264文件帧获取发送方法
最近杨总的
metaRTC
很火(gitee.com/
metaRTC
/
metaRTC
),也决定将以前的一些应用移植过去,拥抱国产生态,在适配过程中,发现测试还是比较麻烦,不是ffmpeg,就是需要IPC得硬件版子
superxxd
·
2023-07-21 07:54
笔记
metaRTC
实时音视频
webrtc
WebRTC不同方案对比
1.功能上会有一些出入,尤其是国内的
metaRTC
版本迭代很快,2.后续的ffmpeg也在进行支持webrtc特性,obs新的版本好像已经支持了webrtc,3.对于webrtc部分缺少的信令部分的标准化也有了对应的标准
百鸣
·
2023-07-20 13:33
webrtc
metaRTC
6.0 janus推流操作指南
metaRTC
6.0新版本支持向janus推流,并增加了janus推流demo。源码下载gitclonehttps://github.com/
metartc
/metaRTCorgit
metaRTC
·
2023-06-09 09:02
webrtc
janus
metaRTC
+ZLMediaKit实现webrtc的推拉流
metaRTC
新版本支持whip/whep协议,支持whip/whep协议的ZLMediaKit推拉流。信令通信ZLMediaKit新版本支持whip和whep协议,支持两种API。
metaRTC
·
2023-06-09 09:02
metaRTC
webrtc
metaIPC2.0 SDK实现webRTC对讲IPC
概述
metaRTC
新推出P2P版metaIPC2.0sdk版本,基于mqtt通信,同时支持windows/linux/android操作系统,支持国内如海思/君正/瑞芯微/MSTAR等主流芯片。
metaRTC
·
2023-06-09 09:02
解决方案
webrtc
IPC
对讲
摄像头webrtc对讲方案之
metaRTC
+ZLMediaKit
metaRTC
+ZLMediaKit是一个比较适合的SFU对讲方案。语音编码考虑摄像头算力低以及拾音器采样率等因素,G711比OPUS更适合。
metaRTC
·
2023-06-09 09:57
解决方案
webrtc
音视频
对讲
ipc
metaRTC
新增whip/whep支持
metaRTC
6.0最新版本新增whip和whep协议的支持,使
metaRTC
可以和Janus/Mediasoup/Freeswitch等SFU和MCU通信。
metaRTC
·
2023-04-14 21:20
metaRTC
webrtc
whip
whep
上一页
1
2
下一页
按字母分类:
A
B
C
D
E
F
G
H
I
J
K
L
M
N
O
P
Q
R
S
T
U
V
W
X
Y
Z
其他