[Top][All Lists]

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

Re: [Linphone-developers] Voice quality on 3G and EDGE

From: Vadim Lebedev
Subject: Re: [Linphone-developers] Voice quality on 3G and EDGE
Date: Thu, 16 Sep 2010 10:45:25 +0200
User-agent: Mozilla/5.0 (X11; U; Linux x86_64; en-US; rv: Gecko/20100826 Thunderbird/3.0.7


Meanwhile i'm attaching a new version of QOS patch....

I hope it is acceptable for the trunk.....
For the moment it simply implement detection of change QOS and generates an event


On 09/09/2010 09:42 PM, Simon Morlat wrote:
Hi Vadim,

Here are my thoughs about your suggestions:

1) doesn't make sense unless you meant "start transmitting duplicated
packets" (I guess it was your idea). This has the drawback of increasing
bandwidth usage.
2) packing more audio per packet significally reduces bandwidth, this is
useful as packet drops are very often caused by bandwidth overflow. In
mediastreamer2 it is easy to do thanks to the "ptime" parameter you can
give to encoders, either using MS_FILTER_ADD_FMTP or MS_FILTER_ADD_ATTR,
as you noticed.

3) I would refine saying: stop sending unecessary media: for example
stop transmit silences. This indeed allows the channel to purge old
packets and restart on better basis. Also using speex with vbr=on (like
in linphone) is interesting: the speex codec will automatically adapt
the bitrate to what is needed to properly encode the voice segment.
Enabling the speex vad feature is even better, but I never implemented
in linphone.

I would also distinguish between 3G and EDGE. On 3G you often have a
very good internet, with very low packet losses, though problems start
to occur when the 3G signal received by the phone becomes too low:
packet losses, and bandwidth reduced.
On the opposite, edge is simply too bad. It can be compared as 15 years
old internet: high delay (ping not less than 300 ms) and ridiculous
I think there is no way to make good VoIP on edge networks. EDGE is just
good enough to receive and send small emails...


Le mardi 07 septembre 2010 à 09:54 +0200, Vadim Lebedev a écrit :
Hello folks,

We're trying to improve mediastreamer behaviour on 3G and EDGE environments.
For this we use RTCP receiver reports to detect changes in reported
jitter, bandwidth and packet losses.

Once we detect the degradation we can adopt following strategies:

1) We can start retransmitting some/all RTP packets
2) We can pack more audio per packet
3) In case of hard congestion we can stop sending media and wait until
congestion resovled

Strategies 1 and 3  are pretty simple to implement.
But strategy 2 is less trivial to implement with mediastreamer.
I'm thinking to hook a reformatting filter just before the encoder this
way i'll need no modifiy all aduio input drivers to
suppport variable payload size per packet.

Simon what do you think?


Attachment: qos.patch
Description: Text Data

reply via email to

[Prev in Thread] Current Thread [Next in Thread]