IM通讯开发中如何文件传输
現(xiàn)在人們之間的交流大多通過即時通訊工具完成,而這些工具都有文件傳輸?shù)幕竟δ?。那么在自行通過即時通訊工具進行二次開發(fā)后使用該功能呢,下面以國內(nèi)領(lǐng)先音視頻技術(shù)的AnyChat互動開發(fā)平臺為例,實現(xiàn)文件傳輸功能。
自AnyChat SDK V4.1.0.1版本開始,AnyChat支持文件傳輸限速功能。默認設(shè)置下,AnyChat的文件傳輸以及緩沖區(qū)傳輸都是自動檢測網(wǎng)絡(luò)可用帶寬,并按“以最短的時間,最快的速度傳輸”的原則進行網(wǎng)絡(luò)傳輸,這種原則可以適應(yīng)大部分的應(yīng)用,但在部分應(yīng)用中,需要預留一些帶寬給其它模塊,并不希望AnyChat的文件傳輸占用所有的網(wǎng)絡(luò)帶寬,這種情況下就可以采用限速功能。
AnyChat文件傳輸限速功能是針對本地文件上傳進行設(shè)置,而且是控制總的上傳速率,如設(shè)置限速為500kbps,則當同時傳輸1個文件時,最大上傳速度為500kbps,如果同時上傳2個文件,則每個文件的最大上傳速度為250kbps,依此類推。
BRAC_TransFile、BRAC_TransBufferEx兩個API均受傳輸限速功能控制。
傳輸限速接口定義如下:
1.// 傳輸緩沖區(qū)、文件最大碼率控制(參數(shù)為int型,0 不限制,以最快速率傳輸[默認], 否則表示限制碼率,單位為:bps)
2.#define BRAC_SO_NETWORK_TRANSBUFMAXBITRATE 46
AnyChat平臺默認是關(guān)閉傳輸限速功能,開啟的方法可參考如下代碼(初始化SDK成功之后調(diào)用有效,可在需要的地方調(diào)用,動態(tài)調(diào)節(jié)):
1.// 限制上傳速度為500kbps(62kBps)
2.DWORDdwMaxUpRate = 500 * 1000;
3.BRAC_SetSDKOption(BRAC_SO_NETWORK_TRANSBUFMAXBITRATE,(constchar*)&dwMaxUpRate,sizeof(DWORD));
若要取消傳輸限速功能,可參考如下代碼:
1.// 取消限速功能
2.DWORDdwMaxUpRate = 0;
3.BRAC_SetSDKOption(BRAC_SO_NETWORK_TRANSBUFMAXBITRATE,(constchar*)&dwMaxUpRate,sizeof(DWORD));
總結(jié)
以上是生活随笔為你收集整理的IM通讯开发中如何文件传输的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: lols8直播地址分享 LOLS8直播与
- 下一篇: 乐信Q1营收29.83亿元同比增长74%