Pjlib on Symbian

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi Benny,

 

Thanks for your response.

I have another question. I try to understand the media transmission flow and
I'm blocked with the logic of application.

Here is the stack of application running on Nokia E61 (is generated with
Carbide v1.3):

 

Thread [Thread id: 363] (Suspended: Breakpoint hit.)   

            5 pjmedia_delay_buf_put()
C:\Symbian\Carbide\voip-phone\SipPhone\pjmedia\src\pjmedia\delaybuf.c:266
0xf55c8ebc      

            4 pjmedia_port_put_frame()
C:\Symbian\Carbide\voip-phone\SipPhone\pjmedia\src\pjmedia\port.c:85
0xf55ca9ac            

            3 rec_cb()
C:\Symbian\Carbide\voip-phone\SipPhone\pjmedia\src\pjmedia\sound_port.c:139
0xf55cca2c         

            2 CPjAudioInputEngine::MaiscBufferCopied()
C:\Symbian\Carbide\voip-phone\SipPhone\pjmedia\src\pjmedia-audiodev\symb_mda
_dev.cpp:464 0xf55df5f4  

            1 Unknown (0xF52005A8)()  0xf52005a8       

 

We can see that the audio frame is captured by "MaiscBufferCopied()"
function which will run the callback function "rec_cb()" and finally the
audio frame arrive in the "delay buffer" passing through "put_frame"
function from Conference module (the application uses the Conference
bridge).

My question is when (or who) is reading the "delay buffer" (which contains
the audio frames received from microphone) and transmits the data to
transport layer?

 

Hope no bothers you to much,

George. 

 

g.evi at sympatico.ca

 

  _____  

From: pjsip-bounces@xxxxxxxxxxxxxxx [mailto:pjsip-bounces at lists.pjsip.org]
On Behalf Of Benny Prijono
Sent: Friday, April 03, 2009 8:03 AM
To: pjsip list
Subject: Re: Pjlib on Symbian

 

2009/4/2 George Evi <george.evi at ctcinc.ca>

Hi Benny,

 

I activate the log in my project (PJ_LOG()) and used the function
"log_call_dump()" to dump the statistics at the end of a call.

I got these statistics:


Great! We love logs and statistics! :)
 

 

--end msg--State changed from Null to Calling, event=TX_MSGTransaction
tsx0x732e8c state changed to Calling

  [CONFIRMED] To: sip:5148403000 at sip6.van.netvoice.ca
<mailto:sip%3A5148403000 at sip6.van.netvoice.ca> ;tag=as5b69601c

    Call time: 00h:01m:56s, 1st res in 3542 ms, conn in 5824ms

    SRTP status: Not active Crypto-suite: (null)

    #0 PCMU @8KHz, sendrecv, peer=64.34.49.82:19122

       RX pt=0, stat last update: 00h:00m:00.601s ago

          total 5.7Kpkt 924.8KB (1.15MB +IP hdr) @avg=62.3Kbps/77.9Kbps

          pkt loss=143 (2.4%), discrd=1 (0.0%), dup=0 (0.0%), reord=1 (0.0%)

                (msec)    min     avg     max     last    dev

          loss period:  20.000 178.750 940.000 100.000  63.638

          jitter     : -  0.001  11.737 579.000   0.750   8.775

       TX pt=0, ptime=20ms, stat last update: 00h:00m:03.680s ago

          total 5.7Kpkt 906.4KB (1.13MB +IP hdr) @avg 61.1Kbps/76.5Kbps

          pkt loss=2 (0.0%), dup=0 (0.0%), reorder=0 (0.0%)

                (msec)    min     avg     max     last    dev 

          loss period:  40.000  40.000  40.000  40.000   0.000

          jitter     : 193.000 193.000 193.000 193.000   0.000

      RTT msec       :  92.000 128.637 332.000 101.000  21.526

Processing incoming message: Response msg 200/BYE/cseq=18255
(rdata0x71e65c)RX 510 bytes Response msg 200/BYE/cseq=18255 (rdata0x71e65c)
from UDP 64.34.49.82:5060:

SIP/2.0 200 OK

 

I also read the "Understanding Media Flow" document and I have a (beginner)
question. 

In the TX section we have a jitter line but in the Media Flow diagram there
is no Jitter Buffer for packet transmission, what represents this line? 


We get these values from the RTCP report sent by the remote peer. If remote
peer doesn't support RTCP, we would not get these stats of course.
 

And also why in the same section the loss period and jitter buffer values
are the same for all statistics colons?

 

It's probably because it's only got one RTCP report? In this case then the
min/avg/max values would be the same, isn't it?

cheers
 Benny


 

Thanks,

George.  

 


  _____  


From: pjsip-bounces@xxxxxxxxxxxxxxx [mailto:pjsip-bounces at lists.pjsip.org]
On Behalf Of Benny Prijono
Sent: Wednesday, March 25, 2009 3:56 AM


To: pjsip list
Subject: Re: Pjlib on Symbian

 

2009/3/24 George Evi <george.evi at ctcinc.ca>

Hi Benny,

 

I update my application with the latest version the "trunk pjproject- 1.1"
and continue to test on Nokia E61.

 

As you suggested I changed the codec priorities in a way that GSM had
highest priority (in function "pjsua_media_subsys_init" priority value =
PJMEDIA_CODEC_PRIO_NORMAL +4 (132)). The sound was acceptable on the caller
side but on the callee side continue to be stuttered, disrupted and
instable.


Hi George,

In that case, I would probably suggest to try to use different peer for the
testing (pjsua running on desktop would be a good candidate :) ). And make
sure the audio doesn't get routed through the server or otherwise this
wouldn't make any difference. You can call directly to the device's IP
address to make sure.
 

 

Also I tried the others codecs (iLBC, Speex/8000 and Speex/16000) in the
same way but didn't see any improvements.

 

iLBC and Speex/16000 is definitely out of question. Speex/8000 is probably
bang on the processing capability, so use it with care (e.g. only use
release mode), and probably is not good for troubleshooting problems like
this. And of course there is G.711, definitely a good candidate to try.

cheers
 Benny

 

Do you have any suggestions or ideas?

 

We don't want to use Nokia APS (Audio proxy Server) for the moment, because
it needs a publisher ID. 

 

Thank you,

George.

 

 


  _____  


From: pjsip-bounces@xxxxxxxxxxxxxxx [mailto:pjsip-bounces at lists.pjsip.org]
On Behalf Of Benny Prijono
Sent: Friday, March 20, 2009 2:32 AM


To: pjsip list
Subject: Re: Pjlib on Symbian

 

2009/3/19 George Evi <george.evi at ctcinc.ca>

Hi Benny,

 

Thanks for your response.

The flow of sound is disrupted on both sides (caller and callee voice
reception). You can hear the sound but the words are not completed and on
the callee side the voice is metalique  (like a robot speech). The latest
tests I made were done with Nokia E61 (S60 3rd edition -mr) connected Wi-Fi
and I expected to see some improvements but voice stilled disrupted.

I'm using iLBC as codec (1st priority) and UDP transport.

 

Aha, that's probably the reason. iLBC is heavy, I don't think the device has
enough processing power to run it [2]. Try with GSM or Speex.

Alternatively, consider using APS-Direct [1], available in pjsip version 1.1
now downloadable from the website. APS-Direct uses handset's native codec
and it supports iLBC, AMR, G.729, and G.711.

cheers
 Benny

[1] http://trac.pjsip.org/repos/wiki/Nokia_APS_VAS_Direct
[2] http://trac.pjsip.org/repos/wiki/PJMEDIA-MIPS


_______________________________________________
Visit our blog: http://blog.pjsip.org

pjsip mailing list
pjsip at lists.pjsip.org
http://lists.pjsip.org/mailman/listinfo/pjsip_lists.pjsip.org

 


_______________________________________________
Visit our blog: http://blog.pjsip.org

pjsip mailing list
pjsip at lists.pjsip.org
http://lists.pjsip.org/mailman/listinfo/pjsip_lists.pjsip.org

 

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.pjsip.org/pipermail/pjsip_lists.pjsip.org/attachments/20090403/3f5734d7/attachment-0001.html>


[Index of Archives]     [Asterisk Users]     [Asterisk App Development]     [Linux ARM Kernel]     [Linux ARM]     [Linux Omap]     [Fedora ARM]     [IETF Annouce]     [Security]     [Bugtraq]     [Linux]     [Linux OMAP]     [Linux MIPS]     [Linux API]
  Powered by Linux