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
2024-02-26 14:20:23 +0900
Browse Files
Options
Browse Files
Download
Email Patches
Plain Diff
Committed by
GitHub
2024-02-26 14:20:23 +0900
Commit
9f984ab318602c9b80b12c6b9139423108c946a1
9f984ab3
1 parent
738c2bbc
State checking and synchronization for the communication workaround audiotrack (#383)
显示空白字符变更
内嵌
并排对比
正在显示
1 个修改的文件
包含
21 行增加
和
3 行删除
livekit-android-sdk/src/main/java/io/livekit/android/audio/CommunicationWorkaround.kt
livekit-android-sdk/src/main/java/io/livekit/android/audio/CommunicationWorkaround.kt
查看文件 @
9f984ab
...
...
@@ -25,6 +25,7 @@ import android.os.Build
import androidx.annotation.RequiresApi
import io.livekit.android.dagger.InjectionNames
import io.livekit.android.util.CloseableCoroutineScope
import io.livekit.android.util.LKLog
import kotlinx.coroutines.MainCoroutineDispatcher
import kotlinx.coroutines.flow.MutableStateFlow
import kotlinx.coroutines.flow.collectLatest
...
...
@@ -122,8 +123,11 @@ constructor(
stop()
audioTrack?.stop()
audioTrack?.release()
audioTrack?.let { track ->
synchronized(track) {
track.release()
}
}
}
private fun onStateChanged(started: Boolean, playoutStopped: Boolean) {
...
...
@@ -170,7 +174,13 @@ constructor(
}
val audioTrack = audioTrack ?: buildAudioTrack().also { audioTrack = it }
synchronized(audioTrack) {
if (audioTrack.state == AudioTrack.STATE_INITIALIZED) {
audioTrack.play()
} else {
LKLog.i { "Attempted to start communication workaround but track was not initialized." }
}
}
}
private fun pauseAudioTrackIfNeeded() {
...
...
@@ -180,7 +190,15 @@ constructor(
return
}
audioTrack?.pause()
audioTrack?.let { track ->
synchronized(track) {
if (track.state == AudioTrack.STATE_INITIALIZED) {
track.pause()
} else {
LKLog.d { "Attempted to stop communication workaround but track was not initialized." }
}
}
}
}
// Reference from Android code, AudioFormat.getBytesPerSample. BitPerSample / 8
...
...
请
注册
或
登录
后发表评论