Skip to content

Commit b8c5e43

Browse files
committed
WebRTC.rs Client. Make media tests deterministic.
1 parent ed724b0 commit b8c5e43

File tree

18 files changed

+169
-167
lines changed

18 files changed

+169
-167
lines changed

ktor-client/ktor-client-webrtc/api/android/ktor-client-webrtc.api

Lines changed: 15 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -64,7 +64,6 @@ public final class io/ktor/client/webrtc/AndroidWebRtcEngine : io/ktor/client/we
6464
}
6565

6666
public final class io/ktor/client/webrtc/AndroidWebRtcEngineConfig : io/ktor/client/webrtc/WebRtcConfig {
67-
public field context Landroid/content/Context;
6867
public fun <init> ()V
6968
public final fun getContext ()Landroid/content/Context;
7069
public final fun getRtcFactory ()Lorg/webrtc/PeerConnectionFactory;
@@ -135,6 +134,16 @@ public final class io/ktor/client/webrtc/DataChannelReceiveOptions {
135134
public final fun setOnUndeliveredElement (Lkotlin/jvm/functions/Function1;)V
136135
}
137136

137+
public final class io/ktor/client/webrtc/DefaultExceptionHandler : kotlinx/coroutines/CoroutineExceptionHandler {
138+
public fun <init> (Ljava/lang/String;)V
139+
public fun fold (Ljava/lang/Object;Lkotlin/jvm/functions/Function2;)Ljava/lang/Object;
140+
public fun get (Lkotlin/coroutines/CoroutineContext$Key;)Lkotlin/coroutines/CoroutineContext$Element;
141+
public fun getKey ()Lkotlin/coroutines/CoroutineContext$Key;
142+
public fun handleException (Lkotlin/coroutines/CoroutineContext;Ljava/lang/Throwable;)V
143+
public fun minusKey (Lkotlin/coroutines/CoroutineContext$Key;)Lkotlin/coroutines/CoroutineContext;
144+
public fun plus (Lkotlin/coroutines/CoroutineContext;)Lkotlin/coroutines/CoroutineContext;
145+
}
146+
138147
public abstract interface class io/ktor/client/webrtc/MediaTrackFactory {
139148
public abstract fun createAudioTrack (Lio/ktor/client/webrtc/WebRtcMedia$AudioTrackConstraints;Lkotlin/coroutines/Continuation;)Ljava/lang/Object;
140149
public fun createAudioTrack (Lkotlin/jvm/functions/Function1;Lkotlin/coroutines/Continuation;)Ljava/lang/Object;
@@ -518,8 +527,8 @@ public class io/ktor/client/webrtc/WebRtcConfig {
518527
public class io/ktor/client/webrtc/WebRtcConnectionConfig {
519528
public fun <init> ()V
520529
public final fun getBundlePolicy ()Lio/ktor/client/webrtc/WebRtc$BundlePolicy;
521-
public final fun getCoroutineContext ()Lkotlin/coroutines/CoroutineContext;
522530
public final fun getDataChannelEventsReplay ()I
531+
public final fun getExceptionHandler ()Lkotlinx/coroutines/CoroutineExceptionHandler;
523532
public final fun getIceCandidatePoolSize ()I
524533
public final fun getIceCandidatesReplay ()I
525534
public final fun getIceServers ()Ljava/util/List;
@@ -528,8 +537,8 @@ public class io/ktor/client/webrtc/WebRtcConnectionConfig {
528537
public final fun getRtcpMuxPolicy ()Lio/ktor/client/webrtc/WebRtc$RtcpMuxPolicy;
529538
public final fun getStatsRefreshRate ()J
530539
public final fun setBundlePolicy (Lio/ktor/client/webrtc/WebRtc$BundlePolicy;)V
531-
public final fun setCoroutineContext (Lkotlin/coroutines/CoroutineContext;)V
532540
public final fun setDataChannelEventsReplay (I)V
541+
public final fun setExceptionHandler (Lkotlinx/coroutines/CoroutineExceptionHandler;)V
533542
public final fun setIceCandidatePoolSize (I)V
534543
public final fun setIceCandidatesReplay (I)V
535544
public final fun setIceServers (Ljava/util/List;)V
@@ -620,12 +629,13 @@ public final class io/ktor/client/webrtc/WebRtcEngine$DefaultImpls {
620629
}
621630

622631
public abstract class io/ktor/client/webrtc/WebRtcEngineBase : io/ktor/client/webrtc/WebRtcEngine {
623-
public fun <init> (Ljava/lang/String;)V
632+
public fun <init> (Ljava/lang/String;Lio/ktor/client/webrtc/WebRtcConfig;)V
624633
public fun close ()V
625634
public fun createAudioTrack (Lkotlin/jvm/functions/Function1;Lkotlin/coroutines/Continuation;)Ljava/lang/Object;
626-
protected final fun createConnectionContext (Lkotlin/coroutines/CoroutineContext;)Lkotlin/coroutines/CoroutineContext;
635+
protected final fun createConnectionContext (Lkotlinx/coroutines/CoroutineExceptionHandler;)Lkotlin/coroutines/CoroutineContext;
627636
public fun createPeerConnection (Lkotlin/jvm/functions/Function1;Lkotlin/coroutines/Continuation;)Ljava/lang/Object;
628637
public fun createVideoTrack (Lkotlin/jvm/functions/Function1;Lkotlin/coroutines/Continuation;)Ljava/lang/Object;
638+
public fun getConfig ()Lio/ktor/client/webrtc/WebRtcConfig;
629639
}
630640

631641
public final class io/ktor/client/webrtc/WebRtcEngineClosedException : java/util/concurrent/CancellationException {

ktor-client/ktor-client-webrtc/api/jvm/ktor-client-webrtc.api

Lines changed: 15 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -38,6 +38,16 @@ public final class io/ktor/client/webrtc/DataChannelReceiveOptions {
3838
public final fun setOnUndeliveredElement (Lkotlin/jvm/functions/Function1;)V
3939
}
4040

41+
public final class io/ktor/client/webrtc/DefaultExceptionHandler : kotlinx/coroutines/CoroutineExceptionHandler {
42+
public fun <init> (Ljava/lang/String;)V
43+
public fun fold (Ljava/lang/Object;Lkotlin/jvm/functions/Function2;)Ljava/lang/Object;
44+
public fun get (Lkotlin/coroutines/CoroutineContext$Key;)Lkotlin/coroutines/CoroutineContext$Element;
45+
public fun getKey ()Lkotlin/coroutines/CoroutineContext$Key;
46+
public fun handleException (Lkotlin/coroutines/CoroutineContext;Ljava/lang/Throwable;)V
47+
public fun minusKey (Lkotlin/coroutines/CoroutineContext$Key;)Lkotlin/coroutines/CoroutineContext;
48+
public fun plus (Lkotlin/coroutines/CoroutineContext;)Lkotlin/coroutines/CoroutineContext;
49+
}
50+
4151
public abstract interface class io/ktor/client/webrtc/MediaTrackFactory {
4252
public abstract fun createAudioTrack (Lio/ktor/client/webrtc/WebRtcMedia$AudioTrackConstraints;Lkotlin/coroutines/Continuation;)Ljava/lang/Object;
4353
public fun createAudioTrack (Lkotlin/jvm/functions/Function1;Lkotlin/coroutines/Continuation;)Ljava/lang/Object;
@@ -415,8 +425,8 @@ public class io/ktor/client/webrtc/WebRtcConfig {
415425
public class io/ktor/client/webrtc/WebRtcConnectionConfig {
416426
public fun <init> ()V
417427
public final fun getBundlePolicy ()Lio/ktor/client/webrtc/WebRtc$BundlePolicy;
418-
public final fun getCoroutineContext ()Lkotlin/coroutines/CoroutineContext;
419428
public final fun getDataChannelEventsReplay ()I
429+
public final fun getExceptionHandler ()Lkotlinx/coroutines/CoroutineExceptionHandler;
420430
public final fun getIceCandidatePoolSize ()I
421431
public final fun getIceCandidatesReplay ()I
422432
public final fun getIceServers ()Ljava/util/List;
@@ -425,8 +435,8 @@ public class io/ktor/client/webrtc/WebRtcConnectionConfig {
425435
public final fun getRtcpMuxPolicy ()Lio/ktor/client/webrtc/WebRtc$RtcpMuxPolicy;
426436
public final fun getStatsRefreshRate ()J
427437
public final fun setBundlePolicy (Lio/ktor/client/webrtc/WebRtc$BundlePolicy;)V
428-
public final fun setCoroutineContext (Lkotlin/coroutines/CoroutineContext;)V
429438
public final fun setDataChannelEventsReplay (I)V
439+
public final fun setExceptionHandler (Lkotlinx/coroutines/CoroutineExceptionHandler;)V
430440
public final fun setIceCandidatePoolSize (I)V
431441
public final fun setIceCandidatesReplay (I)V
432442
public final fun setIceServers (Ljava/util/List;)V
@@ -517,12 +527,13 @@ public final class io/ktor/client/webrtc/WebRtcEngine$DefaultImpls {
517527
}
518528

519529
public abstract class io/ktor/client/webrtc/WebRtcEngineBase : io/ktor/client/webrtc/WebRtcEngine {
520-
public fun <init> (Ljava/lang/String;)V
530+
public fun <init> (Ljava/lang/String;Lio/ktor/client/webrtc/WebRtcConfig;)V
521531
public fun close ()V
522532
public fun createAudioTrack (Lkotlin/jvm/functions/Function1;Lkotlin/coroutines/Continuation;)Ljava/lang/Object;
523-
protected final fun createConnectionContext (Lkotlin/coroutines/CoroutineContext;)Lkotlin/coroutines/CoroutineContext;
533+
protected final fun createConnectionContext (Lkotlinx/coroutines/CoroutineExceptionHandler;)Lkotlin/coroutines/CoroutineContext;
524534
public fun createPeerConnection (Lkotlin/jvm/functions/Function1;Lkotlin/coroutines/Continuation;)Ljava/lang/Object;
525535
public fun createVideoTrack (Lkotlin/jvm/functions/Function1;Lkotlin/coroutines/Continuation;)Ljava/lang/Object;
536+
public fun getConfig ()Lio/ktor/client/webrtc/WebRtcConfig;
526537
}
527538

528539
public final class io/ktor/client/webrtc/WebRtcEngineClosedException : java/util/concurrent/CancellationException {

ktor-client/ktor-client-webrtc/api/ktor-client-webrtc.klib.api

Lines changed: 17 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -121,9 +121,12 @@ abstract class io.ktor.client.webrtc/WebRtcDataChannel : io.ktor.client.webrtc/W
121121
}
122122

123123
abstract class io.ktor.client.webrtc/WebRtcEngineBase : io.ktor.client.webrtc/WebRtcEngine { // io.ktor.client.webrtc/WebRtcEngineBase|null[0]
124-
constructor <init>(kotlin/String) // io.ktor.client.webrtc/WebRtcEngineBase.<init>|<init>(kotlin.String){}[0]
124+
constructor <init>(kotlin/String, io.ktor.client.webrtc/WebRtcConfig) // io.ktor.client.webrtc/WebRtcEngineBase.<init>|<init>(kotlin.String;io.ktor.client.webrtc.WebRtcConfig){}[0]
125125

126-
final fun createConnectionContext(kotlin.coroutines/CoroutineContext): kotlin.coroutines/CoroutineContext // io.ktor.client.webrtc/WebRtcEngineBase.createConnectionContext|createConnectionContext(kotlin.coroutines.CoroutineContext){}[0]
126+
open val config // io.ktor.client.webrtc/WebRtcEngineBase.config|{}config[0]
127+
open fun <get-config>(): io.ktor.client.webrtc/WebRtcConfig // io.ktor.client.webrtc/WebRtcEngineBase.config.<get-config>|<get-config>(){}[0]
128+
129+
final fun createConnectionContext(kotlinx.coroutines/CoroutineExceptionHandler?): kotlin.coroutines/CoroutineContext // io.ktor.client.webrtc/WebRtcEngineBase.createConnectionContext|createConnectionContext(kotlinx.coroutines.CoroutineExceptionHandler?){}[0]
127130
open fun close() // io.ktor.client.webrtc/WebRtcEngineBase.close|close(){}[0]
128131
}
129132

@@ -186,6 +189,15 @@ final class io.ktor.client.webrtc/DataChannelReceiveOptions { // io.ktor.client.
186189
final fun <set-onUndeliveredElement>(kotlin/Function1<io.ktor.client.webrtc/WebRtc.DataChannel.Message, kotlin/Unit>?) // io.ktor.client.webrtc/DataChannelReceiveOptions.onUndeliveredElement.<set-onUndeliveredElement>|<set-onUndeliveredElement>(kotlin.Function1<io.ktor.client.webrtc.WebRtc.DataChannel.Message,kotlin.Unit>?){}[0]
187190
}
188191

192+
final class io.ktor.client.webrtc/DefaultExceptionHandler : kotlinx.coroutines/CoroutineExceptionHandler { // io.ktor.client.webrtc/DefaultExceptionHandler|null[0]
193+
constructor <init>(kotlin/String) // io.ktor.client.webrtc/DefaultExceptionHandler.<init>|<init>(kotlin.String){}[0]
194+
195+
final val key // io.ktor.client.webrtc/DefaultExceptionHandler.key|{}key[0]
196+
final fun <get-key>(): kotlin.coroutines/CoroutineContext.Key<*> // io.ktor.client.webrtc/DefaultExceptionHandler.key.<get-key>|<get-key>(){}[0]
197+
198+
final fun handleException(kotlin.coroutines/CoroutineContext, kotlin/Throwable) // io.ktor.client.webrtc/DefaultExceptionHandler.handleException|handleException(kotlin.coroutines.CoroutineContext;kotlin.Throwable){}[0]
199+
}
200+
189201
final class io.ktor.client.webrtc/WebRtcClient : io.ktor.client.webrtc/WebRtcEngine { // io.ktor.client.webrtc/WebRtcClient|null[0]
190202
constructor <init>(io.ktor.client.webrtc/WebRtcEngine) // io.ktor.client.webrtc/WebRtcClient.<init>|<init>(io.ktor.client.webrtc.WebRtcEngine){}[0]
191203

@@ -285,12 +297,12 @@ open class io.ktor.client.webrtc/WebRtcConnectionConfig { // io.ktor.client.webr
285297
final var bundlePolicy // io.ktor.client.webrtc/WebRtcConnectionConfig.bundlePolicy|{}bundlePolicy[0]
286298
final fun <get-bundlePolicy>(): io.ktor.client.webrtc/WebRtc.BundlePolicy // io.ktor.client.webrtc/WebRtcConnectionConfig.bundlePolicy.<get-bundlePolicy>|<get-bundlePolicy>(){}[0]
287299
final fun <set-bundlePolicy>(io.ktor.client.webrtc/WebRtc.BundlePolicy) // io.ktor.client.webrtc/WebRtcConnectionConfig.bundlePolicy.<set-bundlePolicy>|<set-bundlePolicy>(io.ktor.client.webrtc.WebRtc.BundlePolicy){}[0]
288-
final var coroutineContext // io.ktor.client.webrtc/WebRtcConnectionConfig.coroutineContext|{}coroutineContext[0]
289-
final fun <get-coroutineContext>(): kotlin.coroutines/CoroutineContext // io.ktor.client.webrtc/WebRtcConnectionConfig.coroutineContext.<get-coroutineContext>|<get-coroutineContext>(){}[0]
290-
final fun <set-coroutineContext>(kotlin.coroutines/CoroutineContext) // io.ktor.client.webrtc/WebRtcConnectionConfig.coroutineContext.<set-coroutineContext>|<set-coroutineContext>(kotlin.coroutines.CoroutineContext){}[0]
291300
final var dataChannelEventsReplay // io.ktor.client.webrtc/WebRtcConnectionConfig.dataChannelEventsReplay|{}dataChannelEventsReplay[0]
292301
final fun <get-dataChannelEventsReplay>(): kotlin/Int // io.ktor.client.webrtc/WebRtcConnectionConfig.dataChannelEventsReplay.<get-dataChannelEventsReplay>|<get-dataChannelEventsReplay>(){}[0]
293302
final fun <set-dataChannelEventsReplay>(kotlin/Int) // io.ktor.client.webrtc/WebRtcConnectionConfig.dataChannelEventsReplay.<set-dataChannelEventsReplay>|<set-dataChannelEventsReplay>(kotlin.Int){}[0]
303+
final var exceptionHandler // io.ktor.client.webrtc/WebRtcConnectionConfig.exceptionHandler|{}exceptionHandler[0]
304+
final fun <get-exceptionHandler>(): kotlinx.coroutines/CoroutineExceptionHandler? // io.ktor.client.webrtc/WebRtcConnectionConfig.exceptionHandler.<get-exceptionHandler>|<get-exceptionHandler>(){}[0]
305+
final fun <set-exceptionHandler>(kotlinx.coroutines/CoroutineExceptionHandler?) // io.ktor.client.webrtc/WebRtcConnectionConfig.exceptionHandler.<set-exceptionHandler>|<set-exceptionHandler>(kotlinx.coroutines.CoroutineExceptionHandler?){}[0]
294306
final var iceCandidatePoolSize // io.ktor.client.webrtc/WebRtcConnectionConfig.iceCandidatePoolSize|{}iceCandidatePoolSize[0]
295307
final fun <get-iceCandidatePoolSize>(): kotlin/Int // io.ktor.client.webrtc/WebRtcConnectionConfig.iceCandidatePoolSize.<get-iceCandidatePoolSize>|<get-iceCandidatePoolSize>(){}[0]
296308
final fun <set-iceCandidatePoolSize>(kotlin/Int) // io.ktor.client.webrtc/WebRtcConnectionConfig.iceCandidatePoolSize.<set-iceCandidatePoolSize>|<set-iceCandidatePoolSize>(kotlin.Int){}[0]
@@ -914,9 +926,6 @@ final class io.ktor.client.webrtc/JsWebRtcDataChannel : io.ktor.client.webrtc/We
914926
final class io.ktor.client.webrtc/JsWebRtcEngine : io.ktor.client.webrtc/MediaTrackFactory, io.ktor.client.webrtc/WebRtcEngineBase { // io.ktor.client.webrtc/JsWebRtcEngine|null[0]
915927
constructor <init>(io.ktor.client.webrtc/JsWebRtcEngineConfig, io.ktor.client.webrtc/MediaTrackFactory = ...) // io.ktor.client.webrtc/JsWebRtcEngine.<init>|<init>(io.ktor.client.webrtc.JsWebRtcEngineConfig;io.ktor.client.webrtc.MediaTrackFactory){}[0]
916928

917-
final val config // io.ktor.client.webrtc/JsWebRtcEngine.config|{}config[0]
918-
final fun <get-config>(): io.ktor.client.webrtc/JsWebRtcEngineConfig // io.ktor.client.webrtc/JsWebRtcEngine.config.<get-config>|<get-config>(){}[0]
919-
920929
final suspend fun createAudioTrack(io.ktor.client.webrtc/WebRtcMedia.AudioTrackConstraints): io.ktor.client.webrtc/WebRtcMedia.AudioTrack // io.ktor.client.webrtc/JsWebRtcEngine.createAudioTrack|createAudioTrack(io.ktor.client.webrtc.WebRtcMedia.AudioTrackConstraints){}[0]
921930
final suspend fun createAudioTrack(kotlin/Function1<io.ktor.client.webrtc/WebRtcMedia.AudioTrackConstraints, kotlin/Unit>): io.ktor.client.webrtc/WebRtcMedia.AudioTrack // io.ktor.client.webrtc/JsWebRtcEngine.createAudioTrack|createAudioTrack(kotlin.Function1<io.ktor.client.webrtc.WebRtcMedia.AudioTrackConstraints,kotlin.Unit>){}[0]
922931
final suspend fun createPeerConnection(io.ktor.client.webrtc/WebRtcConnectionConfig): io.ktor.client.webrtc/WebRtcPeerConnection // io.ktor.client.webrtc/JsWebRtcEngine.createPeerConnection|createPeerConnection(io.ktor.client.webrtc.WebRtcConnectionConfig){}[0]

ktor-client/ktor-client-webrtc/common/src/io/ktor/client/webrtc/DefaultExceptionHandler.kt

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -20,6 +20,8 @@ public class DefaultExceptionHandler(private val name: String) : CoroutineExcept
2020
return
2121
}
2222
val coroutineName = context[CoroutineName] ?: context.toString()
23-
println("[ERROR] ($name): Unhandled exception caught for $coroutineName. Cause: ${exception.stackTraceToString()}")
23+
println(
24+
"[ERROR] ($name): Unhandled exception caught for $coroutineName. Cause: ${exception.stackTraceToString()}"
25+
)
2426
}
2527
}

ktor-client/ktor-client-webrtc/ktor-client-webrtc-rs/api/ktor-client-webrtc-rs.api

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -105,7 +105,6 @@ public final class io/ktor/client/webrtc/rs/RustWebRtcEngine : io/ktor/client/we
105105
public fun createPeerConnection (Lio/ktor/client/webrtc/WebRtcConnectionConfig;Lkotlin/coroutines/Continuation;)Ljava/lang/Object;
106106
public fun createVideoTrack (Lio/ktor/client/webrtc/WebRtcMedia$VideoTrackConstraints;Lkotlin/coroutines/Continuation;)Ljava/lang/Object;
107107
public fun createVideoTrack (Lkotlin/jvm/functions/Function1;Lkotlin/coroutines/Continuation;)Ljava/lang/Object;
108-
public fun getConfig ()Lio/ktor/client/webrtc/WebRtcConfig;
109108
}
110109

111110
public final class io/ktor/client/webrtc/rs/SendersKt {
@@ -1551,7 +1550,6 @@ public final class uniffi/ktor_client_webrtc/MediaCodec$Companion {
15511550

15521551
public abstract interface class uniffi/ktor_client_webrtc/MediaHandler {
15531552
public static final field Companion Luniffi/ktor_client_webrtc/MediaHandler$Companion;
1554-
public abstract fun onClose ()V
15551553
public abstract fun onNextSample (Luniffi/ktor_client_webrtc/MediaSample;)V
15561554
}
15571555

@@ -1566,7 +1564,6 @@ public class uniffi/ktor_client_webrtc/MediaHandlerImpl : uniffi/ktor_client_web
15661564
public fun destroy ()V
15671565
protected final fun getCleanable ()Luniffi/ktor_client_webrtc/UniffiCleaner$Cleanable;
15681566
protected final fun getPointer ()Lcom/sun/jna/Pointer;
1569-
public fun onClose ()V
15701567
public fun onNextSample (Luniffi/ktor_client_webrtc/MediaSample;)V
15711568
public final fun uniffiClonePointer ()Lcom/sun/jna/Pointer;
15721569
}

ktor-client/ktor-client-webrtc/ktor-client-webrtc-rs/api/ktor-client-webrtc-rs.klib.api

Lines changed: 0 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -213,7 +213,6 @@ abstract interface uniffi.ktor_client_webrtc/Disposable : kotlin/AutoCloseable {
213213
}
214214

215215
abstract interface uniffi.ktor_client_webrtc/MediaHandler { // uniffi.ktor_client_webrtc/MediaHandler|null[0]
216-
abstract fun onClose() // uniffi.ktor_client_webrtc/MediaHandler.onClose|onClose(){}[0]
217216
abstract fun onNextSample(uniffi.ktor_client_webrtc/MediaSample) // uniffi.ktor_client_webrtc/MediaHandler.onNextSample|onNextSample(uniffi.ktor_client_webrtc.MediaSample){}[0]
218217

219218
final object Companion // uniffi.ktor_client_webrtc/MediaHandler.Companion|null[0]
@@ -416,9 +415,6 @@ final class io.ktor.client.webrtc.rs/RustWebRtcDataChannel : io.ktor.client.webr
416415
final class io.ktor.client.webrtc.rs/RustWebRtcEngine : io.ktor.client.webrtc/MediaTrackFactory, io.ktor.client.webrtc/WebRtcEngineBase { // io.ktor.client.webrtc.rs/RustWebRtcEngine|null[0]
417416
constructor <init>(io.ktor.client.webrtc/WebRtcConfig, io.ktor.client.webrtc/MediaTrackFactory = ...) // io.ktor.client.webrtc.rs/RustWebRtcEngine.<init>|<init>(io.ktor.client.webrtc.WebRtcConfig;io.ktor.client.webrtc.MediaTrackFactory){}[0]
418417

419-
final val config // io.ktor.client.webrtc.rs/RustWebRtcEngine.config|{}config[0]
420-
final fun <get-config>(): io.ktor.client.webrtc/WebRtcConfig // io.ktor.client.webrtc.rs/RustWebRtcEngine.config.<get-config>|<get-config>(){}[0]
421-
422418
final suspend fun createAudioTrack(io.ktor.client.webrtc/WebRtcMedia.AudioTrackConstraints): io.ktor.client.webrtc/WebRtcMedia.AudioTrack // io.ktor.client.webrtc.rs/RustWebRtcEngine.createAudioTrack|createAudioTrack(io.ktor.client.webrtc.WebRtcMedia.AudioTrackConstraints){}[0]
423419
final suspend fun createAudioTrack(kotlin/Function1<io.ktor.client.webrtc/WebRtcMedia.AudioTrackConstraints, kotlin/Unit>): io.ktor.client.webrtc/WebRtcMedia.AudioTrack // io.ktor.client.webrtc.rs/RustWebRtcEngine.createAudioTrack|createAudioTrack(kotlin.Function1<io.ktor.client.webrtc.WebRtcMedia.AudioTrackConstraints,kotlin.Unit>){}[0]
424420
final suspend fun createPeerConnection(io.ktor.client.webrtc/WebRtcConnectionConfig): io.ktor.client.webrtc/WebRtcPeerConnection // io.ktor.client.webrtc.rs/RustWebRtcEngine.createPeerConnection|createPeerConnection(io.ktor.client.webrtc.WebRtcConnectionConfig){}[0]
@@ -843,7 +839,6 @@ open class uniffi.ktor_client_webrtc/MediaHandlerImpl : uniffi.ktor_client_webrt
843839
final fun uniffiClonePointer(): kotlinx.cinterop/CPointer<out kotlinx.cinterop/CPointed> // uniffi.ktor_client_webrtc/MediaHandlerImpl.uniffiClonePointer|uniffiClonePointer(){}[0]
844840
open fun close() // uniffi.ktor_client_webrtc/MediaHandlerImpl.close|close(){}[0]
845841
open fun destroy() // uniffi.ktor_client_webrtc/MediaHandlerImpl.destroy|destroy(){}[0]
846-
open fun onClose() // uniffi.ktor_client_webrtc/MediaHandlerImpl.onClose|onClose(){}[0]
847842
open fun onNextSample(uniffi.ktor_client_webrtc/MediaSample) // uniffi.ktor_client_webrtc/MediaHandlerImpl.onNextSample|onNextSample(uniffi.ktor_client_webrtc.MediaSample){}[0]
848843

849844
final object Companion // uniffi.ktor_client_webrtc/MediaHandlerImpl.Companion|null[0]

0 commit comments

Comments
 (0)