【流媒体服务器Mediasoup】调试源码以及运行时分析、调试、查看核心信息(三)

目录

前言

Mediasoup Demo分析

调试方法

Demo Dump工具

编码阅码工具 


前言

     上篇文章对MediaSoup的环境部署和运行demo做了简单的了解   【Mediasoup】环境部署与demo搭建,本章节主要对MediaSoup的源码进行调试,以及运行时分析、调试、查看核心信息。

      在下一篇文章中将对MediaSoup的源码进行分析和架构的讲解。

 

Mediasoup Demo分析

                                                       【流媒体服务器Mediasoup】调试源码以及运行时分析、调试、查看核心信息(三)_第1张图片

目录 作用
app 客户端代码
broadcasters 广播,单向传输,只有去或者只有回
server 服务端Demo
server.js Demo主程序
config.js 配置文件
cert 证书及密钥
connect.js 对后面interactiveClient.js封装
lib server.js使用的库文件
Logger.js 打印日志
Room.js 房间管理及信令处理
interactiveClient.js 运行时内部信息查询客户端
interactiveServer.js 运行时内部信息查询服务端

 

调试方法

Nodejs的调试方法

  • cd  server
  • node --inspect  server.js

 1:如果用服务程序运行在虚拟机Linxu&云服务器系统上调试则:

     node --inspect-brk=192.168.11.18:9229   server.js   192.168.11.18是虚拟机的IP或者公网的IP

 2:如果用服务程序调试的时候运行在本地Mac上:

    node --inspect-brk  server.js  

 运行之后的结果:

 

 打开Goggle浏览器,输入

chrome://inspect

首次需要添加需要调试的设备,点击Configer 添加相对应的调试端IP和端口,如下图 

 【流媒体服务器Mediasoup】调试源码以及运行时分析、调试、查看核心信息(三)_第2张图片

添加成功之后在  Remote Target 会出现调试的目标,如下图,点击inspect开始设置断点以及调试。

【流媒体服务器Mediasoup】调试源码以及运行时分析、调试、查看核心信息(三)_第3张图片

调试界面如下:

 【流媒体服务器Mediasoup】调试源码以及运行时分析、调试、查看核心信息(三)_第4张图片

 

Demo Dump工具

1:在启动之前设置以下环境

      export  INTERACTIVE=1

 2:服务器启动完之后执行connect.js

node connect.js

   这种Dump工具可以在不同的终端上执行,已经发布线上的程序可以用这种环境Dump,而第一种一般只在调试的时候使用。

具体实操:

     

启动后会进入命令行模式

其中可以通过  h & help   查看各个模块dump的命令

(街截取部分)

 【流媒体服务器Mediasoup】调试源码以及运行时分析、调试、查看核心信息(三)_第5张图片

- usage

       显示Node.js和mediashoup工作进程的CPU和内存使用情况

- logLevel level

      更改所有mediasoup工作进程中的日志级别

- logTags [tag] [tag]

    更改所有mediasoup工作进程中的日志tag(值用空格分隔)

- dw, dumpWorkers 

    打印Worker数量

   以此类推 dumpxxx 打印模块数量以及连上的一些各种参数

                 statsxxx 显示这些模块运行的状态和统计信息

- t,  terminal

      打开另一种终端模式,在这种模式可以打印出其他一些信息

 

注意:有些信息需要打开客户端,并且有1个或者1个以上客户端才能显示一些状态信息,那么这些信息Dump出来后续很利于去分析源代码。

 

编码阅码工具 

MediaSoup 源码分为2部分

1:NodeJs

2:C++

每个人针对自己的偏好选择阅读源码和编辑源码的工具,笔者这边只是推荐。

对于NodeJs 使用

Visual Studio Code

下载

官网下载       https://code.visualstudio.com/

编辑器设置    https://www.jianshu.com/p/95c4c869bff1

 

C++部分而言,也可以直接使用vsc直接编码阅读源码

C++部分源码

source insight

下载

官网下载  https://www.sourceinsight.com/   (需要付费,据说网上可以下载到破解版)

 

你可能感兴趣的:(Linux,MediaSoup,音视频)