Toggle navigation
Toggle navigation
此项目
正在载入...
Sign in
xuning
/
livekitAndroidXuningTest
转到一个项目
Toggle navigation
项目
群组
代码片段
帮助
Toggle navigation pinning
Project
Activity
Repository
Pipelines
Graphs
Issues
0
Merge Requests
0
Wiki
Network
Create a new issue
Builds
Commits
Authored by
davidliu
2023-03-06 22:29:53 +0900
Browse Files
Options
Browse Files
Download
Email Patches
Plain Diff
Committed by
GitHub
2023-03-06 22:29:53 +0900
Commit
67cb8c200015e83535813b478b5300f6c7995b7e
67cb8c20
1 parent
96cc579b
Don't override client provide ice servers (#193)
隐藏空白字符变更
内嵌
并排对比
正在显示
2 个修改的文件
包含
27 行增加
和
7 行删除
livekit-android-sdk/src/main/java/io/livekit/android/ConnectOptions.kt
livekit-android-sdk/src/main/java/io/livekit/android/room/RTCEngine.kt
livekit-android-sdk/src/main/java/io/livekit/android/ConnectOptions.kt
查看文件 @
67cb8c2
...
...
@@ -8,7 +8,18 @@ data class ConnectOptions(
/** Auto subscribe to room tracks upon connect, defaults to true */
val autoSubscribe: Boolean = true,
/**
* A user-provided list of ice servers. This will be merged into
* the ice servers in [rtcConfig] if it is also provided.
*/
val iceServers: List<PeerConnection.IceServer>? = null,
/**
* A user-provided RTCConfiguration to override options.
*
* Note: LiveKit requires [PeerConnection.SdpSemantics.UNIFIED_PLAN]
* and a mutable list should be provided for iceServers constructor.
* */
val rtcConfig: PeerConnection.RTCConfiguration? = null,
/**
* capture and publish audio track on connect, defaults to false
...
...
livekit-android-sdk/src/main/java/io/livekit/android/room/RTCEngine.kt
查看文件 @
67cb8c2
...
...
@@ -173,9 +173,7 @@ internal constructor(
}
// update ICE servers before creating PeerConnection
val iceServers = if (connectOptions?.iceServers != null) {
connectOptions.iceServers
} else {
val iceServers = run {
val servers = mutableListOf<PeerConnection.IceServer>()
for (serverInfo in joinResponse.iceServersList) {
val username = serverInfo.username ?: ""
...
...
@@ -197,10 +195,21 @@ internal constructor(
// Setup peer connections
val rtcConfig = connectOptions?.rtcConfig?.apply {
val mergedServers = this.iceServers.toMutableList()
iceServers.forEach { server ->
if (!mergedServers.contains(server)) {
mergedServers.add(server)
val mergedServers = this.iceServers
if (connectOptions.iceServers != null) {
connectOptions.iceServers.forEach { server ->
if (!mergedServers.contains(server)) {
mergedServers.add(server)
}
}
}
// Only use server-provided servers if user doesn't provide any.
if (mergedServers.isEmpty()) {
iceServers.forEach { server ->
if (!mergedServers.contains(server)) {
mergedServers.add(server)
}
}
}
}
...
...
请
注册
或
登录
后发表评论