Skip to content

Commit c1956a0

Browse files
committed
kt commit
1 parent 58530d1 commit c1956a0

File tree

2 files changed

+13
-4
lines changed

2 files changed

+13
-4
lines changed

kmp-webrtc/src/commonMain/kotlin/com/piasy/kmp/webrtc/PeerConnectionClientFactory.kt

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -114,6 +114,8 @@ abstract class PeerConnectionClientFactory(
114114
}
115115
}
116116

117+
fun Boolean.toInt() = if (this) 1 else 0
118+
117119
expect fun initializeWebRTC(context: Any?, fieldTrials: String, debugLog: Boolean): Boolean
118120

119121
expect fun createPeerConnectionClientFactory(

kmp-webrtc/src/linuxMain/kotlin/com/piasy/kmp/webrtc/LinuxPeerConnectionClientFactory.kt

Lines changed: 11 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,10 @@ import kotlinx.cinterop.COpaquePointer
88
data class LinuxPrivateConfig(
99
internal val hwnd: COpaquePointer,
1010
internal val disableEncryption: Boolean,
11+
internal val dummyAudioDevice: Boolean,
12+
internal val transitVideo: Boolean,
1113
internal val captureFilePath: String,
14+
internal val captureDumpPath: String,
1215
) : PeerConnectionClientFactory.PrivateConfig()
1316

1417
class LinuxPeerConnectionClientFactory(
@@ -25,16 +28,20 @@ class LinuxPeerConnectionClientFactory(
2528

2629
override fun createVideoCapturer() = WebRTC.PCClientVideoCapturerCreate(
2730
config.videoCaptureImpl, config.videoCaptureWidth, config.videoCaptureHeight,
28-
config.videoCaptureFps, privateConfig.captureFilePath
29-
);
31+
config.videoCaptureFps, privateConfig.captureFilePath, privateConfig.captureDumpPath
32+
)
3033
}
3134

3235
actual fun createPeerConnectionClientFactory(
3336
config: PeerConnectionClientFactory.Config,
3437
errorHandler: (Int, String) -> Unit,
3538
): PeerConnectionClientFactory {
3639
val privateConfig = config.privateConfig as LinuxPrivateConfig
37-
val disableEncryption = if (privateConfig.disableEncryption) 1 else 0
38-
WebRTC.PCClientCreatePeerConnectionFactory(privateConfig.hwnd, disableEncryption, 0, 0)
40+
WebRTC.PCClientCreatePeerConnectionFactory(
41+
privateConfig.hwnd,
42+
privateConfig.disableEncryption.toInt(),
43+
privateConfig.dummyAudioDevice.toInt(),
44+
privateConfig.transitVideo.toInt(),
45+
)
3946
return LinuxPeerConnectionClientFactory(config, errorHandler, privateConfig)
4047
}

0 commit comments

Comments
 (0)