[asterisk-dev] asterisk-dev Digest, Vol 104, Issue 34
Rifat Rahman
rifatrahmanovi at gmail.com
Tue Mar 12 05:12:35 CDT 2013
Hello Dan,
> I suspect the jitter may follow a pattern, as I saw something similar
> when packetization support was added to Asterisk. Due to how outgoing
> packets were the average jitter would approximate the smaller ptime of the
> two legs. This was easiest to see with p1=20ms and p2=30ms:
Thanks for the info that when packetizatization was added to Asterisk,
same things were
observed. May be I am hitting the right thing. And again a large
thanks for the simulation
with packets p1=20ms and p2=30ms.
> 0.00 - start conversation
> 0.02 - p1(1) arrives, not enough data to assemble p2(1)
> 0.04 - p1(2) arrives, p2(1) assembled, leaving 10ms in the buffer
> 0.06 - p1(3) arrives, p2(2) assembled and sent 10ms early, buffer empty
> 0.08 - repeat
This is exactly the same thing I am doing. Tracking connection via
some lists, hash tables,
and then freeing buffer. I am optimizing the list search. But is there
any other problem?
I thought the inefficiency of the searching and merging led me to the
problem of robotic
voice. But maybe other things are to be considered which I have little
or no idea at all.
I once wrote it in userspace. And the module fell catastrophically: NO
VOICE was found.
Although captured packets were perfect. We found huge delta and zitter
that time.
Now in kernel space, voice is found, but robotic. I used the speed of
execution of
kernel level code than userspace: and hence the gain (partially) in
delta and zitter.
> The device receiving p2 would see two 30ms packets in 40ms and then
> the next packet after another 40ms. Some devices handled the jitter,
> others would reproduce the audio with a 'robotic' quality.
Does it depends on the end device? How should then I proceed? Is it a problem in
the module, or i should look at the zitter buffer in the client. I am
writing the code
for ptime increase in a more efficient way.
> If your module is sending packets as soon as they are complete you
> would see this.
Then should I hold the packets for some time and then send them?
> If you are actually using the larger ptime to
> schedule the packet transmission, then this observation is not
> likely to help you.
I don't get the point.
Thanks for your wise reply once again.
Rifat
More information about the asterisk-dev
mailing list