Crash on FMOD Studio Update thread, Fmod Version: 2.00.09

IOS:

FMOD_Resampler_Linear

Crashed: FMOD Studio update thread

EXC_BAD_ACCESS KERN_INVALID_ADDRESS 0x0000000000000000

FMOD Studio update thread
0x10130ec60 FMOD_Resampler_Linear + 1519168
0x1013ad730 FMOD_Studio_CommandReplay_SetUserData + 2169104
0x1013ad730 FMOD_Studio_CommandReplay_SetUserData + 2169104
0x1013aea90 FMOD_Studio_CommandReplay_SetUserData + 2174064
0x1013c09dc FMOD_Studio_CommandReplay_SetUserData + 2247612
0x1013c4d10 FMOD_Studio_CommandReplay_SetUserData + 2264816
0x1013cc2ec FMOD_Studio_CommandReplay_SetUserData + 2294988
0x101365320 FMOD_Studio_CommandReplay_SetUserData + 1873152
0x101366848 FMOD_Studio_CommandReplay_SetUserData + 1878568
0x1012bd3c0 FMOD::thread::callback(void*) + 1185184
0x10129c6b4 FMOD_OS_Thread_Callback(void*) + 1050772
11 libsystem_pthread.dylib 0x1905eb25c _pthread_body + 128
12 libsystem_pthread.dylib 0x1905eb1bc _pthread_start + 48
13 libsystem_pthread.dylib 0x1905eecf4 thread_start + 4

ANDROID:

Caused by java.lang.Error: signal 6 (SIGABRT), code -6 (?), fault addr --------
Build fingerprint: 'HONOR/AUM-AL00/HWAUM-Q:8.0.0/HONORAUM-AL00/218(C00)n: ‘0’

pid: , tid:, name: FMOD Studio upd >>> <<<

x0   0000000000000000  x1   0000000000000b9d  x2   0000000000000006  x3   0000000000000008
x4   8000000000808080  x5   8000000000808080  x6   8000000000808080  x7   0000000000000008
x8   0000000000000083  x9   e80ad405b9e51ba6  x10  0000007169140588  x11  e80ad405b9e51ba6
x12  e80ad405b9e51ba6  x13  0000000000000020  x14  00000071748f390c  x15  e80ad405b9e51ba6
x16  00000071749ae2d8  x17  0000007174941a38  x18  0000000000000051  x19  000000000000086a
x20  0000000000000b9d  x21  0000000000000000  x22  0000000000000003  x23  00000071381b6f98
x24  0000000000000000  x25  0000007169120000  x26  00000071505acca0  x27  0000000000000000
x28  00000000ffffffe8  x29  000000716913fd60  x30  00000071748e7394
sp   000000716913fd20  pc   0000007174941a40  pstate 0000000060000000

   at [vdso].()
   at libc.tgkill(tgkill:4)
   at libc.abort(abort:88)
   at libstdc++.()
   at libstdc++.__cxa_pure_virtual(__cxa_pure_virtual:16)
   at libfmodstudio.()

This issue apparently, after couple hours of testing, occurs when updating single shots, there might be something we have done in the code or in the soundbank. We had Fmod 1.10 previously and did not had any problems other than game crashing on android due mutex thread issue which this update was supposed to help with. Repro is possible with just running the game and the game just crashing in random points.

Link to image for xcode part where the crashing is happening: https://ibb.co/CnzYfc8

Also memory read error in fmod update thread:

error: memory read failed for 0x0

FMOD Studio update thread (45): EXC_BAD_ACCESS (code=1, address=0x58)

And this in thread_start

libsystem_pthread.dylib`thread_start:
0x203304cd8 <+0>: bl 0x2033011f4 ; _pthread_start
-> 0x203304cdc <+4>: nop FMOD Studio update thread (45): EXC_BAD_ACCESS (code=1, address=0x58)

Issue started after we updated from version 1.10 to the latest 2.00.09, update was smooth without problems, no code changed were made and the sound banks were builded again using the same updated version of Fmod

Could you try reproducing the crash on Android using the logging version of FMOD? It will send useful debug information to LogCat and also provide better crash callstacks than the release version.

Will start debugging now with logging version of FMOD.

    SystemI::createSoundInternal             : Sample 0/1: name='KnifeThrowerAttack3_Var2', format=2, channels=2, frequency=48000, lengthbytes=4352, lengthpcm=22255, pcmblocksize=0, loopstart=0, loopend=0, mode=0x00000000, channelmask=0x00000000, channelorder=0, peakvolume=0.074860.
    SystemI::createSoundInternal             : Create name='', mode=0x02000202
    SystemI::createSoundInternal             : exinfo->cbsize             = 144
    SystemI::createSoundInternal             : exinfo->length             = 9793376
    SystemI::createSoundInternal             : exinfo->fileoffset         = 382592
    SystemI::createSoundInternal             : exinfo->numsubsounds       = 1
    SystemI::createSoundInternal             : exinfo->inclusionlist      = 0xb7de7d14
    SystemI::createSoundInternal             : exinfo->inclusionlistnum   = 1
    SystemI::createSoundInternal             : exinfo->suggestedsoundtype = 5
    SystemI::createSoundInternal             : exinfo->useropen           = 0xa7193075
    SystemI::createSoundInternal             : exinfo->userclose          = 0xa7193105
    SystemI::createSoundInternal             : exinfo->userread           = 0xa719311d
    SystemI::createSoundInternal             : exinfo->userseek           = 0xa7193199
    SystemI::createSoundInternal             : exinfo->fileuserdata       = 0xaa5c63c8
    SystemI::createSoundInternal             : exinfo->initialseekpostype = 1
    SystemI::DSPCodecPoolRegister            : register codec pool for pool type 5
    SystemI::createSoundInternal             : Sample 0/1: name='KnifeThrowerAttack2_Var2', format=2, channels=2, frequency=48000, lengthbytes=3072, lengthpcm=15437, pcmblocksize=0, loopstart=0, loopend=0, mode=0x00000000, channelmask=0x00000000, channelorder=0, peakvolume=0.067078.
    SystemI::createSoundInternal             : Create name='', mode=0x02000202
    SystemI::createSoundInternal             : exinfo->cbsize             = 144
    SystemI::createSoundInternal             : exinfo->length             = 9793376
    SystemI::createSoundInternal             : exinfo->fileoffset         = 382592
    SystemI::createSoundInternal             : exinfo->numsubsounds       = 1
    SystemI::createSoundInternal             : exinfo->inclusionlist      = 0xb7de7d14
    SystemI::createSoundInternal             : exinfo->inclusionlistnum   = 1
    SystemI::createSoundInternal             : exinfo->suggestedsoundtype = 5
06-02 13:37:23.956 1790-2131/? I/fmod: SystemI::createSoundInternal             : exinfo->useropen           = 0xa7193075
    SystemI::createSoundInternal             : exinfo->userclose          = 0xa7193105
    SystemI::createSoundInternal             : exinfo->userread           = 0xa719311d
    SystemI::createSoundInternal             : exinfo->userseek           = 0xa7193199
    SystemI::createSoundInternal             : exinfo->fileuserdata       = 0xaa5c63c8
    SystemI::createSoundInternal             : exinfo->initialseekpostype = 1
    SystemI::DSPCodecPoolRegister            : register codec pool for pool type 5
    SystemI::createSoundInternal             : Sample 0/1: name='KnifeThrowerAttack2_Var4', format=2, channels=2, frequency=48000, lengthbytes=3040, lengthpcm=15455, pcmblocksize=0, loopstart=0, loopend=0, mode=0x00000000, channelmask=0x00000000, channelorder=0, peakvolume=0.072815.
06-02 13:37:23.957 1790-2131/? I/fmod: SystemI::createSoundInternal             : Create name='', mode=0x02000202
    SystemI::createSoundInternal             : exinfo->cbsize             = 144
    SystemI::createSoundInternal             : exinfo->length             = 9793376
    SystemI::createSoundInternal             : exinfo->fileoffset         = 382592
    SystemI::createSoundInternal             : exinfo->numsubsounds       = 1
    SystemI::createSoundInternal             : exinfo->inclusionlist      = 0xb7de7d14
    SystemI::createSoundInternal             : exinfo->inclusionlistnum   = 1
    SystemI::createSoundInternal             : exinfo->suggestedsoundtype = 5
    SystemI::createSoundInternal             : exinfo->useropen           = 0xa7193075
    SystemI::createSoundInternal             : exinfo->userclose          = 0xa7193105
    SystemI::createSoundInternal             : exinfo->userread           = 0xa719311d
    SystemI::createSoundInternal             : exinfo->userseek           = 0xa7193199
    SystemI::createSoundInternal             : exinfo->fileuserdata       = 0xaa5c63c8
    SystemI::createSoundInternal             : exinfo->initialseekpostype = 1
    SystemI::DSPCodecPoolRegister            : register codec pool for pool type 5
    SystemI::createSoundInternal             : Sample 0/1: name='KnifeThrowerAttack3_Var1', format=2, channels=2, frequency=48000, lengthbytes=4736, lengthpcm=22908, pcmblocksize=0, loopstart=0, loopend=0, mode=0x00000000, channelmask=0x00000000, channelorder=0, peakvolume=0.070129.
06-02 13:37:24.009 29391-19087/? W/NightController: handleMessage() - Camera is empty, set night mode later
06-02 13:37:24.091 1790-2129/? E/fmod: assert                                   : assertion: 'mPlaybackSystem->destroyEventInstance(this) == FMOD_OK' failed
06-02 13:37:24.131 1790-2129/? A/libc: Pure virtual function called. Are you calling virtual methods from a destructor?
06-02 13:37:24.141 29391-19087/? W/NightController: handleMessage() - Camera is empty, set night mode later
06-02 13:37:24.249 29391-19087/? W/NightController: handleMessage() - Camera is empty, set night mode later
06-02 13:37:24.271 1790-2126/? W/fmod: OutputRingBuffer::read                   : Buffer starvation detected, requested 2048 bytes, 1024 / 16384 bytes available.
    OutputRingBuffer::read                   : Increasing block count to 9.
06-02 13:37:24.272 1790-2126/? W/fmod: OutputRingBuffer::read                   : Buffer starvation detected, requested 5632 bytes, 0 / 16384 bytes available.
    OutputRingBuffer::read                   : Increasing block count to 10.
06-02 13:37:24.290 1790-2126/? W/fmod: OutputRingBuffer::read                   : Buffer starvation detected, requested 7680 bytes, 0 / 16384 bytes available.
    OutputRingBuffer::read                   : Increasing block count to 11.
06-02 13:37:24.364 29391-19087/? W/NightController: handleMessage() - Camera is empty, set night mode later
06-02 13:37:24.616 29391-19087/? I/chatty: uid=10029(com.oneplus.camera) Camera Thread identical 2 lines
06-02 13:37:24.739 29391-19087/? W/NightController: handleMessage() - Camera is empty, set night mode later
06-02 13:37:24.769 837-908/? D/audio_hw_primary: out_set_parameters: enter: usecase(1: low-latency-playback) kvpairs: suspend_playback=true
06-02 13:37:24.769 837-908/? D/audio_hw_extn: audio_extn_fm_set_parameters: Enter
06-02 13:37:24.769 837-908/? D/audio_hw_hfp: hfp_set_parameters: enter
06-02 13:37:24.786 837-908/? D/audio_hw_primary: out_set_parameters: enter: usecase(1: low-latency-playback) kvpairs: suspend_playback=false
06-02 13:37:24.787 837-908/? D/audio_hw_extn: audio_extn_fm_set_parameters: Enter
06-02 13:37:24.787 837-908/? D/audio_hw_hfp: hfp_set_parameters: enter
06-02 13:37:24.791 837-908/? D/audio_hw_primary: out_set_parameters: enter: usecase(1: low-latency-playback) kvpairs: suspend_playback=true
06-02 13:37:24.792 837-908/? D/audio_hw_extn: audio_extn_fm_set_parameters: Enter
06-02 13:37:24.792 837-908/? D/audio_hw_hfp: hfp_set_parameters: enter
06-02 13:37:24.807 837-908/? D/audio_hw_primary: out_set_parameters: enter: usecase(1: low-latency-playback) kvpairs: suspend_playback=false
06-02 13:37:24.807 837-908/? D/audio_hw_extn: audio_extn_fm_set_parameters: Enter
06-02 13:37:24.807 837-908/? D/audio_hw_hfp: hfp_set_parameters: enter
06-02 13:37:24.814 837-908/? D/audio_hw_primary: out_set_parameters: enter: usecase(1: low-latency-playback) kvpairs: suspend_playback=true
06-02 13:37:24.815 837-908/? D/audio_hw_extn: audio_extn_fm_set_parameters: Enter
06-02 13:37:24.815 837-908/? D/audio_hw_hfp: hfp_set_parameters: enter
06-02 13:37:24.829 837-908/? D/audio_hw_primary: out_set_parameters: enter: usecase(1: low-latency-playback) kvpairs: suspend_playback=false
06-02 13:37:24.830 837-908/? D/audio_hw_extn: audio_extn_fm_set_parameters: Enter
06-02 13:37:24.830 837-908/? D/audio_hw_hfp: hfp_set_parameters: enter
06-02 13:37:24.834 837-908/? D/audio_hw_primary: out_set_parameters: enter: usecase(1: low-latency-playback) kvpairs: suspend_playback=true
06-02 13:37:24.834 837-908/? D/audio_hw_extn: audio_extn_fm_set_parameters: Enter
06-02 13:37:24.834 837-908/? D/audio_hw_hfp: hfp_set_parameters: enter
06-02 13:37:24.846 29391-19087/? W/NightController: handleMessage() - Camera is empty, set night mode later
06-02 13:37:24.849 837-908/? D/audio_hw_primary: out_set_parameters: enter: usecase(1: low-latency-playback) kvpairs: suspend_playback=false
06-02 13:37:24.849 837-908/? D/audio_hw_extn: audio_extn_fm_set_parameters: Enter
06-02 13:37:24.849 837-908/? D/audio_hw_hfp: hfp_set_parameters: enter
06-02 13:37:24.851 4878-4878/? E/chromium: [0602/133724.850334:ERROR:elf_dynamic_array_reader.h(61)] tag not found
06-02 13:37:24.855 837-908/? D/audio_hw_primary: out_set_parameters: enter: usecase(1: low-latency-playback) kvpairs: suspend_playback=true
06-02 13:37:24.855 837-908/? D/audio_hw_extn: audio_extn_fm_set_parameters: Enter
06-02 13:37:24.855 837-908/? D/audio_hw_hfp: hfp_set_parameters: enter
06-02 13:37:24.860 1790-2126/? W/fmod: OutputRingBuffer::read                   : Buffer starvation detected, requested 7680 bytes, 3072 / 16384 bytes available.
    OutputRingBuffer::read                   : Increasing block count to 12.
06-02 13:37:24.870 837-908/? D/audio_hw_primary: out_set_parameters: enter: usecase(1: low-latency-playback) kvpairs: suspend_playback=false
06-02 13:37:24.870 837-908/? D/audio_hw_extn: audio_extn_fm_set_parameters: Enter
06-02 13:37:24.870 837-908/? D/audio_hw_hfp: hfp_set_parameters: enter
06-02 13:37:24.884 1790-2129/? E/CRASH: signal 6 (SIGABRT), code -6 (?), fault addr --------
    *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** ***
    Build type 'Release', Scripting Backend 'il2cpp', CPU 'armeabi-v7a'
    Build fingerprint: 'OnePlus/OnePlus7/OnePlus7:10/QKQ1.190716.003/1912141900:user/release-keys'
    Revision: '0'
    pid: 1790, tid: 2129, name: FMOD Studio upd  >>> <<<
        r0 00000000  r1 00000851  r2 00000006  r3 b7e21c48
        r4 b7e21c5c  r5 b7e21c40  r6 000006fe  r7 0000016b
        r8 b7e21c58  r9 b7e21c48  sl b7e21c78  fp b7e21c68
        ip 00000851  sp b7e21c18  lr e8ba030f  pc e8ba0322  cpsr b7e21928
    backtrace:
06-02 13:37:24.917 1790-2129/? E/CRASH: 	#00  pc 0002b322  /apex/com.android.runtime/lib/bionic/libc.so (abort+4294799525)
    	#01  pc 00000143  /system/lib/libstdc++.so (__cxa_pure_virtual+4294963210)
    	#02  pc 00026b59  /data/app/com.-16no5PuPJcA_c7NaSncWUw==/lib/arm/libfmodstudioL.so
    	#03  pc 0003452f  /data/app/com.-16no5PuPJcA_c7NaSncWUw==/lib/arm/libfmodstudioL.so
    	#04  pc 0003576b  /data/app/com.-16no5PuPJcA_c7NaSncWUw==/lib/arm/libfmodstudioL.so
    	#05  pc 000475af  /data/app/com.-16no5PuPJcA_c7NaSncWUw==/lib/arm/libfmodstudioL.so
    	#06  pc 0004a3d5  /data/app/com.-16no5PuPJcA_c7NaSncWUw==/lib/arm/libfmodstudioL.so
    	#07  pc 00053f15  /data/app/com.-16no5PuPJcA_c7NaSncWUw==/lib/arm/libfmodstudioL.so
    	#08  pc 000e2ea7  /data/app/com.16no5PuPJcA_c7NaSncWUw==/lib/arm/libfmodstudioL.so
    	#09  pc 000e4117  /data/app/com.-16no5PuPJcA_c7NaSncWUw==/lib/arm/libfmodstudioL.so
    	#10  pc 001130ef  /data/app/com.-16no5PuPJcA_c7NaSncWUw==/lib/arm/libfmodstudioL.so
    	#11  pc 00113a41  /data/app/com.-16no5PuPJcA_c7NaSncWUw==/lib/arm/libfmodstudioL.so
    	#12  pc 00073451  /apex/com.android.runtime/lib/bionic/libc.so
    	#13  pc 0002c7c9  /apex/com.android.runtime/lib/bionic/libc.so
06-02 13:37:24.918 1790-2129/? E/CRASH: memory near r3:
        b7e21c28 00000000 00000000 00000000 00000000  ................
        b7e21c38 ffffffff 00000000 ffffffdf ffffffff  ................
        b7e21c48 00000000 00000000 ffffffff 000006fe  ................
        b7e21c58 000028c4 00000000 00000000 00000000  .(..............
        b7e21c68 00000000 00000000 00000000 00000000  ................
        b7e21c78 00000000 00000000 00000000 00000000  ................
        b7e21c88 00000000 00000000 00000000 00000000  ................
        b7e21c98 00000000 00000000 00000000 00000000  ................
        b7e21ca8 00000000 00000000 00000000 00000000  ................
        b7e21cb8 00000000 00000000 00000000 00000000  ................
        b7e21cc8 473b8000 00000000 00000000 00000000  ..;G............
        b7e21cd8 00000000 b571e908 b7e21d0c 00000000  ......q.........
        b7e21ce8 b7e21d20 00000000 00000003 b7e21d58   ...........X...
06-02 13:37:24.919 1790-2129/? E/CRASH:     b7e21cf8 00000000 e5d11147 b7e21d20 a71a7b5b  ....G... ...[{..
        b7e21d08 a7521c78 a1b1f308 00000000 a1b1f308  x.R.............
        b7e21d18 a1b1f308 00000000 b7e21d40 a71b5533  ........@...3U..
    memory near r4:
        b7e21c3c 00000000 ffffffdf ffffffff 00000000  ................
        b7e21c4c 00000000 ffffffff 000006fe 000028c4  .............(..
        b7e21c5c 00000000 00000000 00000000 00000000  ................
        b7e21c6c 00000000 00000000 00000000 00000000  ................
        b7e21c7c 00000000 00000000 00000000 00000000  ................
        b7e21c8c 00000000 00000000 00000000 00000000  ................
        b7e21c9c 00000000 00000000 00000000 00000000  ................
        b7e21cac 00000000 00000000 00000000 00000000  ................
        b7e21cbc 00000000 00000000 00000000 473b8000  ..............;G
        b7e21ccc 00000000 00000000 00000000 00000000  ................
        b7e21cdc b571e908 b7e21d0c 00000000 b7e21d20  ..q......... ...
06-02 13:37:24.920 1790-2129/? E/CRASH:     b7e21cec 00000000 00000003 b7e21d58 00000000  ........X.......
        b7e21cfc e5d11147 b7e21d20 a71a7b5b a7521c78  G... ...[{..x.R.
        b7e21d0c a1b1f308 00000000 a1b1f308 a1b1f308  ................
        b7e21d1c 00000000 b7e21d40 a71b5533 00000000  ....@...3U......
        b7e21d2c 048dba80 00000000 a1b1f308 00000000  ................
    memory near r5:
        b7e21c20 b7e21ca8 b7e21cb8 00000000 00000000  ................
        b7e21c30 00000000 00000000 ffffffff 00000000  ................
        b7e21c40 ffffffdf ffffffff 00000000 00000000  ................
        b7e21c50 ffffffff 000006fe 000028c4 00000000  .........(......
        b7e21c60 00000000 00000000 00000000 00000000  ................
        b7e21c70 00000000 00000000 00000000 00000000  ................
        b7e21c80 00000000 00000000 00000000 00000000  ................
        b7e21c90 00000000 00000000 00000000 00000000  ................
        b7e21ca0 00000000 00000000 00000000 00000000  ................
06-02 13:37:24.921 1790-2129/? E/CRASH:     b7e21cb0 00000000 00000000 00000000 00000000  ................
        b7e21cc0 00000000 00000000 473b8000 00000000  ..........;G....
        b7e21cd0 00000000 00000000 00000000 b571e908  ..............q.
        b7e21ce0 b7e21d0c 00000000 b7e21d20 00000000  ........ .......
        b7e21cf0 00000003 b7e21d58 00000000 e5d11147  ....X.......G...
        b7e21d00 b7e21d20 a71a7b5b a7521c78 a1b1f308   ...[{..x.R.....
        b7e21d10 00000000 a1b1f308 a1b1f308 00000000  ................
    memory near r8:
        b7e21c38 ffffffff 00000000 ffffffdf ffffffff  ................
        b7e21c48 00000000 00000000 ffffffff 000006fe  ................
        b7e21c58 000028c4 00000000 00000000 00000000  .(..............
        b7e21c68 00000000 00000000 00000000 00000000  ................
        b7e21c78 00000000 00000000 00000000 00000000  ................
        b7e21c88 00000000 00000000 00000000 00000000  ................
        b7e21c98 00000000 00000000 00000000 00000000  ................
06-02 13:37:24.922 1790-2129/? E/CRASH:     b7e21ca8 00000000 00000000 00000000 00000000  ................
        b7e21cb8 00000000 00000000 00000000 00000000  ................
        b7e21cc8 473b8000 00000000 00000000 00000000  ..;G............
        b7e21cd8 00000000 b571e908 b7e21d0c 00000000  ......q.........
        b7e21ce8 b7e21d20 00000000 00000003 b7e21d58   ...........X...
        b7e21cf8 00000000 e5d11147 b7e21d20 a71a7b5b  ....G... ...[{..
        b7e21d08 a7521c78 a1b1f308 00000000 a1b1f308  x.R.............
        b7e21d18 a1b1f308 00000000 b7e21d40 a71b5533  ........@...3U..
        b7e21d28 00000000 048dba80 00000000 a1b1f308  ................
    memory near r9:
        b7e21c28 00000000 00000000 00000000 00000000  ................
        b7e21c38 ffffffff 00000000 ffffffdf ffffffff  ................
        b7e21c48 00000000 00000000 ffffffff 000006fe  ................
        b7e21c58 000028c4 00000000 00000000 00000000  .(..............
06-02 13:37:24.923 1790-2129/? E/CRASH:     b7e21c68 00000000 00000000 00000000 00000000  ................
        b7e21c78 00000000 00000000 00000000 00000000  ................
        b7e21c88 00000000 00000000 00000000 00000000  ................
        b7e21c98 00000000 00000000 00000000 00000000  ................
        b7e21ca8 00000000 00000000 00000000 00000000  ................
        b7e21cb8 00000000 00000000 00000000 00000000  ................
        b7e21cc8 473b8000 00000000 00000000 00000000  ..;G............
        b7e21cd8 00000000 b571e908 b7e21d0c 00000000  ......q.........
        b7e21ce8 b7e21d20 00000000 00000003 b7e21d58   ...........X...
        b7e21cf8 00000000 e5d11147 b7e21d20 a71a7b5b  ....G... ...[{..
        b7e21d08 a7521c78 a1b1f308 00000000 a1b1f308  x.R.............
        b7e21d18 a1b1f308 00000000 b7e21d40 a71b5533  ........@...3U..
    memory near sl:
        b7e21c58 000028c4 00000000 00000000 00000000  .(..............
        b7e21c68 00000000 00000000 00000000 00000000  ................
        b7e21c78 00000000 00000000 00000000 00000000  ................
06-02 13:37:24.924 1790-2129/? E/CRASH:     b7e21c88 00000000 00000000 00000000 00000000  ................
        b7e21c98 00000000 00000000 00000000 00000000  ................
        b7e21ca8 00000000 00000000 00000000 00000000  ................
        b7e21cb8 00000000 00000000 00000000 00000000  ................
        b7e21cc8 473b8000 00000000 00000000 00000000  ..;G............
        b7e21cd8 00000000 b571e908 b7e21d0c 00000000  ......q.........
        b7e21ce8 b7e21d20 00000000 00000003 b7e21d58   ...........X...
        b7e21cf8 00000000 e5d11147 b7e21d20 a71a7b5b  ....G... ...[{..
        b7e21d08 a7521c78 a1b1f308 00000000 a1b1f308  x.R.............
        b7e21d18 a1b1f308 00000000 b7e21d40 a71b5533  ........@...3U..
        b7e21d28 00000000 048dba80 00000000 a1b1f308  ................
        b7e21d38 00000000 a1b1f3a8 b7e21db8 a71b676f  ............og..
        b7e21d48 a8216c30 00000011 b7e21d80 b7e21da8  0l!.............
    memory near fp:
        b7e21c48 00000000 00000000 ffffffff 000006fe  ................
        b7e21c58 000028c4 00000000 00000000 00000000  .(..............
06-02 13:37:24.925 1790-2129/? E/CRASH:     b7e21c68 00000000 00000000 00000000 00000000  ................
        b7e21c78 00000000 00000000 00000000 00000000  ................
        b7e21c88 00000000 00000000 00000000 00000000  ................
        b7e21c98 00000000 00000000 00000000 00000000  ................
        b7e21ca8 00000000 00000000 00000000 00000000  ................
        b7e21cb8 00000000 00000000 00000000 00000000  ................
        b7e21cc8 473b8000 00000000 00000000 00000000  ..;G............
        b7e21cd8 00000000 b571e908 b7e21d0c 00000000  ......q.........
        b7e21ce8 b7e21d20 00000000 00000003 b7e21d58   ...........X...
        b7e21cf8 00000000 e5d11147 b7e21d20 a71a7b5b  ....G... ...[{..
        b7e21d08 a7521c78 a1b1f308 00000000 a1b1f308  x.R.............
        b7e21d18 a1b1f308 00000000 b7e21d40 a71b5533  ........@...3U..
        b7e21d28 00000000 048dba80 00000000 a1b1f308  ................
        b7e21d38 00000000 a1b1f3a8 b7e21db8 a71b676f  ............og..
    memory near sp:
06-02 13:37:24.926 1790-2129/? E/CRASH:     b7e21bf8 00002780 0db2e95a b571e908 b7e21c40  .'..Z.....q.@...
        b7e21c08 b571e908 b7e21c40 000006fe b7e21d20  ..q.@....... ...
        b7e21c18 b7e21c88 b7e21c98 b7e21ca8 b7e21cb8  ................
        b7e21c28 00000000 00000000 00000000 00000000  ................
        b7e21c38 ffffffff 00000000 ffffffdf ffffffff  ................
        b7e21c48 00000000 00000000 ffffffff 000006fe  ................
        b7e21c58 000028c4 00000000 00000000 00000000  .(..............
        b7e21c68 00000000 00000000 00000000 00000000  ................
        b7e21c78 00000000 00000000 00000000 00000000  ................
        b7e21c88 00000000 00000000 00000000 00000000  ................
        b7e21c98 00000000 00000000 00000000 00000000  ................
        b7e21ca8 00000000 00000000 00000000 00000000  ................
        b7e21cb8 00000000 00000000 00000000 00000000  ................
        b7e21cc8 473b8000 00000000 00000000 00000000  ..;G............
06-02 13:37:24.927 1790-2129/? E/CRASH:     b7e21cd8 00000000 b571e908 b7e21d0c 00000000  ......q.........
        b7e21ce8 b7e21d20 00000000 00000003 b7e21d58   ...........X...
    code around pc:
        e8ba0300 f9088acf e9cd8acf f04f060e 2100eada  ..........O....!
        e8ba0310 60212206 90104639 464b4630 176bf240  ."!`9F..0FKF@.k.
        e8ba0320 a904df00 460a4821 f9604478 f9420acd  ....!H.FxD`...B.
        e8ba0330 68000acd 20066010 f04f2200 2002ecf2  ...h.`. ."O.... 
        e8ba0340 22004629 ec4cf04f f04f2014 4605ec5a  )F."O.L.. O.Z..F
        e8ba0350 f04f20e0 4606ec56 464c9803 8acff90a  . O.V..F..LF....
        e8ba0360 8acff900 f90b9802 f9008acf 98018acf  ................
        e8ba0370 8acff908 8acff900 f9009800 20148acf  ............... 
        e8ba0380 8ac0f904 30fff04f 050ee9cd ea98f04f  ....O..0....O...
        e8ba0390 22062100 46316021 46289010 f240464b  .!."!`1F..(FKF@.
        e8ba03a0 df00176b f04f207f bf00ecc4 fffce68c  k.... O.........
        e8ba03b0 f04e2300 d4d4bd13 4c03b510 f8d4447c  .#N........L|D..
        e8ba03c0 e8bdc000 47604010 00051e00 4601460a  .....@`G.....F.F
        e8ba03d0 0063f06f f04e2300 d4d4bd07 b082b510  o.c..#N.........
        e8ba03e0 4479490a 6821680c 46699101 ecb8f04f  .IyD.h!h..iFO...
        e8ba03f0 28009900 f04fbf08 980131ff 1a106822  ...(..O..1.."h..
    code around lr:
        e8ba02ec 8acff900 f9042014 f04f8ac0 f90a30ff  ..... ....O..0..
        e8ba02fc f90b8acf f9088acf e9cd8acf f04f060e  ..............O.
        e8ba030c 2100eada 60212206 90104639 464b4630  ...!."!`9F..0FKF
        e8ba031c 176bf240 a904df00 460a4821 f9604478  @.k.....!H.FxD`.
        e8ba032c f9420acd 68000acd 20066010 f04f2200  ..B....h.`. ."O.
        e8ba033c 2002ecf2 22004629 ec4cf04f f04f2014  ... )F."O.L.. O.
        e8ba034c 4605ec5a f04f20e0 4606ec56 464c9803  Z..F. O.V..F..LF
        e8ba035c 8acff90a 8acff900 f90b9802 f9008acf  ................
        e8ba036c 98018acf 8acff908 8acff900 f9009800  ................
        e8ba037c 20148acf 8ac0f904 30fff04f 050ee9cd  ... ....O..0....
        e8ba038c ea98f04f 22062100 46316021 46289010  O....!."!`1F..(F
        e8ba039c f240464b df00176b f04f207f bf00ecc4  KF@.k.... O.....
        e8ba03ac fffce68c f04e2300 d4d4bd13 4c03b510  .....#N........L
        e8ba03bc f8d4447c e8bdc000 47604010 00051e00  |D.......@`G....
        e8ba03cc 4601460a 0063f06f f04e2300 d4d4bd07  .F.Fo.c..#N.....
        e8ba03dc b082b510 4479490a 6821680c 46699101  .....IyD.h!h..iF
06-02 13:37:24.936 1790-1912/? E/CRASH: other thread is trapped; signum = 6
06-02 13:37:24.936 1790-1912/? E/MessageQueue: IdleHandler threw exception
    java.lang.Error: signal 6 (SIGABRT), code -6 (?), fault addr --------
    Build fingerprint: 'OnePlus/OnePlus7/OnePlus7:10/QKQ1.190716.003/1912141900:user/release-keys'
    Revision: '0'
    pid: 1790, tid: 2129, name: FMOD Studio upd  >>>  <<<
        r0 00000000  r1 00000851  r2 00000006  r3 b7e21c48
        r4 b7e21c5c  r5 b7e21c40  r6 000006fe  r7 0000016b
        r8 b7e21c58  r9 b7e21c48  sl b7e21c78  fp b7e21c68
        ip 00000851  sp b7e21c18  lr e8ba030f  pc e8ba0322  cpsr b7e21928
    
        at libc.abort(abort)
        at libstdc++.__cxa_pure_virtual(__cxa_pure_virtual)
        at libfmodstudioL.00026b59(Native Method)
        at libfmodstudioL.0003452f(Native Method)
        at libfmodstudioL.0003576b(Native Method)
        at libfmodstudioL.000475af(Native Method)
        at libfmodstudioL.0004a3d5(Native Method)
        at libfmodstudioL.00053f15(Native Method)
        at libfmodstudioL.000e2ea7(Native Method)
        at libfmodstudioL.000e4117(Native Method)
        at libfmodstudioL.001130ef(Native Method)
        at libfmodstudioL.00113a41(Native Method)
        at libc.00073451(Native Method)
        at libc.0002c7c9(Native Method)
AsyncManager::asyncThreadLoop            : System::update returned error 28.
06-02 13:38:36.009 12079 12242 E fmod    : assert                                   : assertion: 'mRefCount >= 0' failed
06-02 13:38:36.009 12079 12242 E fmod    : AsyncManager::asyncThreadLoop            : System::update returned error 28.
06-02 13:38:36.042 12079 12242 E fmod    : assert                                   : assertion: 'mRefCount >= 0' failed
06-02 13:38:36.042 12079 12242 E fmod    : AsyncManager::asyncThreadLoop            : System::update returned error 28.
--------- beginning of crash
06-02 13:38:36.050 12079 12242 F libc    : Pure virtual function called. Are you calling virtual methods from a destructor?
06-02 13:38:36.052  1878  2090 I AppManager: removeProcessDependency pid:12079
06-02 13:38:36.091 12079 12242 E CRASH   : signal 6 (SIGABRT), code -6 (?), fault addr --------
06-02 13:38:36.091 12079 12242 E CRASH   : *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** ***
06-02 13:38:36.091 12079 12242 E CRASH   : Build type 'Release', Scripting Backend 'il2cpp', CPU 'arm64-v8a'
06-02 13:38:36.091 12079 12242 E CRASH   : Build fingerprint: 'HONOR/FRD-L09/HWFRD:7.0/HUAWEIFRD-L09/C432B416:user/release-keys'
06-02 13:38:36.091 12079 12242 E CRASH   : Revision: '0'
06-02 13:38:36.091 12079 12242 E CRASH   : pid: 12079, tid: 12242, name: FMOD Studio upd  >>> <<<
06-02 13:38:36.091 12079 12242 E CRASH   :     x0   0000000000000000  x1   0000000000002fd2  x2   0000000000000006  x3   0000000000000008
06-02 13:38:36.091 12079 12242 E CRASH   :     x4   000000733fffbf00  x5   0000000000000000  x6   8000000000808080  x7   0000000000000008
06-02 13:38:36.092 12079 12242 E CRASH   :     x8   0000000000000083  x9   ffffffffffffffdf  x10  0000000000000000  x11  0000000000000001
06-02 13:38:36.092 12079 12242 E CRASH   :     x12  ffffffffffffffff  x13  0000000000000000  x14  0000000000000000  x15  0000bf49b3ecf178
06-02 13:38:36.092 12079 12242 E CRASH   :     x16  00000073c46e2ec8  x17  00000073c468bc38  x18  0000007377f5cb80  x19  000000737aba24f8
06-02 13:38:36.092 12079 12242 E CRASH   :     x20  0000000000000006  x21  000000737aba2450  x22  000000000000000b  x23  0000000000000003
06-02 13:38:36.092 12079 12242 E CRASH   :     x24  0000007341072908  x25  0000000000000000  x26  ba24a4e31f61cbe0  x27  0000000000000000
06-02 13:38:36.092 12079 12242 E CRASH   :     x28  0000007377f35288  x29  000000737aba1bd0  x30  00000073c46890e0
06-02 13:38:36.092 12079 12242 E CRASH   :     sp   000000737aba1bb0  pc   00000073c468bc40  pstate 0000000060000000
06-02 13:38:36.092 12079 12242 E CRASH   : 
06-02 13:38:36.092 12079 12242 E CRASH   : backtrace:
06-02 13:38:36.294 12079 12242 E CRASH   :  #00  pc 00000000000004dc  [vdso] ()
06-02 13:38:36.294 12079 12242 E CRASH   :  #01  pc 000000000006bc3c  /system/lib64/libc.so (tgkill+4)
06-02 13:38:36.294 12079 12242 E CRASH   :  #02  pc 00000000000690dc  /system/lib64/libc.so (pthread_kill+64)
06-02 13:38:36.294 12079 12242 E CRASH   :  #03  pc 0000000000023e68  /system/lib64/libc.so (raise+24)
06-02 13:38:36.294 12079 12242 E CRASH   :  #04  pc 000000000001c8ec  /system/lib64/libc.so (abort+52)
06-02 13:38:36.294 12079 12242 E CRASH   :  #05  pc 00000000000022ec  /system/lib64/libstdc++.so ()
06-02 13:38:36.294 12079 12242 E CRASH   :  #06  pc 00000000000013a8  /system/lib64/libstdc++.so (__cxa_pure_virtual+16)
06-02 13:38:36.294 12079 12242 E CRASH   :  #07  pc 000000000003d9ec  /data/app/2/lib/arm64/libfmodstudioL.so ()
06-02 13:38:36.294 12079 12242 E CRASH   :  #08  pc 0000000000051068  /data/app/-2/lib/arm64/libfmodstudioL.so ()
06-02 13:38:36.294 12079 12242 E CRASH   :  #09  pc 00000000000526e4  /data/app/-2/lib/arm64/libfmodstudioL.so ()
06-02 13:38:36.294 12079 12242 E CRASH   :  #10  pc 000000000006b6b8  /data/app/-2/lib/arm64/libfmodstudioL.so ()
06-02 13:38:36.294 12079 12242 E CRASH   :  #11  pc 000000000006f594  /data/app/-2/lib/arm64/libfmodstudioL.so ()
06-02 13:38:36.294 12079 12242 E CRASH   :  #12  pc 000000000007cd84  /data/app/-2/lib/arm64/libfmodstudioL.so ()
06-02 13:38:36.294 12079 12242 E CRASH   :  #13  pc 0000000000143cf0  /data/app/-2/lib/arm64/libfmodstudioL.so ()
06-02 13:38:36.294 12079 12242 E CRASH   :  #14  pc 000000000014541c  /data/app//lib/arm64/libfmodstudioL.so ()
06-02 13:38:36.294 12079 12242 E CRASH   :  #15  pc 0000000000181c08  /data/app/-2/lib/arm64/libfmodstudioL.so ()
06-02 13:38:36.294 12079 12242 E CRASH   :  #16  pc 00000000001828a4  /data/app/-2/lib/arm64/libfmodstudioL.so ()
06-02 13:38:36.294 12079 12242 E CRASH   :  #17  pc 00000000000688e4  /system/lib64/libc.so (_ZL15__pthread_startPv+196)
06-02 13:38:36.294 12079 12242 E CRASH   :  #18  pc 000000000001db00  /system/lib64/libc.so (__start_thread+16)
06-02 13:38:36.309 12079 12141 E CRASH   : other thread is trapped; signum = 6
06-02 13:38:36.310 12079 12141 E MessageQueue: IdleHandler threw exception
06-02 13:38:36.310 12079 12141 E MessageQueue: java.lang.Error: signal 6 (SIGABRT), code -6 (?), fault addr --------
06-02 13:38:36.310 12079 12141 E MessageQueue: Build fingerprint: 'HONOR/FRD-L09/HWFRD:7.0/HUAWEIFRD-L09/C432B416:user/release-keys'
06-02 13:38:36.310 12079 12141 E MessageQueue: Revision: '0'
06-02 13:38:36.310 12079 12141 E MessageQueue: pid: 12079, tid: 12242, name: FMOD Studio upd  >>> <<<
06-02 13:38:36.310 12079 12141 E MessageQueue:     x0   0000000000000000  x1   0000000000002fd2  x2   0000000000000006  x3   0000000000000008
06-02 13:38:36.310 12079 12141 E MessageQueue:     x4   000000733fffbf00  x5   0000000000000000  x6   8000000000808080  x7   0000000000000008
06-02 13:38:36.310 12079 12141 E MessageQueue:     x8   0000000000000083  x9   ffffffffffffffdf  x10  0000000000000000  x11  0000000000000001
06-02 13:38:36.310 12079 12141 E MessageQueue:     x12  ffffffffffffffff  x13  0000000000000000  x14  0000000000000000  x15  0000bf49b3ecf178
06-02 13:38:36.310 12079 12141 E MessageQueue:     x16  00000073c46e2ec8  x17  00000073c468bc38  x18  0000007377f5cb80  x19  000000737aba24f8
06-02 13:38:36.310 12079 12141 E MessageQueue:     x20  0000000000000006  x21  000000737aba2450  x22  000000000000000b  x23  0000000000000003
06-02 13:38:36.310 12079 12141 E MessageQueue:     x24  0000007341072908  x25  0000000000000000  x26  ba24a4e31f61cbe0  x27  0000000000000000
06-02 13:38:36.310 12079 12141 E MessageQueue:     x28  0000007377f35288  x29  000000737aba1bd0  x30  00000073c46890e0
06-02 13:38:36.310 12079 12141 E MessageQueue:     sp   000000737aba1bb0  pc   00000073c468bc40  pstate 0000000060000000
06-02 13:38:36.310 12079 12141 E MessageQueue: 
06-02 13:38:36.310 12079 12141 E MessageQueue:  at [vdso].(:0)
06-02 13:38:36.310 12079 12141 E MessageQueue:  at libc.tgkill(tgkill:4)
06-02 13:38:36.310 12079 12141 E MessageQueue:  at libc.pthread_kill(pthread_kill:64)
06-02 13:38:36.310 12079 12141 E MessageQueue:  at libc.raise(raise:24)
06-02 13:38:36.310 12079 12141 E MessageQueue:  at libc.abort(abort:52)
06-02 13:38:36.310 12079 12141 E MessageQueue:  at libstdc++.(:0)
06-02 13:38:36.310 12079 12141 E MessageQueue:  at libstdc++.__cxa_pure_virtual(__cxa_pure_virtual:16)
06-02 13:38:36.310 12079 12141 E MessageQueue:  at libfmodstudioL.(:0)

Sorry for the messy copy paste with those logs and thank you for editing them. Is there something changed the way single shots are handled from 1.10 to 2.00.09? We did not touch the logic when we updated to the 2.00.09 because of the android 9 and 10 crashing issue. Seems to be the case that it tries to destroy something from the playback system and fails and causes the crash, maybe?

I hope you can advice us with this issue, we have major launch, with the project we have the issue with, coming up in short time and would need to find fix or work around to this crashing.

Hi Scourger,

Are you making any calls to FMOD_Studio_Bus_UnlockChannelGroup? The callstack seems to indicate that the event’s input bus is already released before the event stops and releases, and a call to unlockChannelGroup can potentially make that happen.

Hi Tristanji,

We will check if that is the case and will return to you with an answer as soon as we can

Hello again,

we checked our code and we don´t call the FMOD_Studio_Bus_UnlockChannelGroup anywhere.

Only places where we call the Bus in code are:

ERRCHECK (m_bus.stopAllEvents (FMOD.Studio.STOP_MODE.ALLOWFADEOUT));
ERRCHECK (m_bus.setPaused(_pause));
ERRCHECK (m_bus.setMute(_mute));

This is our code for handling the singleshots if you find something weird or broken from it:

static public void PlayOneShotWithParameter (string _event, Vector3 _position, string _parameter,float _value, float _volume=1.0f)
	{
		EventInstance eInstance;
		try
		{
			eInstance = RuntimeManager.CreateInstance(_event);
		}
		catch (Exception e)
		{
			Debug.LogError("Catched an exception when trying to play a sound event. Event is : " + _event + "Error : " + e);
			return;
		}
        SetParameter(eInstance,_parameter, _value);
        var attributes = RuntimeUtils.To3DAttributes (_position);
		ERRCHECK (eInstance.set3DAttributes (attributes));
		ERRCHECK (eInstance.setVolume (_volume));
		ERRCHECK (eInstance.start ());
		ERRCHECK (eInstance.release ());

I hope we can find the solution for the crash soon.

@tristanjl @mathew

Hi,

I have gathered some more information about the crashes we are experiencing. We are using the default Unity implementation that is provided where we simply create sound instances directly from code and release them when they are not used anymore. For oneshot events we use the code provided above.

During testing we found that if we don’t use any oneshot events, the game runs pretty well and without crashes. When we use the oneshots however, the game can crash in anything between 5 to 30 minutes time. We even tried using the default oneshot functions provided in the RuntimeManager.cs but the results are the same. We even limited the amount of oneshot events played from the code to a just a few per second, but the crashes still keep coming.

We have tried increasing the real and virtual channel counts, setting dsp buffers to different values but they have no effect. Finally we also tried changing settings inside FMOD Studio to see if they have any effect. We limited ALL events to have maximum of 1 instance and their stealing set to “Virtualize”. With these settings the game crashed after an hour of playing.

There is no signs that a certain event would be the cause but rather something random happening inside the system as the log we see in Xcode is always reporting the crash happening inside “Fmod Studio update thread”.

We were forced to upgrade our implementation from 1.10.X to 2.00.09 version because of a crash issue in the old version affecting Android 9 and 10 devices reported here:
Android crash with FMOD 2.0.0.7

Immediately after we updated we started noticing the crashes we are experiencing now. The single thing we modified from our end in this migration was changing the old parameterInstance code to work with the new eventInstance setParameter functions. Since this was the only thing changed by us, we tested the oneshot events without any parameters but they still produce the crash.

Do you have any idea what could be causing this? We have provided the best logs we can. What are these pure virtual functions that seem to be called around these crashes? Do you think something might have gone wrong when we have migrated from the old version to the new one? This is rather serious as going back to the old version would bring back the other crash issue, so we are quite eager to find the cause of these problems.

Here is some more logs @tristanjl and @mathew if they help you in anyway:

[LOG] SystemI::createSoundInternal : Create name=’’, mode=0x02000202
[LOG] SystemI::createSoundInternal : exinfo->cbsize = 224
[LOG] SystemI::createSoundInternal : exinfo->length = 9823584
[LOG] SystemI::createSoundInternal : exinfo->fileoffset = 384160
[LOG] SystemI::createSoundInternal : exinfo->numsubsounds = 1
[LOG] SystemI::createSoundInternal : exinfo->inclusionlist = 0x170fde724
[LOG] SystemI::createSoundInternal : exinfo->inclusionlistnum = 1
[LOG] SystemI::createSoundInternal : exinfo->suggestedsoundtype = 5
[LOG] SystemI::createSoundInternal : exinfo->useropen = 0x1017c460c
[LOG] SystemI::createSoundInternal : exinfo->userclose = 0x1017c46d8
[LOG] SystemI::createSoundInternal : exinfo->userread = 0x1017c4710
[LOG] SystemI::createSoundInternal : exinfo->userseek = 0x1017c47e0
[LOG] SystemI::createSoundInternal : exinfo->fileuserdata = 0x142fdafe8
[LOG] SystemI::createSoundInternal : exinfo->initialseekpostype = 1
[LOG] SystemI::DSPCodecPoolRegister : register codec pool for pool type 5
[LOG] SystemI::createSoundInternal : Sample 0/1: name=‘Unit_Var2’, format=2, channels=2, frequency=48000, lengthbytes=20288, lengthpcm=74662, pcmblocksize=0, loopstart=0, loopend=0, mode=0x00000000, channelmask=0x00000000, channelorder=0, peakvolume=0.510529.
[LOG] SystemI::createSoundInternal : Create name=’’, mode=0x02000202
[LOG] SystemI::createSoundInternal : exinfo->cbsize = 224
[LOG] SystemI::createSoundInternal : exinfo->length = 9823584
[LOG] SystemI::createSoundInternal : exinfo->fileoffset = 384160
[LOG] SystemI::createSoundInternal : exinfo->numsubsounds = 1
[LOG] SystemI::createSoundInternal : exinfo->inclusionlist = 0x170fde724
[LOG] SystemI::createSoundInternal : exinfo->inclusionlistnum = 1
[LOG] SystemI::createSoundInternal : exinfo->suggestedsoundtype = 5
[LOG] SystemI::createSoundInternal : exinfo->useropen = 0x1017c460c
[LOG] SystemI::createSoundInternal : exinfo->userclose = 0x1017c46d8
[LOG] SystemI::createSoundInternal : exinfo->userread = 0x1017c4710
[LOG] SystemI::createSoundInternal : exinfo->userseek = 0x1017c47e0
[LOG] SystemI::createSoundInternal : exinfo->fileuserdata = 0x142fdafe8
[LOG] SystemI::createSoundInternal : exinfo->initialseekpostype = 1
[LOG] SystemI::DSPCodecPoolRegister : register codec pool for pool type 5
[LOG] SystemI::createSoundInternal : Sample 0/1: name=‘Unit_Var1’, format=2, channels=2, frequency=48000, lengthbytes=19872, lengthpcm=73104, pcmblocksize=0, loopstart=0, loopend=0, mode=0x00000000, channelmask=0x00000000, channelorder=0, peakvolume=0.592010.

[WRN] PlaylistInstrumentInstance::startFullLengthHook : Attempting to schedule a sound in the past, this could cause inaccurate playback.

[ERR] assert : assertion: ‘mPlaybackSystem->destroyEventInstance(this) == FMOD_OK’ failed
[ERR] AsyncManager::asyncThreadLoop : System::update returned error 30.

And after this it will crash.

@mathew @tristanjl

Some more information about the issue, the call that seems to be causing the crash issue is: libc++abi.dylib: Pure virtual function called! no idea why or where this comes from but playing OneShots triggers this eventually.

Also with the latest fmod update, our Unitys seems to run out of memory after starting and stopping the game multiple times on one session and have to kill Unity to get the project running again.

Error log from the Unity memory issue:

SystemNotInitializedException: [FMOD] Initialization failed : FMOD.Studio.System.create : ERR_MEMORY : Not enough memory or resources.
FMODUnity.RuntimeManager.get_Instance () (at Assets/Plugins/FMOD/src/Runtime/RuntimeManager.cs:114)
FMODUnity.RuntimeManager.get_StudioSystem () (at Assets/Plugins/FMOD/src/Runtime/RuntimeManager.cs:128)
FMODUnity.RuntimeManager.AddListener (FMODUnity.StudioListener listener) (at Assets/Plugins/FMOD/src/Runtime/RuntimeManager.cs:343)
FMODUnity.StudioListener.OnEnable () (at Assets/Plugins/FMOD/src/Runtime/StudioListener.cs:18)
UnityEngine.GameObject:AddComponent()
SoundS:Initialize() (at Assets/Framework/Core/Systems/SoundS.cs:37)
.Game:Initialize(IScene) (at /Game.cs:93)
.Game:Initialize(IScene) (at /Game.cs:386)
Main:Update() (at Assets/Main.cs:67)

Here is link to screenshot of the Runtime error from Windows: https://ibb.co/mNtbHvz

The crash is happening on every platform that we use: Unity Win, OSX, Android and IOS, Android and IOS

We would really appreciate any help or ideas how to solve this problem!

We have decided to downgrade to version 1.10.20 because of this major crash issue and take our chances with only Android 9 and 10 crashing randomly on our project rather than all platforms crashing or freezing constantly

Hi scourger,

Thanks for all the extra information. We are still looking into the cause - we will let you know as soon as we narrow it down further.

Hi sourger,

We haven’t been able to reproduce the issue, but we have identified a potential cause. We will have a fix to address the issue we’ve discovered included our next release of FMOD which we are hoping will also address this issue.

The problem we’ve found primarily comes up when loading events that reference busses when the banks that those busses are contained in are not loaded, but it’s also possible that there are other causes we haven’t identified. We’ve only been able to reproduce a memory leak in how we were handling the error case, but potentially the crash you were encountering could arise from this issue.

Hope this information is helpful.

Hi @tristanjl,

Thank you for the update! We are really looking for possible fix in the future, until then, we just have to live with the older version of FMOD and take the hit with the crash on Android 9 and 10.

Hopefully you have the new version with possible fix on the pipeline.

Hello again @tristanjl and @mathew, sorry to bother you with this issue but do you guys have any information about the possible fix or version where the possible fix might be coming out? We would really love to update to the new version of the Fmod.

Thank you in advance!

Hi scourger,

The potential fix is in the versions just released today (2.00.10/2.01.02). If you could let us know either way if that resolves the issue, that would be really helpful.