视频开发技术之文件传输限速

从AnyChatSDKV4.1.0.1版本起,AnyChat支持文件传输限速功能,允许用户控制文件上传的总速率。该功能特别适用于需要预留网络带宽给其他模块的情况。通过API BRAC_TransFile 和 BRAC_TransBufferEx实现,可以动态调整传输速率。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

自AnyChat SDK V4.1.0.1版本开始,AnyChat支持文件传输限速功能。默认设置下,AnyChat的文件传输以及缓冲区传输都是自动检测网络可用带宽,并按“以最短的时间,最快的速度传输”的原则进行网络传输,这种原则可以适应大部分的应用,但在部分应用中,需要预留一些带宽给其它模块,并不希望AnyChat的文件传输占用所有的网络带宽,这种情况下就可以采用限速功能。

 

AnyChat文件传输限速功能是针对本地文件上传进行设置,而且是控制总的上传速率,如设置限速为500kbps,则当同时传输1个文件时,最大上传速度为500kbps,如果同时上传2个文件,则每个文件的最大上传速度为250kbps,依此类推。

 

BRAC_TransFileBRAC_TransBufferEx两个API均受传输限速功能控制。

 

传输限速接口定义如下:

1. // 传输缓冲区、文件最大码率控制(参数为int型,0 不限制,以最快速率传输[默认], 否则表示限制码率,单位为:bps)
2. #define BRAC_SO_NETWORK_TRANSBUFMAXBITRATE      46

 

AnyChat平台默认是关闭传输限速功能,开启的方法可参考如下代码(初始化SDK成功之后调用有效,可在需要的地方调用,动态调节):

1. // 限制上传速度为500kbps(62kBps)
2. DWORD dwMaxUpRate = 500 * 1000;
3. BRAC_SetSDKOption(BRAC_SO_NETWORK_TRANSBUFMAXBITRATE,(const char*)&dwMaxUpRate, sizeof(DWORD));

若要取消传输限速功能,可参考如下代码:

1. // 取消限速功能
2. DWORD dwMaxUpRate = 0;
3. BRAC_SetSDKOption(BRAC_SO_NETWORK_TRANSBUFMAXBITRATE,(const char*)&dwMaxUpRate, sizeof(DWORD));

转载于:https://www.cnblogs.com/megan812/p/3893749.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值