livekit / client-sdk-android

LiveKit SDK for Android
https://docs.livekit.io
Apache License 2.0
169 stars 68 forks source link

Video Crash After Connected with in a signle second #286

Open kamal1990 opened 11 months ago

kamal1990 commented 11 months ago

Describe the bug A clear and concise description of what the bug is.

Expected behavior

when I Call the CallActivity then its open and shows video but within 3-5 second video is crashed and app is closed

Please see the video below

Screenshots If applicable, add screenshots to help explain your problem.

Device Info: 1 - Device: [xiaomi 10 i]

Additional context Add any other context about the problem here.

VideoCapabilities: Unsupported mime video/x-ms-wmv V/SignalClient: Closing SignalClient: code = 1000, reason = Starting new connection java.lang.Exception at io.livekit.android.room.SignalClient.close(SignalClient.kt:709) at io.livekit.android.room.SignalClient.close$default(SignalClient.kt:708) at io.livekit.android.room.SignalClient.connect(SignalClient.kt:138) at io.livekit.android.room.SignalClient.join(SignalClient.kt:110) at io.livekit.android.room.RTCEngine.joinImpl(RTCEngine.kt:168) at io.livekit.android.room.RTCEngine.join(RTCEngine.kt:159) at io.livekit.android.room.Room.connect(Room.kt:281) at io.livekit.android.room.Room.connect$default(Room.kt:212) at t.skillvsme.CallViewModel.connectToRoom(CallViewModel.kt:169) at t.skillvsme.CallViewModel.access$connectToRoom(CallViewModel.kt:35) at t.skillvsme.CallViewModel$1.invokeSuspend(CallViewModel.kt:137)

https://github.com/livekit/client-sdk-android/assets/13064826/5a5aa7bf-c179-4a44-acaf-b7c45ee64284

    at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:33)
    at kotlinx.coroutines.internal.DispatchedContinuationKt.resumeCancellableWith(DispatchedContinuation.kt:367)
    at kotlinx.coroutines.intrinsics.CancellableKt.startCoroutineCancellable(Cancellable.kt:30)
    at kotlinx.coroutines.intrinsics.CancellableKt.startCoroutineCancellable$default(Cancellable.kt:25)
    at kotlinx.coroutines.CoroutineStart.invoke(CoroutineStart.kt:110)
    at kotlinx.coroutines.AbstractCoroutine.start(AbstractCoroutine.kt:126)
    at kotlinx.coroutines.BuildersKt__Builders_commonKt.launch(Builders.common.kt:56)
    at kotlinx.coroutines.BuildersKt.launch(Unknown Source:1)
    at kotlinx.coroutines.BuildersKt__Builders_commonKt.launch$default(Builders.common.kt:47)
    at kotlinx.coroutines.BuildersKt.launch$default(Unknown Source:1)
    at t.skillvsme.CallViewModel.<init>(CallViewModel.kt:97)
    at t.skillvsme.CallActivity$viewModel$2.invoke(CallActivity.kt:35)
    at t.skillvsme.CallActivity$viewModel$2.invoke(CallActivity.kt:28)
    at t.skillvsme.ViewModelLazyExtKt$createViewModelFactoryFactory$1.create(ViewModelLazyExt.kt:24)
    at androidx.lifecycle.ViewModelProvider$Factory.create(ViewModelProvider.kt:83)
    at androidx.lifecycle.ViewModelProvider.get(ViewModelProvider.kt:187)
    at androidx.lifecycle.ViewModelProvider.get(ViewModelProvider.kt:153)
    at androidx.lifecycle.ViewModelLazy.getValue(ViewModelLazy.kt:53)
    at androidx.lifecycle.ViewModelLazy.getValue(ViewModelLazy.kt:35)
    at t.skillvsme.CallActivity.getViewModel(CallActivity.kt:28)
    at t.skillvsme.CallActivity.onCreate(CallActivity.kt:87)
    at android.app.Activity.performCreate(Activity.java:8115)
    at android.app.Activity.performCreate(Activity.java:8095)
    at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1329)
    at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:3682)
    at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:3866)
    at android.app.servertransaction.LaunchActivityItem.execute(LaunchActivityItem.java:103)
    at android.app.servertransaction.TransactionExecutor.executeCallbacks(TransactionExecutor.java:135)
    at android.app.servertransaction.TransactionExecutor.execute(TransactionExecutor.java:95)
    at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2281)
    at android.os.Handler.dispatchMessage(Handler.java:106)
    at android.os.Looper.loopOnce(Looper.java:223)
    at android.os.Looper.loop(Looper.java:317)
    at android.app.ActivityThread.main(ActivityThread.java:7942)
    at java.lang.reflect.Method.invoke(Native Method)
    at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:568)
    at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1045)

I/SignalClient: connecting to wss://live.pointcast.us/rtc?access_token=eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJuYmYiOjE2OTU5NjM0NTYsImV4cCI6MTY5NTk4ODY1NiwiaXNzIjoiQVBJVjgybUhWYXk5dnJqIiwic3ViIjoiZGRkZCIsImp0aSI6ImRkZGQiLCJ2aWRlbyI6eyJyb29tIjoiUG9pbmNoYXQiLCJyb29tSm9pbiI6dHJ1ZX19.TnYGcBGJOBID71IjzMZOjlEqj6pDcrvqY_EfuxA-9RM&protocol=9&auto_subscribe=1&adaptive_stream=0&sdk=android&version=1.4.2&device_model=motorola moto g22&os=android&os_version=12&network=wifi D/MediaRecorder: constructor E 0xb4000076506e84d0 D/MediaRecorder: constructor X 0xb4000076506e84d0 D/MediaRecorder: init E 0xb4000076506e84d0 D/MediaRecorder: init X 0xb4000076506e84d0 D/MediaRecorder: prepare E 0xb4000076506e84d0 D/MediaRecorder: prepare X 0xb4000076506e84d0 D/MediaRecorder: start E 0xb4000076506e84d0 D/MediaRecorder: start X 0xb4000076506e84d0 D/MediaRecorder: release E 0xb4000076506e84d0 D/MediaRecorder: Release X 0xb4000076506e84d0 D/MediaRecorder: destructor E 0xb4000076506e84d0 D/MediaRecorder: destructor X 0xb4000076506e84d0 I/System.out: kkopp true D/ViewRootImpl[CallActivity]: hardware acceleration = true, sRendererEnabled = true, forceHwAccelerated = false I/BLASTBufferQueue: [ViewRootImpl[CallActivity]#1] constructor() V/SignalClient: response: # livekit.LivekitRtc$SignalResponse@1da9b766 join { ice_servers { credential: "sAdflkiDhTu37axm33xP9nUpeKXRiXxxC2kfZe5GLstB" urls: "turn:35.92.140.26:3478?transport=udp" urls: "turns:livekit-turn.pointcast.us:443?transport=tcp" username: "Poinchat" } participant { identity: "dddd" joined_at: 1695963457 permission { can_publish: true can_publish_data: true can_subscribe: true } sid: "PA_btaF8z6w8YHa" } ping_interval: 10 ping_timeout: 20 room { creation_time: 1695963457 empty_timeout: 300 enabled_codecs { mime: "audio/opus" } enabled_codecs { mime: "audio/red" } enabled_codecs { mime: "video/VP8" } enabled_codecs { mime: "video/H264" } name: "Poinchat" sid: "RM_5wjjvwpHcV9n" turn_password: "sAdflkiDhTu37axm33xP9nUpeKXRiXxxC2kfZe5GLstB" 12: "" } server_info { node_id: "ND_bijbmNIo" protocol: 10 version: "1.4.5" } server_version: "1.4.5" sif_trailer: "mvh1Z1sdEu3qcAUpwWKqNekJ6qWxzuyBzEtDdM5fS9W" subscriber_primary: true }

davidliu commented 11 months ago

Are you trying to output video/x-ms-wmv? That's a WMV file isn't it?

kamal1990 commented 11 months ago

No

davidliu commented 11 months ago

Do you have some repro code on how you're creating/connecting the room and turning on video?

kamal1990 commented 11 months ago

yes I have if you want then i will send it you in zip file