自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(25)
  • 资源 (1)
  • 收藏
  • 关注

原创 跑跑飞弹室外跑步AR游戏代码方案设计

跑跑飞弹室外跑步AR游戏技术方案选择

2022-07-29 12:34:37 1033

原创 华为鲲鹏arm服务器下使用webrtc和boost踩坑记--编译篇

一. webrtc编译 由于申请的鲲鹏机器在国内,下载webrtc下不了,只能用日本的一台x86下载和交叉编译1、安装depot tools国外:git clonehttps://chromium.googlesource.com/chromium/tools/depot_tools.git国内:git clonehttps://source.codeaurora.org/quic/lc/chromium/tools/depot_tools把depot_tools目录加入PATH:...

2020-06-15 19:45:01 1386 1

原创 QT5.12连HTTPS提示TLS initialization failed(TLS初始化失败)问题解决

网上各种文章都是说拷贝libeay32.bll和ssleay32.bll两个文件到exe目录就可以了,实际并不是这么回事,真正需要拷贝的是:libcrypto-1_1.dll和libssl-1_1.dll这两个文件资源已经帮大家打包上传,大家下载使用即可...

2020-05-20 14:38:01 904

原创 VSCode的连Linux远程开发碰到的坑解决

安装Remote-SSH并配置首先打开你的VSCode,找到Extensions,搜索Remote,下载Remote-Developoment插件,会自动安装其他的Remote插件,其中会包含Remote-SSH:进入设置,搜索ssh,找到并选中拓展中的Remote-SSH中的ShowLoginTerminal选项,因为在连接的时候,终端会让你输入yes或者密码等接着,需要配置你的Linux服务器地址信息,按CTRL+SHIFT+P,搜索ssh,找到Open Configuration File选项

2020-05-19 17:06:52 6141

原创 vs2017 redist 下载地址

版本:14.10.25008https://download.microsoft.com/download/4/5/4/454AC59C-DC3F-4AD3-950F-6DCBDF672071/vc_redist.x86.exehttps://download.microsoft.com/download/B/7/A/B7A6D5AB-2606-4942-BE19-996D105376A4/vc_redist.x64.exe

2020-05-18 11:21:17 1089

原创 win10下mediasoup搭建过程中的一些坑记录

我们原来基于Janus的webrtc系统基本上可用了,不过确实发现Janus的一些不足,对于我这种喜欢c++的人来说,看Janus的代码实在是比较痛苦,于是处于研究目的,研究下Medooze,Mediasoup等,比较下来Mediasoup的框架和代码风格看的最让人舒爽,易懂好维护,性能好,下面记录的是Mediasoup学习过程中碰到的一些坑。其实主要因为对node不熟导致的坑,记一下,也许对...

2020-03-26 11:13:09 5782 9

原创 调用时序错误导致webrtc无法建立链接

这段时间帮朋友做一个简单的HTML的webrtc连接,单对单,一端推流,一端拉流,东西极其简单,偏偏还遇到了几个坑,这里写出来供大家参考,顺便分享下代码。要建立webrtc连接,首先需要一个模块帮助连接双方交换SDP和ICE,通常我们采用一个websocket服务器来做这个事,不过受限朋友原来代码,考虑用一个简单的HTTP服务来做这个事,连tomcat容器都不用,服务器用java写的,就是对每...

2019-12-03 16:21:57 1800

原创 Janus转发丢包导致音视频不同步原因分析

音视频不同步:PC和手机互相拉流,过个把小时后,手机拉PC端不同步,PC拉手机端同步,手机退出重进后音视频恢复同步,另外一个手机拉PC也是同步的,初步分析PC发送是正常的,可能是Janus的下行发送在遇到丢包卡顿后时间戳计算有问题,该同步函数在rtp.c文件里,本文记录解读过程。原型:void janus_rtp_header_update(janus_rtp_header *header...

2019-09-04 10:17:48 1301 1

原创 使用cef离屏渲染技术实现在线教育课件和webrtc视频回放融合录制

早先使用声网、即构等第三方实时视频通讯引擎时,引擎提供方会提供服务端视频录制方案,但是在线教育课件是自己的,通常业界采用的方案是,课件保存上课过程的信令,回放时课件回放使用信令回放,即课件不是真实的视频而是HTML执行保存的信令来回放,同时配上录制的老师学生的视频的时间戳同步回放,回放重现整个上课过程。方案本身就比较绕,使用起来也有很多缺点:1. 需要专用的回放工具来回放,这就导致回放很难...

2019-09-04 10:08:00 1749

原创 Treating as key frame since WebRTC-SpsPpsIdrIsH264Keyframe is disabled 解决

在demo的PeerconnectionClient文件里加上下面加粗的一行:fieldTrials += VIDEO_SPSPPSIDR_ISH264KEYFRAME_FIELDTRIAL;private static String getFieldTrials(PeerConnectionParameters peerConnectionParameters) { String...

2019-07-26 11:50:41 1599

原创 webrtc M75支持android安卓H264软编解遇到的一些坑

webrtc android引擎遇到使用MTK芯片华为荣耀手机截另外一款HISI芯片编的H264时,解码器不停的重启,判断可能是芯片问题,考虑到后续其他机型下的兼容问题,决心给webrtc加上ffmpeg软解,网上找的相关资料基本都是比较老的版本,M75下遇到一些新的坑,记在这里供大家参考。1. third_party/ffmpeg/ffmpeg_generated.gni打开此文件,可以...

2019-07-05 17:36:22 4954 3

原创 通过socks5代理下载webrtc源码错误:curl: (7) Can't complete SOCKS5 connection xx.xx.xx.xx

下载webrtc需要设置git代理和curl代理:git代理设置:vi ~/.gitconfig[http] proxy = socks5://?.?.?.?:?[https] proxy = socks5://?.?.?.?:?还需要设置curl代理,否则提出curl连接超时、连接拒绝export HTTPS_PROXY=socks...

2019-06-20 15:18:59 3021

原创 webrtc代码解读二:音视频播放同步过程

在rtp包来是获取当前时间戳到本地变量:Channel::OnRtpPacket -> Channel::UpdatePlayoutTimestamp -> AudioCodingModuleImpl::PlayoutTimestamp -> AcmReceiver::GetPlayoutTimestamp -> NetEqImpl::GetPlayoutTimesta...

2019-02-22 17:50:13 921

原创 webrtc代码解读一:音频数据的接收解码播放过程

RTP connection创建过程(从下往上调用):Channel::Channel调用RtpRtcp::CreateRtpRtcpChannel::Channel 调用RtpReceiver::CreateAudioReceiver (RtpReceiver,这里注册Channel类为RTP包回调处理类)ChannelProxy::ChannelProxy里调用new voe::C...

2019-02-21 21:21:17 2695 1

原创 基于Webrtc和Janus的多人视频会议系统开发7 - publish和subscribe声音设备冲突导致对方听不到声音

这里说下C++原生SDK开发过程遇到一个比较大的坑:在只有publish时,对方(WEB)拉流是可以听到我方的声音的,但是增加了subscribe对方的流后,对方就听不到我方的声音了,这个问题查了比较久,专门写出来供大家参考避坑。问题产生的原因在于:windows音频部分默认内部开启了AEC功能,但必须要求先初始化Playout再初始化Record.由于目前推流是不需要初始化Playout,导...

2019-02-01 17:22:00 1915 6

原创 基于Webrtc和Janus的多人视频会议系统开发6 - 从Janus服务器订阅媒体流

由于前段时间一直忙于开发,没有及时记录开发过程中遇到的问题,现在只能靠回忆来写一些印象深刻的坑了,本篇文章先把本系列的最后一篇补上,前面只是做到了把流推上去,现在还需要把流订阅下来。记得当时是遇到几个问题的,其中一个是订阅其他流后,自己发布的视频就没有声音了,其他问题已经记不清楚了,大家如果遇到什么问题说下说不定能帮助想起了。感接时有点疑惑,推流时已经建立了peerconnection,收...

2019-02-01 17:08:12 3398 1

原创 webrtc技术名词和关键技术要点:SVC,REMB,SVC...

SDP (Session Description Protocol)会话描述协议SVC  (Scalable Video Coding)可伸缩视频编码技术ARQ (Automatic Repeat-reQuest) 自动重传请求FEC (Forward Error Correction) 前向纠错RTX:发送端在新的SSRC上发送重传包或者冗余包。PLC(Packet Loss Con...

2019-02-01 10:46:10 1768

原创 用PPAPI插件技术在Web上显示会议视频、桌面、PPT等

Widows下桌面程序C++界面开发一直是个痛苦的事情,无论是Qt,DirectUI,electron,CEF都面临着分发困难问题,而且面临着运行环境千变万化,总有些机器上跑起来有问题,因此大多数能用web做的东西都已经转向web实现,但是web实现还是有很多限制,很多系统原生API无法使用。比方说现在要开发一套视频上课软件,课件用的是H5开发的互动课件,老师学生要互相看到视频,传统的做法可能...

2019-01-31 16:16:50 2118

原创 基于Webrtc和Janus的多人视频会议系统开发5 - 发布媒体流到Janus服务器

前面一章讲述了客户端和Janus之间是如何通过信令完成sdp交互的,信令虽然看起来都懂,但初始接触webrtc的话,对sdp生成,ice作用和过程等都一头雾水,刚开始我也是花了不少时间来理解这个过程,当初信令都正确,但是其他web订阅端就是看不到我这个windows下SDK发布的媒体流。发布过程的create, attach, join信令过程都很简单也很好理解,需要注意的就是join信令,需...

2018-08-29 11:51:46 5461 3

原创 基于Webrtc和Janus的多人视频会议系统开发4 - 改造信令交互系统完成sdp交换过程

大家都知道webrtc双方完成连接,最重要的就是要双方完成sdp的交换,google没有对这个如何完成这个sdp交互做出规定,这个sdp即使通过邮件交换也行,当然我们要做一个会议系统SDK肯定要智能一点,需要向用户隐藏这个sdp交互过程。在webrtc的例子peerconnection_client和peerconnection_server里,通过用peerconnection_server...

2018-08-15 18:19:33 5429 4

原创 基于Webrtc和Janus的多人视频会议系统开发3 - Peerconnection从ninja工程改造成VS工程

之所以要专门写这一章,是因为这一步卡了不少时间,遇到不少问题,写出来给大家做参考。在做这一步之前您至少要已经完成webrtc在windows下的编译,这个编译的介绍文章比较多,这里就不说了。在自己改造前,也是参考了这篇文章:https://www.cnblogs.com/CoderTian/p/7828926.html根据这个博主留下的下载地址下下来的工程确实能编译通过,可行博主只提供...

2018-08-15 17:44:34 2806 2

原创 基于Webrtc和Janus的多人视频会议系统开发2---Janus建立连接过程的角色关系图

本篇文章开始讲解如何开发windows和mac下的原生c++的janus客户端SDK。项目组几个人搜编百度,谷歌,bing,一直没找到Janus的c++原生SDK的demo,只有ios,android和web的demo, 但是我们windows和Mac下都要支持原生APP的SDK接入,最后无奈之下只好自己动手丰衣足食。根据资料参考,webrtc源码的example下有个peerconnec...

2018-08-08 14:36:08 6071 1

原创 基于Webrtc和Janus的多人视频会议系统开发1--系统架构

目前业界如教育行业,直播行业,低延迟音视频连麦方案基本采用声网,即构,腾讯等第三方方案,采用第三方方案最大的优点就是接入快捷,可以迅速搭建自己的产品,缺点就是完全受制于第三方,另外费用比较高,公司规模小的时候比较合适,公司规模大了后就会有顾虑,通常达到一定规模后可以考虑自研一套方案和第三方方案并行使用,避免完全受制于第三方,和华为采购高通芯片的同时也研发自有芯片一个道理。正是基于这样的考虑,我...

2018-08-08 11:43:09 14358 8

转载 2011-05-26 23:21 windows路径操作API函数

2011-05-26 23:21 windows路径操作API函数PathRemoveArgs去除路径的参数PathRemoveBackslash去除路径最后的反斜杠"\"PathAddBackslash在路径最后加上反斜杠"\"PathRemoveBlanks去除路径前后的空格PathAddExtension在文件路径后面加上扩展名PathRemoveExtensi...

2014-02-10 16:46:13 511

原创 error D8030: “”中的内部编译器错误 解决方法

vs2010编译遇到错误:1>cl : 命令行 error D8030: “”中的内部编译器错误1>      请选择 Visual C++ 看微软的技术支持http://support.microsoft.com/kb/2546748/en-usWhen you try to build a Microsoft Visual C++ project, the b...

2013-12-06 13:22:06 4826 2

openssl-1.1.rar

网上各种文章都是说拷贝libeay32.bll和ssleay32.bll两个文件到exe目录就可以了,实际并不是这么回事,需要拷贝的是:libcrypto-1_1.dll和libssl-1_1.dll这两个文件

2020-05-20

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除