聲網(wǎng)官網(wǎng)已經(jīng)正式發(fā)布 Agora 視頻通話(huà)/視頻直播 Web SDK 2.5版,接下來(lái)簡(jiǎn)要介紹一下 2.5版的亮點(diǎn)新功能:
- 新增支持 IPv6 網(wǎng)絡(luò )環(huán)境,并正常使用 Agora 服務(wù);
- 在 Client.join 接口中,在原有支持整數型 uid 的基礎上,已經(jīng)新增支持字符串類(lèi)型 uid,便于與開(kāi)發(fā)者自己的賬號系統或信令系統打通;
- 新增支持動(dòng)態(tài)切換音頻、視頻輸入/輸出設備的接口,若已經(jīng)發(fā)布流,即正在直播連麥中,切換設備后不用重新發(fā)流,保證最佳用戶(hù)體驗;
- 新增支持伴奏混音,讓主播可在直播的同時(shí),播放音頻文件聲音并進(jìn)行混音后推流給觀(guān)眾,有助于實(shí)現邊直播連麥邊播放音樂(lè )或更多創(chuàng )新場(chǎng)景;
- 新增多個(gè)音視頻軌道管理接口,支持開(kāi)發(fā)者對音頻、視頻軌道分別進(jìn)行管理,比如開(kāi)發(fā)者可新建混音音軌,實(shí)現混音效果(是的,可與上述新功能搭配使用);
- 新增對 mac OS、Windows 版 360瀏覽器的支持;
- 新增多個(gè)用戶(hù)端質(zhì)量監控數據接口,包括網(wǎng)絡(luò )類(lèi)型、網(wǎng)絡(luò )連接情況、系統電量、視頻流與音頻流狀態(tài)等,讓開(kāi)發(fā)者也可以隨時(shí)了解用戶(hù)端的通話(huà)質(zhì)量情況;
繼續閱讀,了解具體新增了哪些接口。如需了解每個(gè)接口的使用與參數,請點(diǎn)擊「閱讀原文」訪(fǎng)問(wèn)聲網(wǎng)Agora 開(kāi)發(fā)者文檔中心。

Agora Web SDK 2.5版
Web SDK 可用于構建基于 Web 的多人視頻通話(huà)或視頻直播產(chǎn)品,最多可支持17人同時(shí)連麥。目前最新版本對瀏覽器支持情況如下表:

2.5版本于 2018 年 10 月 30 日發(fā)布。新增功能與問(wèn)題修復如下。
新增功能
為更好地與 Agora 其他 SDK 互通,實(shí)現更多功能,Web SDK 在本版本中新增了如下功能。詳細的接口說(shuō)明,請參考 Agora Web SDK API Reference。
1.質(zhì)量監控
為方便用戶(hù)查看應用程序的通話(huà)質(zhì)量,新增如下接口:
- Client.getNetworkStats :獲取網(wǎng)絡(luò )統計數據(網(wǎng)絡(luò )類(lèi)型)。
- Client.getSystemStats :獲取系統數據(系統電量)。
- Client.getRemoteAudioStats :獲取遠端音頻統計數據。
- Client.getLocalAudioStats :獲取本地音頻統計數據。
- Client.getRemoteVideoStats :獲取遠端視頻統計數據。
- Client.getLocalVideoStats :獲取本地視頻統計數據。
- Client.getTransportStats :獲取網(wǎng)絡(luò )連接統計數據。
2.支持 IPv6
支持 IPv6 網(wǎng)絡(luò )環(huán)境接入,并正常使用 Agora 服務(wù)。本地網(wǎng)關(guān)必須同時(shí)支持 IPv4 協(xié)議棧。
3.媒體設備管理
可提供靈活的設備管理功能,以及設備狀態(tài)查詢(xún)。
枚舉可用的音頻輸入輸出設備和視頻輸入設備
新增如下接口:
- Client.getRecordingDevices:枚舉音頻輸入設備,如麥克風(fēng)。
- Client.getPlayoutDevices :枚舉音頻輸出設備,如揚聲器。
- Client.getCameras :枚舉視頻輸入設備,如攝像頭。
同時(shí)新增如下事件,用來(lái)告知應用程序設備狀態(tài)的變化:
- recordingDeviceChanged :通知應用程序音頻輸入設備已改變。
- playoutDeviceChanged :通知應用程序音頻輸出設備已改變。
- cameraChanged :通知應用程序視頻輸入設備已改變。
切換媒體設備
新增 Stream.switchDevice 接口,支持在頻道內切換媒體輸入設備,如麥克風(fēng)、攝像頭等。
新增 Stream.setAudioOutput 接口,支持選擇音頻輸出設備,可以切換麥克風(fēng)和揚聲器。
4.支持伴奏混音
支持混音功能,混音是指原音(麥克風(fēng)采集的音頻)和伴奏(音頻文件聲音)混合。新增如下伴奏混音相關(guān)的接口:
- Stream.startAudioMixing :開(kāi)始播放伴奏。
- Stream.stopAudioMixing :停止播放伴奏。
- Stream.pauseAudioMixing :暫停播放伴奏。
- Stream.resumeAudioMixing :恢復播放伴奏。
- Stream.adjustAudioMixingVolume :調節伴奏音量。
- Stream.getAudioMixingDuration :獲取伴奏時(shí)長(cháng)。
- Stream.getAudioMixingCurrentPosition :獲取伴奏播放進(jìn)度。
- Stream.setAudioMixingPosition :設置伴奏音頻文件的播放位置。
5.音視頻軌道管理
支持靈活管理音視頻頻道,新增如下接口:
- Stream.getAudioTrack :獲取音頻軌道。
- Stream.getVideoTrack :獲取視頻軌道。
- Stream.replaceTrack :替換音視頻軌道。
- Stream.addTrack :添加音視頻軌道。
- Stream.removeTrack :移除音視頻軌道。
6.其他新增功能
- 支持兩種視頻顯示模式,可以在 Stream.play 接口中設置播放流的顯示模式。
- 新增 Stream.setScreenBitrate 接口,支持手動(dòng)設置屏幕共享時(shí)的視頻碼率。
- 新增 Client.enableAudioVolumeIndicator 接口,允許 SDK 定期向應用程序反饋當前誰(shuí)在說(shuō)話(huà),以及說(shuō)話(huà)者的音量。
- 新增 Stream.setAudioVolume 接口,支持設置訂閱流的音量。
- 新增 networkTypeChanged 事件,通知應用程序網(wǎng)絡(luò )類(lèi)型已改變。
- 新增 streamTypeChange 事件,通知應用程序視頻流類(lèi)型已由大流變?yōu)樾×鳎蛐×髯優(yōu)榇罅鳌?/li>
- Client.join 接口中,在原來(lái)支持整型 uid 的基礎上,新增對字符串類(lèi)型的支持。
- 支持 360 安全瀏覽器 9.1.0.432 及以上版本。
- 支持 Windows XP 平臺的 Chrome 49 瀏覽器。
問(wèn)題修復
修復了手機端使用 Safari 或 Chrome 瀏覽器進(jìn)入頻道后,在僅有音頻通話(huà)的情況下對 video codec 的依賴(lài)。
修復了使用 Safari 瀏覽器推流后調用 Stream.close 關(guān)閉流,對端 10 秒后無(wú)法收到 stream-removed 回調的問(wèn)題。
修復了重置 Stream.userId 后,收到 Warning 的問(wèn)題。