[Android] FLV video playback cause crash
Problem Description
FLV video playback cause crash on Android/ChromeOS devices with complex AIR applications. It happens mostly on "fast switch" between multiple FLV videos with complex DisplayList render as I understood.
Tested with multiple AIR versions, even with latest AIR 51.2.2.6 with multiple different Android and ChromeOS devices with different OS versions, different architectures (armv8, x86_64) with different FLV videos. Same issue in all cases. There is no such issues with other platforms. Also it works fine with non-AIR applications.
Related issues: https://github.com/airsdk/Adobe-Runtime-Support/issues/3821 https://github.com/airsdk/Adobe-Runtime-Support/issues/3972 https://github.com/airsdk/Adobe-Runtime-Support/issues/2296 https://github.com/airsdk/Adobe-Runtime-Support/issues/211 https://github.com/airsdk/Adobe-Runtime-Support/issues/155 https://github.com/airsdk/Adobe-Runtime-Support/issues/2125 https://github.com/airsdk/Adobe-Runtime-Support/issues/2277 https://github.com/airsdk/Adobe-Runtime-Support/issues/2503 https://github.com/airsdk/Adobe-Runtime-Support/issues/3519
Steps to Reproduce
I still cannot isolate this issue in sample. But you need to have AIR application for Android with switching between multiple FLV videos. For example on click stop previous video, remove it and launch next. Or launch next FLV video without stopping previous one.
Actual Result: Application crash:
ABI: 'arm64'
Timestamp: 2025-11-25 12:53:21.780317412+0300
Process uptime: 38s
Cmdline: com.my.air.app
pid: 10405, tid: 10652, name: Thread-30 >>> com.my.air.app <<<
uid: 10434
signal 6 (SIGABRT), code -1 (SI_QUEUE), fault addr --------
Abort message: 'FORTIFY: pthread_mutex_lock called on a destroyed mutex (0xb4000079516e6d20)'
x0 0000000000000000 x1 000000000000299c x2 0000000000000006 x3 000000779a101730
x4 0000000080808080 x5 0000000080808080 x6 0000000080808080 x7 8080808080808080
x8 00000000000000f0 x9 0000007b5cfe9b70 x10 0000000000000001 x11 0000007b5d02978c
x12 0101010101010101 x13 00001945435f84fc x14 002a8c691895b11f x15 0000000000000028
x16 0000007b5d091d70 x17 0000007b5d06d420 x18 0000000000000000 x19 00000000000028a5
x20 000000000000299c x21 00000000ffffffff x22 0000000000000000 x23 000000000000000a
x24 b4000079516e6cf4 x25 000000779a102000 x26 0000000000000000 x27 0000000000000064
x28 0000000000000005 x29 000000779a1017b0
lr 0000007b5d01a6c8 sp 000000779a101710 pc 0000007b5d01a6f4 pst 0000000000001000
backtrace:
#00 pc 00000000000526f4 /apex/com.android.runtime/lib64/bionic/libc.so (abort+168) (BuildId: 2938f6235116cbc48464ee0f7622625e)
#01 pc 0000000000054554 /apex/com.android.runtime/lib64/bionic/libc.so (__fortify_fatal(char const*, ...)+128) (BuildId: 2938f6235116cbc48464ee0f7622625e)
#02 pc 00000000000bb790 /apex/com.android.runtime/lib64/bionic/libc.so (HandleUsingDestroyedMutex(pthread_mutex_t*, char const*)+68) (BuildId: 2938f6235116cbc48464ee0f7622625e)
#03 pc 00000000000bb610 /apex/com.android.runtime/lib64/bionic/libc.so (pthread_mutex_lock+248) (BuildId: 2938f6235116cbc48464ee0f7622625e)
#04 pc 00000000000b994c /apex/com.android.runtime/lib64/bionic/libc.so (pthread_cond_timedwait+164) (BuildId: 2938f6235116cbc48464ee0f7622625e)
#05 pc 00000000002c8cb8 /data/app/~~no2vlAjSt3gNFSQ24g_gnA==/com.my.air.app-AMd-B4Ttvj8kbxqD-ysVjA==/base.apk!libCore.so (BuildId: 144fe9080948155aa22c270011aeebaad2248e1c)
#06 pc 0000000000363f50 /data/app/~~no2vlAjSt3gNFSQ24g_gnA==/com.my.air.app-AMd-B4Ttvj8kbxqD-ysVjA==/base.apk!libCore.so (BuildId: 144fe9080948155aa22c270011aeebaad2248e1c)
#07 pc 00000000002c8a30 /data/app/~~no2vlAjSt3gNFSQ24g_gnA==/com.my.air.app-AMd-B4Ttvj8kbxqD-ysVjA==/base.apk!libCore.so (BuildId: 144fe9080948155aa22c270011aeebaad2248e1c)
#08 pc 00000000002c8aa0 /data/app/~~no2vlAjSt3gNFSQ24g_gnA==/com.my.air.app-AMd-B4Ttvj8kbxqD-ysVjA==/base.apk!libCore.so (BuildId: 144fe9080948155aa22c270011aeebaad2248e1c)
#09 pc 00000000002c87d4 /data/app/~~no2vlAjSt3gNFSQ24g_gnA==/com.my.air.app-AMd-B4Ttvj8kbxqD-ysVjA==/base.apk!libCore.so (BuildId: 144fe9080948155aa22c270011aeebaad2248e1c)
#10 pc 00000000000ba598 /apex/com.android.runtime/lib64/bionic/libc.so (__pthread_start(void*)+208) (BuildId: 2938f6235116cbc48464ee0f7622625e)
#11 pc 0000000000053f3c /apex/com.android.runtime/lib64/bionic/libc.so (__start_thread+68) (BuildId: 2938f6235116cbc48464ee0f7622625e)
Expected Result: Video playback without crashes.
Known Workarounds
none Do not use FLV or write your own native extension for FLV video playback.
Does introducing a delay between the videos resolve the issue?