I am experimenting with pjsip/pjsua on an ARM9 platform and am getting segmentation fault whenever I use resampling (eg. when running "resampleplay" in the "samples" directory). Everything else seems to work fine (eg. "playfile" etc.). I'm using alsa-lib-1.0.24.1 and building pjsip using the flags export ALSALIB="${HOME}/alsa-lib-1.0.24.1" export CFLAGS="-mcpu=arm926ej-s -msoft-float -fomit-frame-pointer -pipe -O2 -I${ALSALIB}/include" export CPPFLAGS="-mcpu=arm926ej-s -msoft-float -fomit-frame-pointer -pipe -O2 -I${ALSALIB}/include" export LDFLAGS="-L${ALSALIB}/src/.libs/" Running resampleplay with loglevel 6 gives the following output (sorry for massive log) #./resampleplay speech.wav 02:00:31.344 critsec Mutex created 02:00:31.347 critsec Mutex: thread thr0x4001f390 is waiting (mutex owner=) 02:00:31.348 critsec Mutex acquired by thread thr0x4001f390 (level=1) 02:00:31.348 critsec Mutex released by thread thr0x4001f390 (level=0) 02:00:31.348 critsec Mutex: thread thr0x4001f390 is waiting (mutex owner=) 02:00:31.348 critsec Mutex acquired by thread thr0x4001f390 (level=1) 02:00:31.349 critsec Mutex released by thread thr0x4001f390 (level=0) 02:00:31.349 os_core_unix.c pjlib 1.10.0 for POSIX initialized 02:00:31.349 cachingpool pool created, size=256 02:00:31.350 cachingpool Mutex created 02:00:31.350 cachingpool Mutex: thread thr0x4001f390 is waiting (mutex owner=) 02:00:31.350 cachingpool Mutex acquired by thread thr0x4001f390 (level=1) 02:00:31.350 med-ept pool created, size=512 02:00:31.351 cachingpool Mutex released by thread thr0x4001f390 (level=0) 02:00:31.351 med-ept 2300 bytes requested, resizing pool by 2560 bytes (used=100, cap=512) 02:00:31.351 med-ept create_block(sz=2560), cur.cap=512, cur.used=100 02:00:31.351 med-ept block created, buffer=0x6a244-0x6ac30 02:00:31.351 cachingpool Mutex: thread thr0x4001f390 is waiting (mutex owner=) 02:00:31.351 cachingpool Mutex acquired by thread thr0x4001f390 (level=1) 02:00:31.352 alsa_aud_base pool created, size=256 02:00:31.352 cachingpool Mutex released by thread thr0x4001f390 (level=0) 02:00:31.352 alsa_aud_base 3480 bytes requested, resizing pool by 3584 bytes (used=100, cap=256) 02:00:31.352 alsa_aud_base create_block(sz=3584), cur.cap=256, cur.used=100 02:00:31.353 alsa_aud_base block created, buffer=0x6ad54-0x6bb40 02:00:31.353 cachingpool Mutex: thread thr0x4001f390 is waiting (mutex owner=) 02:00:31.353 cachingpool Mutex acquired by thread thr0x4001f390 (level=1) 02:00:31.353 alsa_aud pool created, size=256 02:00:31.353 cachingpool Mutex released by thread thr0x4001f390 (level=0) 02:00:31.787 alsa_dev.c Added sound device default:CARD=EVM 02:00:31.788 alsa_dev.c ALSA driver found 1 devices 02:00:31.788 alsa_dev.c ALSA initialized 02:00:31.789 cachingpool Mutex: thread thr0x4001f390 is waiting (mutex owner=) 02:00:31.789 cachingpool Mutex acquired by thread thr0x4001f390 (level=1) 02:00:31.789 portaudio pool created, size=256 02:00:31.789 cachingpool Mutex released by thread thr0x4001f390 (level=0) 02:00:31.947 pa_dev.c PortAudio sound library initialized, status=0 02:00:31.947 pa_dev.c PortAudio host api count=2 02:00:31.947 pa_dev.c Sound device count=3 02:00:31.947 cachingpool Mutex: thread thr0x4001f390 is waiting (mutex owner=) 02:00:31.948 cachingpool Mutex acquired by thread thr0x4001f390 (level=1) 02:00:31.948 codec-mgr pool created, size=256 02:00:31.949 cachingpool Mutex released by thread thr0x4001f390 (level=0) 02:00:31.950 codec-mgr Mutex created 02:00:31.950 med-ept 1396 bytes requested, resizing pool by 1536 bytes (used=2420, cap=3072) 02:00:31.950 med-ept create_block(sz=1536), cur.cap=3072, cur.used=2420 02:00:31.950 med-ept block created, buffer=0x7a2e4-0x7a8d0 02:00:31.950 mtx0x7a858 Mutex created 02:00:31.951 mtx0x6a08c Mutex created 02:00:31.951 mtx0x6a1a4 Mutex created 02:00:31.951 med-ept 184 bytes requested, resizing pool by 512 bytes (used=4492, cap=4608) 02:00:31.951 med-ept create_block(sz=512), cur.cap=4608, cur.used=4492 02:00:31.951 med-ept block created, buffer=0x6c40c-0x6c5f8 02:00:31.951 mtx0x6c4c4 Mutex created 02:00:31.952 med-ept 96 bytes requested, resizing pool by 512 bytes (used=4976, cap=5120) 02:00:31.952 med-ept create_block(sz=512), cur.cap=5120, cur.used=4976 02:00:31.952 med-ept block created, buffer=0x7b6e4-0x7b8d0 02:00:31.952 mtx0x7b6e4 Mutex created 02:00:31.952 mtx0x7b7fc Mutex created 02:00:31.952 med-ept 184 bytes requested, resizing pool by 512 bytes (used=5372, cap=5632) 02:00:31.953 med-ept create_block(sz=512), cur.cap=5632, cur.used=5372 02:00:31.953 med-ept block created, buffer=0x7bec4-0x7c0b0 02:00:31.953 mtx0x7bf7c Mutex created 02:00:31.953 mtx0x7b85c Mutex created 02:00:31.953 med-ept 184 bytes requested, resizing pool by 512 bytes (used=5952, cap=6144) 02:00:31.953 med-ept create_block(sz=512), cur.cap=6144, cur.used=5952 02:00:31.953 med-ept block created, buffer=0x7a8ec-0x7aad8 02:00:31.954 mtx0x7a9a4 Mutex created 02:00:31.954 med-ept 96 bytes requested, resizing pool by 512 bytes (used=6436, cap=6656) 02:00:31.954 med-ept create_block(sz=512), cur.cap=6656, cur.used=6436 02:00:31.954 med-ept block created, buffer=0x7aaf4-0x7ace0 02:00:31.954 mtx0x7aaf4 Mutex created 02:00:31.954 mtx0x7ac0c Mutex created 02:00:31.955 med-ept 184 bytes requested, resizing pool by 512 bytes (used=6832, cap=7168) 02:00:31.955 med-ept create_block(sz=512), cur.cap=7168, cur.used=6832 02:00:31.955 med-ept block created, buffer=0x7acfc-0x7aee8 02:00:31.955 mtx0x7adb4 Mutex created 02:00:31.955 mtx0x7ac6c Mutex created 02:00:31.955 med-ept 184 bytes requested, resizing pool by 512 bytes (used=7412, cap=7680) 02:00:31.956 med-ept create_block(sz=512), cur.cap=7680, cur.used=7412 02:00:31.956 med-ept block created, buffer=0x7db1c-0x7dd08 02:00:31.956 mtx0x7dbd4 Mutex created 02:00:31.956 med-ept 96 bytes requested, resizing pool by 512 bytes (used=7896, cap=8192) 02:00:31.956 med-ept create_block(sz=512), cur.cap=8192, cur.used=7896 02:00:31.956 med-ept block created, buffer=0x7dd24-0x7df10 02:00:31.957 mtx0x7dd24 Mutex created 02:00:31.957 mtx0x7de3c Mutex created 02:00:31.957 med-ept 184 bytes requested, resizing pool by 512 bytes (used=8292, cap=8704) 02:00:31.957 med-ept create_block(sz=512), cur.cap=8704, cur.used=8292 02:00:31.957 med-ept block created, buffer=0x7df2c-0x7e118 02:00:31.957 mtx0x7dfe4 Mutex created 02:00:31.958 mtx0x7de9c Mutex created 02:00:31.958 med-ept 184 bytes requested, resizing pool by 512 bytes (used=8872, cap=9216) 02:00:31.958 med-ept create_block(sz=512), cur.cap=9216, cur.used=8872 02:00:31.958 med-ept block created, buffer=0x7e134-0x7e320 02:00:31.959 mtx0x7e1ec Mutex created 02:00:31.959 med-ept 96 bytes requested, resizing pool by 512 bytes (used=9356, cap=9728) 02:00:32.290 med-ept create_block(sz=512), cur.cap=9728, cur.used=9356 02:00:32.290 med-ept block created, buffer=0x7e33c-0x7e528 02:00:32.290 mtx0x7e33c Mutex created 02:00:32.290 mtx0x7e454 Mutex created 02:00:32.290 med-ept 184 bytes requested, resizing pool by 512 bytes (used=9752, cap=10240) 02:00:32.291 med-ept create_block(sz=512), cur.cap=10240, cur.used=9752 02:00:32.291 med-ept block created, buffer=0x7e544-0x7e730 02:00:32.291 mtx0x7e5fc Mutex created 02:00:32.291 mtx0x7e4b4 Mutex created 02:00:32.291 med-ept 184 bytes requested, resizing pool by 512 bytes (used=10332, cap=10752) 02:00:32.292 med-ept create_block(sz=512), cur.cap=10752, cur.used=10332 02:00:32.292 med-ept block created, buffer=0x7e74c-0x7e938 02:00:32.292 mtx0x7e804 Mutex created 02:00:32.292 med-ept 96 bytes requested, resizing pool by 512 bytes (used=10816, cap=11264) 02:00:32.292 med-ept create_block(sz=512), cur.cap=11264, cur.used=10816 02:00:32.292 med-ept block created, buffer=0x7e954-0x7eb40 02:00:32.293 mtx0x7e954 Mutex created 02:00:32.293 mtx0x7ea6c Mutex created 02:00:32.293 med-ept 184 bytes requested, resizing pool by 512 bytes (used=11212, cap=11776) 02:00:32.293 med-ept create_block(sz=512), cur.cap=11776, cur.used=11212 02:00:32.293 med-ept block created, buffer=0x7eb5c-0x7ed48 02:00:32.293 mtx0x7ec14 Mutex created 02:00:32.293 mtx0x7eacc Mutex created 02:00:32.294 med-ept 184 bytes requested, resizing pool by 512 bytes (used=11792, cap=12288) 02:00:32.294 med-ept create_block(sz=512), cur.cap=12288, cur.used=11792 02:00:32.294 med-ept block created, buffer=0x7ed64-0x7ef50 02:00:32.294 mtx0x7ee1c Mutex created 02:00:32.294 med-ept 96 bytes requested, resizing pool by 512 bytes (used=12276, cap=12800) 02:00:32.294 med-ept create_block(sz=512), cur.cap=12800, cur.used=12276 02:00:32.295 med-ept block created, buffer=0x7ef6c-0x7f158 02:00:32.295 mtx0x7ef6c Mutex created 02:00:32.295 mtx0x7f084 Mutex created 02:00:32.295 med-ept 184 bytes requested, resizing pool by 512 bytes (used=12672, cap=13312) 02:00:32.295 med-ept create_block(sz=512), cur.cap=13312, cur.used=12672 02:00:32.296 med-ept block created, buffer=0x7f174-0x7f360 02:00:32.296 mtx0x7f22c Mutex created 02:00:32.296 mtx0x7f0e4 Mutex created 02:00:32.296 med-ept 184 bytes requested, resizing pool by 512 bytes (used=13252, cap=13824) 02:00:32.296 med-ept create_block(sz=512), cur.cap=13824, cur.used=13252 02:00:32.296 med-ept block created, buffer=0x7f37c-0x7f568 02:00:32.297 mtx0x7f434 Mutex created 02:00:32.297 med-ept 96 bytes requested, resizing pool by 512 bytes (used=13736, cap=14336) 02:00:32.297 med-ept create_block(sz=512), cur.cap=14336, cur.used=13736 02:00:32.297 med-ept block created, buffer=0x7f584-0x7f770 02:00:32.297 mtx0x7f584 Mutex created 02:00:32.297 mtx0x7f69c Mutex created 02:00:32.298 med-ept 184 bytes requested, resizing pool by 512 bytes (used=14132, cap=14848) 02:00:32.298 med-ept create_block(sz=512), cur.cap=14848, cur.used=14132 02:00:32.298 med-ept block created, buffer=0x7f78c-0x7f978 02:00:32.298 mtx0x7f844 Mutex created 02:00:32.298 mtx0x7f6fc Mutex created 02:00:32.299 med-ept 184 bytes requested, resizing pool by 512 bytes (used=14712, cap=15360) 02:00:32.299 med-ept create_block(sz=512), cur.cap=15360, cur.used=14712 02:00:32.299 med-ept block created, buffer=0x7f994-0x7fb80 02:00:32.299 mtx0x7fa4c Mutex created 02:00:32.299 med-ept 96 bytes requested, resizing pool by 512 bytes (used=15196, cap=15872) 02:00:32.631 med-ept create_block(sz=512), cur.cap=15872, cur.used=15196 02:00:32.631 med-ept block created, buffer=0x7fb9c-0x7fd88 02:00:32.632 mtx0x7fb9c Mutex created 02:00:32.632 mtx0x7fcb4 Mutex created 02:00:32.632 med-ept 184 bytes requested, resizing pool by 512 bytes (used=15592, cap=16384) 02:00:32.632 med-ept create_block(sz=512), cur.cap=16384, cur.used=15592 02:00:32.632 med-ept block created, buffer=0x7fda4-0x7ff90 02:00:32.632 mtx0x7fe5c Mutex created 02:00:32.633 mtx0x7fd14 Mutex created 02:00:32.633 med-ept 184 bytes requested, resizing pool by 512 bytes (used=16172, cap=16896) 02:00:32.633 med-ept create_block(sz=512), cur.cap=16896, cur.used=16172 02:00:32.633 med-ept block created, buffer=0x7ffac-0x80198 02:00:32.633 mtx0x80064 Mutex created 02:00:32.633 med-ept 96 bytes requested, resizing pool by 512 bytes (used=16656, cap=17408) 02:00:32.634 med-ept create_block(sz=512), cur.cap=17408, cur.used=16656 02:00:32.634 med-ept block created, buffer=0x801b4-0x803a0 02:00:32.634 mtx0x801b4 Mutex created 02:00:32.634 mtx0x802cc Mutex created 02:00:32.634 med-ept 184 bytes requested, resizing pool by 512 bytes (used=17052, cap=17920) 02:00:32.635 med-ept create_block(sz=512), cur.cap=17920, cur.used=17052 02:00:32.635 med-ept block created, buffer=0x803bc-0x805a8 02:00:32.635 mtx0x80474 Mutex created 02:00:32.635 mtx0x8032c Mutex created 02:00:32.635 med-ept 184 bytes requested, resizing pool by 512 bytes (used=17632, cap=18432) 02:00:32.635 med-ept create_block(sz=512), cur.cap=18432, cur.used=17632 02:00:32.636 med-ept block created, buffer=0x805c4-0x807b0 02:00:32.636 mtx0x8067c Mutex created 02:00:32.636 med-ept 96 bytes requested, resizing pool by 512 bytes (used=18116, cap=18944) 02:00:32.636 med-ept create_block(sz=512), cur.cap=18944, cur.used=18116 02:00:32.636 med-ept block created, buffer=0x807cc-0x809b8 02:00:32.636 mtx0x807cc Mutex created 02:00:32.637 mtx0x808e4 Mutex created 02:00:32.637 med-ept 184 bytes requested, resizing pool by 512 bytes (used=18512, cap=19456) 02:00:32.637 med-ept create_block(sz=512), cur.cap=19456, cur.used=18512 02:00:32.637 med-ept block created, buffer=0x809d4-0x80bc0 02:00:32.637 mtx0x80a8c Mutex created 02:00:32.637 mtx0x80944 Mutex created 02:00:32.638 med-ept 184 bytes requested, resizing pool by 512 bytes (used=19092, cap=19968) 02:00:32.638 med-ept create_block(sz=512), cur.cap=19968, cur.used=19092 02:00:32.638 med-ept block created, buffer=0x80bdc-0x80dc8 02:00:32.638 mtx0x80c94 Mutex created 02:00:32.638 med-ept 96 bytes requested, resizing pool by 512 bytes (used=19576, cap=20480) 02:00:32.639 med-ept create_block(sz=512), cur.cap=20480, cur.used=19576 02:00:32.639 med-ept block created, buffer=0x80de4-0x80fd0 02:00:32.639 mtx0x80de4 Mutex created 02:00:32.639 mtx0x80efc Mutex created 02:00:32.639 med-ept 184 bytes requested, resizing pool by 512 bytes (used=19972, cap=20992) 02:00:32.639 med-ept create_block(sz=512), cur.cap=20992, cur.used=19972 02:00:32.640 med-ept block created, buffer=0x80fec-0x811d8 02:00:32.640 mtx0x810a4 Mutex created 02:00:32.640 mtx0x80f5c Mutex created 02:00:32.640 med-ept 184 bytes requested, resizing pool by 512 bytes (used=20552, cap=21504) 02:00:32.640 med-ept create_block(sz=512), cur.cap=21504, cur.used=20552 02:00:32.640 med-ept block created, buffer=0x811f4-0x813e0 02:00:32.641 mtx0x812ac Mutex created 02:00:32.641 med-ept 96 bytes requested, resizing pool by 512 bytes (used=21036, cap=22016) 02:00:32.973 med-ept create_block(sz=512), cur.cap=22016, cur.used=21036 02:00:32.973 med-ept block created, buffer=0x813fc-0x815e8 02:00:32.973 mtx0x813fc Mutex created 02:00:32.973 mtx0x81514 Mutex created 02:00:32.973 med-ept 184 bytes requested, resizing pool by 512 bytes (used=21432, cap=22528) 02:00:32.974 med-ept create_block(sz=512), cur.cap=22528, cur.used=21432 02:00:32.974 med-ept block created, buffer=0x81604-0x817f0 02:00:32.974 mtx0x816bc Mutex created 02:00:32.974 mtx0x81574 Mutex created 02:00:32.974 med-ept 184 bytes requested, resizing pool by 512 bytes (used=22012, cap=23040) 02:00:32.974 med-ept create_block(sz=512), cur.cap=23040, cur.used=22012 02:00:32.975 med-ept block created, buffer=0x8180c-0x819f8 02:00:32.975 mtx0x818c4 Mutex created 02:00:32.975 med-ept 96 bytes requested, resizing pool by 512 bytes (used=22496, cap=23552) 02:00:32.975 med-ept create_block(sz=512), cur.cap=23552, cur.used=22496 02:00:32.975 med-ept block created, buffer=0x81a14-0x81c00 02:00:32.975 mtx0x81a14 Mutex created 02:00:32.976 ioq0x81a88 Mutex created 02:00:32.976 pjlib select() I/O Queue created (0x7a2e4) 02:00:32.977 media Thread created 02:00:32.977 cachingpool Mutex: thread thr0x4001f390 is waiting (mutex owner=) 02:00:32.977 cachingpool Mutex acquired by thread thr0x4001f390 (level=1) 02:00:32.977 app pool created, size=4096 02:00:32.978 cachingpool Mutex released by thread thr0x4001f390 (level=0) 02:00:32.978 media Thread started 02:00:32.979 ioq0x81a88 Mutex: thread media is waiting (mutex owner=) 02:00:32.979 ioq0x81a88 Mutex acquired by thread media (level=1) 02:00:32.979 ioq0x81a88 Mutex released by thread media (level=0) 02:00:32.984 app 4000 bytes requested, resizing pool by 8000 bytes (used=272, cap=4096) 02:00:32.984 app create_block(sz=8000), cur.cap=4096, cur.used=272 02:00:32.984 app block created, buffer=0x82c24-0x84b50 02:00:32.985 wav_player.c File player 'speech.wav' created: samp.rate=8000, ch=1, bufsize=4KB, filesize=202KB 02:00:32.985 resample.c resample created: high qualiy, large filter, in/out rate=8000/44100 02:00:32.985 resample.c resample created: high qualiy, large filter, in/out rate=44100/8000 02:00:32.986 cachingpool Mutex: thread thr0x4001f390 is waiting (mutex owner=) 02:00:32.986 cachingpool Mutex acquired by thread thr0x4001f390 (level=1) 02:00:32.986 alsa0x84b58 pool created, size=1024 02:00:32.986 cachingpool Mutex released by thread thr0x4001f390 (level=0) 02:00:32.987 alsa_dev.c open_playback: Open playback device 'default:CARD=EVM' 02:00:33.004 alsa0x84b58 1764 bytes requested, resizing pool by 2048 bytes (used=260, cap=1024) 02:00:33.004 alsa0x84b58 create_block(sz=2048), cur.cap=1024, cur.used=260 02:00:33.005 alsa0x84b58 block created, buffer=0x84f74-0x85760 02:00:33.014 alsa_dev.c Opened device alsa(default:CARD=EVM) for playing, sample rate=44100, ch=1, bits=16, period size=882 frames, latency=320 ms 02:00:33.014 alsa_dev.c open_capture: Open capture device 'default:CARD=EVM' 02:00:33.031 alsa0x84b58 1764 bytes requested, resizing pool by 2048 bytes (used=2044, cap=3072) 02:00:33.031 alsa0x84b58 create_block(sz=2048), cur.cap=3072, cur.used=2044 02:00:33.031 alsa0x84b58 block created, buffer=0x8577c-0x85f68 02:00:33.040 alsa_dev.c Opened device alsa(default:CARD=EVM) for capture, sample rate=44100, ch=1, bits=16, period size=882 frames, latency=320 ms 02:00:33.041 alsasound_play Thread created 02:00:33.042 alsasound_play Thread created 02:00:33.042 resampleplay.c Total pool memory allocated=45 KB, used=38 KB 02:00:33.043 alsasound_play Thread started 02:00:33.043 alsa_dev.c ca_thread_func(951): Set thread priority for audio capture thread. 02:00:33.046 alsasound_play Thread started Segmentation fault Have tried various different settings in config_site.h such as #define PJMEDIA_RESAMPLE_IMP PJMEDIA_RESAMPLE_LIBRESAMPLE #define PJMEDIA_WSOLA_IMP PJMEDIA_WSOLA_IMP_WSOLA_LITE but to no avail. All help very much appreciated! Thanks in advance /Christian