PJSUA Aborts after Assertion Failure

LI
Larry Ing
Thu, Jun 4, 2020 6:13 PM

Hello,

I have been working on a project for a company to create a paging system
that integrates with the current FreePBX server and phone system. I am
using a rPi 1 for developing and testing, and plan to deploy on an rPi3
after success. (rPi 1 is personal, rPi3 corp owned)

After some weeks of battling and fixing various issues related to the
project, I am back to one single issue that I thought went away. I have
seen this error in various posts around the 2012 era when a patch was made
to resolve this issue. As far as I can tell, that patch has long been
incorporated into my source code (PJSIP 2.10). I have seen a few newer
issues like mine, but with no resolution. So I'm really at a loss for what
to do and continued searching doesn't seem isn't helping yet.

Please let me know what more info is needed, but here is some preliminary
information:

Kernel: 4.19.97
PJSIP: 2.10
PJSIP Compilation options:

./aconfigure --disable-video --disable-ffmpeg --disable-v4l2 --disable-libwebrtc

Jack: jackd1

Sound devices: Using analog out port on pi, snd_dummy for mic

PJSUA Config file:

--id sip:51@10.90.0.22:5060
--registrar sip:10.100.0.11:5060
--realm *
--username 51
--password ***
--auto-answer 200
--capture-dev 6
--playback-dev 17

Device numbering obtained from pjsystest

Error message: pjsua-armv6l-unknown-linux-gnueabihf:
../src/pjmedia/conference.c:1895: get_frame: Assertion `frame->size ==
conf->samples_per_frame * conf->bits_per_sample / 8' failed. Aborted

Steps to reproduce:

  1. Start Jackd1

  2. Start PJSUA with config file

  3. Call paging endpoint from desk phone

At this point, PJSUA attempts to answer the call and aborts.

Console output:
18:41:46.460  conference.c  ...Port 2 (ring) transmitting to port 0 (jack)
18:41:46.463  pjsua_call.c  ..Answering call 0: code=200
18:41:46.466  inv0xb4600c2c  ....SDP negotiation done: Success
18:41:46.467  pjsua_media.c  .....Call 0: updating media..
18:41:46.597  pjsua_media.c !.......Media stream call00:0 is destroyed
18:41:46.605    pjsua_aud.c  ......Audio channel update..
18:41:46.608 strm0xb4661444  .......VAD temporarily disabled
pjsua-armv6l-unknown-linux-gnueabihf:
../src/pjmedia/conference.c:1895: get_frame: Assertion `frame->size ==
conf->samples_per_frame * conf->bits_per_sample / 8' failed.

I note the same failure when I use pjsystest and ask it to play a test tone.

So I'm at a loss at this point, does anyone have an avenue for me to explore?

Regards,

Larry Ing

Hello, I have been working on a project for a company to create a paging system that integrates with the current FreePBX server and phone system. I am using a rPi 1 for developing and testing, and plan to deploy on an rPi3 after success. (rPi 1 is personal, rPi3 corp owned) After some weeks of battling and fixing various issues related to the project, I am back to one single issue that I thought went away. I have seen this error in various posts around the 2012 era when a patch was made to resolve this issue. As far as I can tell, that patch has long been incorporated into my source code (PJSIP 2.10). I have seen a few newer issues like mine, but with no resolution. So I'm really at a loss for what to do and continued searching doesn't seem isn't helping yet. Please let me know what more info is needed, but here is some preliminary information: Kernel: 4.19.97 PJSIP: 2.10 PJSIP Compilation options: ./aconfigure --disable-video --disable-ffmpeg --disable-v4l2 --disable-libwebrtc Jack: jackd1 Sound devices: Using analog out port on pi, snd_dummy for mic PJSUA Config file: --id sip:51@10.90.0.22:5060 --registrar sip:10.100.0.11:5060 --realm * --username 51 --password *** --auto-answer 200 --capture-dev 6 --playback-dev 17 # Device numbering obtained from pjsystest Error message: pjsua-armv6l-unknown-linux-gnueabihf: ../src/pjmedia/conference.c:1895: get_frame: Assertion `frame->size == conf->samples_per_frame * conf->bits_per_sample / 8' failed. Aborted Steps to reproduce: 1. Start Jackd1 2. Start PJSUA with config file 3. Call paging endpoint from desk phone At this point, PJSUA attempts to answer the call and aborts. Console output: 18:41:46.460 conference.c ...Port 2 (ring) transmitting to port 0 (jack) 18:41:46.463 pjsua_call.c ..Answering call 0: code=200 18:41:46.466 inv0xb4600c2c ....SDP negotiation done: Success 18:41:46.467 pjsua_media.c .....Call 0: updating media.. 18:41:46.597 pjsua_media.c !.......Media stream call00:0 is destroyed 18:41:46.605 pjsua_aud.c ......Audio channel update.. 18:41:46.608 strm0xb4661444 .......VAD temporarily disabled pjsua-armv6l-unknown-linux-gnueabihf: ../src/pjmedia/conference.c:1895: get_frame: Assertion `frame->size == conf->samples_per_frame * conf->bits_per_sample / 8' failed. I note the same failure when I use pjsystest and ask it to play a test tone. So I'm at a loss at this point, does anyone have an avenue for me to explore? Regards, Larry Ing