锐英源软件
第一信赖

精通

英语

开源

擅长

开发

培训

胸怀四海 

第一信赖

当前位置:锐英源 / 开源技术 / Darwin服务器 / Darwin概念之模块角色 / RTCP Process角色
服务方向
人工智能数据处理
人工智能培训
kaldi数据准备
小语种语音识别
语音识别标注
语音识别系统
语音识别转文字
kaldi开发技术服务
软件开发
运动控制卡上位机
机械加工软件
软件开发培训
Java 安卓移动开发
VC++
C#软件
汇编和破解
驱动开发
联系方式
固话:0371-63888850
手机:138-0381-0136
Q Q:396806883
微信:ryysoft

RTCP Process角色


服务器一旦从客户端接收到RTCP接收方报告,就会调用模块的RTCP Process角色。

RTCP接收方报告中包含客户端对流品质的反馈信息。这个反馈信息包括丢包率,音频脱包(run dry)的次数,以及每秒的帧数。QTSS_RTPStreamObject中的很多属性直接和接收方报告中的各个字段相对应。

在被调用的时候,RTP Process角色会收到一个QTSS_RTCPProcess_Params结构,该结构定义如下:

typedef struct

{

    QTSS_RTPStreamObject        inRTPStream;

    QTSS_ClientSessionObject    inClientSession;

    void*                       inRTCPPacketData;

    UInt32                      inRTCPPacketDataLen;

} QTSS_RTCPProcess_Params;

inRTPStream

这是一个QTSS_RTPStreamObject对象,代表当前这个RTCP包所属的RTP流。如果需要RTP流对象的属性信息,请参见“qtssRTPStreamObjectType” 部分。

inClientSession

这是一个QTSS_ClientSessionObject对象,代表客户会话。如果需要客户会话对象的属性信息,请参见“qtssClientSessionObjectType”部分。

inRTCPPacketData

这是一个指针,指向含有即将被处理的数据包缓冲区。

inRTCPPacketDataLen

inRTCPPacketData指向的缓冲区中正当数据的长度。

处理RTCP Process角色的模块通常会监视连接的状态。举例来说,它可能需要跟踪每个连接客户的丢包率,以及更新相应的计数器。

在模块处理RTCP Process角色的时候,服务器保证不会调用该模块中引用RTP流的其它角色,这里的RTP流由inRTPStream来表示。

希望自己的RTCP Process角色被调用的模块必须在其Register角色中调用QTSS_AddRole函数,并将角色的实参指定为QTSS_RTCPProcess_Role常数。

在处理完成这个角色之后,模块通常应该返回QTSS_NoErr。

友情链接
版权所有 Copyright(c)2004-2021 锐英源软件
公司注册号:410105000449586 豫ICP备08007559号 最佳分辨率 1024*768
地址:郑州大学北校区院(文化路97号院)内