videokit-ai/natcorder

Adnroid Crash Report

NoahHahm opened this issue · 4 comments

MP4Recorder prepared video encoder with format: mime: string(video/avc), width: int32(1328), height: int32(746), color-format: int32(2135033992), frame-rate: float(30.000000), bitrate: int32(3250000), i-frame-interval: int32(30)}  

MP4Recorder prepared audio encoder with format: mime: string(audio/mp4a-latm), sample-rate: int32(24000), channel-count: int32(2), channel-mask: int32(12), bitrate: int32(64000), aac-profile: int32(2), max-input-size: int32(16384)}

Created GLESTextureInput with size 1328x746

[uncaughtException] error occur : java.lang.Error: FATAL EXCEPTION [main]
Unity version     : 2020.3.47f1
Device model      : samsung SM-G920S
Device fingerprint: samsung/zeroflteskt/zeroflteskt:7.0/NRD90M/G920SKSU3ERG1:user/release-keys
Build Type        : Release
Scripting Backend : IL2CPP
ABI               : arm64-v8a
Strip Engine Code : true

Caused by: java.lang.Error: *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** ***
Version '2020.3.47f1 (5ef4f5b5e2d4)', Build type 'Release', Scripting Backend 'il2cpp', CPU 'arm64-v8a'
Build fingerprint: 'samsung/zeroflteskt/zeroflteskt:7.0/NRD90M/G920SKSU3ERG1:user/release-keys'
Revision: '11'
ABI: 'arm64'
Timestamp: 2023-07-13 18:37:08+0900
pid: 32764, tid: 6007, name: UnityMain  >>> com.test.aa <<<
uid: 10183
signal 11 (SIGSEGV), code 1 (SEGV_MAPERR), fault addr 0x98
Cause: null pointer dereference
  x0  0000000000000000  x1  0000000000000000  x2  0000000000000000  x3  0000000000000008
  x4  0000000000000021  x5  0000000000000080  x6  0000000000000001  x7  0000000000000000
  x8  0000007713dd5060  x9  0000000000000002  x10 0000000000000001  x11 0000000000000000
  x12 0000000000000018  x13 0000000000000000  x14 0000000000000000  x15 00047caa9da0cc54
  x16 0000007713dd4b40  x17 0000007717553f50  x18 c5efc455abc9c045  x19 0000000000000000
  x20 00000076d290e138  x21 00000075e33bb304  x22 0000007707c76900  x23 00000075e33bb4e8
  x24 c5efc455abc9c045  x25 00000000000fd000  x26 c5efc455abc9c045  x27 000000000000000b
  x28 0000007630385ac0  x29 00000075e33bb2a0
  sp  00000075e33bb240  lr  0000007713dc1748  pc  0000007713dc1758

backtrace:
    #00 pc 0000000000014758  /system/lib64/libEGL.so (eglCreateWindowSurface+96) (BuildId: 54f61d742852a9da01303fd82d3d298f)
    #01 pc 000000000001f304  /data/app/com.test.aa-2/lib/arm64/libNatCorder.so (NatML::Recorders::GLESTextureInput::Readback(void*)+248) (BuildId: 66bc20cc0d1dc7f135a42ad700346033baf94ced)
    #02 pc 000000000001f880  /data/app/com.test.aa-2/lib/arm64/libNatCorder.so (void* std::__ndk1::__thread_proxy<std::__ndk1::tuple<std::__ndk1::unique_ptr<std::__ndk1::__thread_struct, std::__ndk1::default_delete<std::__ndk1::__thread_struct> >, void (NatML::Recorders::GLESTextureInput::*)(void*), NatML::Recorders::GLESTextureInput*, void*> >(void*)+68) (BuildId: 66bc20cc0d1dc7f135a42ad700346033baf94ced)
    #03 pc 0000000000068258  /system/lib64/libc.so (__pthread_start(void*)+196) (BuildId: 0823626294ab008e93e3f03fd5facdee)
    #04 pc 000000000001dc00  /system/lib64/libc.so (__start_thread+16) (BuildId: 0823626294ab008e93e3f03fd5facdee)

at libEGL.eglCreateWindowSurface(eglCreateWindowSurface:96)
at libNatCorder.NatML::Recorders::GLESTextureInput::Readback(void*)(Readback:248)
at libNatCorder.void* std::__ndk1::__thread_proxy<std::__ndk1::tuple<std::__ndk1::unique_ptr<std::__ndk1::__thread_struct, std::__ndk1::default_delete<std::__ndk1::__thread_struct> >, void (NatML::Recorders::GLESTextureInput::*)(void*), NatML::Recorders::GLESTextureInput*, void*> >(void*)(__thread_struct> >, void :68)
at libc.__pthread_start(void*)(__pthread_start:196)
at libc.__start_thread(__start_thread:16)
/ message : FATAL EXCEPTION [main]
Unity version     : 2020.3.47f1
Device model      : samsung SM-G920S
Device fingerprint: samsung/zeroflteskt/zeroflteskt:7.0/NRD90M/G920SKSU3ERG1:user/release-keys
Build Type        : Release
Scripting Backend : IL2CPP
ABI               : arm64-v8a
Strip Engine Code : true
| at .uncaughtException(CrashHandler.kt:34)

NatCorder Version : 1.8.9
Unity : 2020.3.47f1

We are using NatCorder 1.8.9 due to support issues on iOS minimum (iOS 13).

The above crash occurs on some Android devices.

I am using GLESTextureInput and Android is using OpenGL based Unity.

thank you.

Hey @NoahHahm , can you share the full (unfiltered) logs in a .txt attachment? There should be a separate error that is logged right before this crash occurs.

Since it is a log that contains some personal information, we have forwarded it to Discord's DM.

@NoahHahm got the logs. Can you capture them from farther before the crash occurs? There should be an error that gets logged before cascading into the crash. Also, how flexible are you on bumping to iOS 14+? We've merged NatCorder into VideoKit, and once we release the next VideoKit update, we'll be officially deprecating NatCorder. As such, we'd put the fix into VideoKit (which requires iOS 14+).

This bug has been fixed in VideoKit 0.0.14.