<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
		>
<channel>
	<title>Comments on: Factors Affecting Village Telco Performance</title>
	<atom:link href="http://www.villagetelco.org/2009/11/factors-affecting-village-telco-performance/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.villagetelco.org/2009/11/factors-affecting-village-telco-performance/</link>
	<description>an easy-to-use, scalable, standards-based, wireless, local, do-it-yourself, telephone company toolkit</description>
	<lastBuildDate>Wed, 14 Jul 2010 17:54:23 +0000</lastBuildDate>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=abc</generator>
	<item>
		<title>By: Aaron</title>
		<link>http://www.villagetelco.org/2009/11/factors-affecting-village-telco-performance/comment-page-1/#comment-526</link>
		<dc:creator>Aaron</dc:creator>
		<pubDate>Fri, 18 Dec 2009 09:41:53 +0000</pubDate>
		<guid isPermaLink="false">http://www.villagetelco.org/?p=353#comment-526</guid>
		<description>I&#039;ve been following villagetelco for some time. I find it very interesting. After reading this article I would like to point out a possible solution for the cpu usage. I set out to create a stronger, faster, and more realiable router at a low cost for the users at Open-Mesh. Some of the technology you guys use seems very similar to what I&#039;m used to. 

Check out http://www.anaptyxmesh.com You&#039;ll find indoor and outdoor models that will easily run your OpenWRT variant. Add to the fact it&#039;s designed for dual radio usage, where one card serves the mesh and the other serves the client. I suspect you would of course alter this layout, but maybe it would help you with hardware for the more demanding situation.</description>
		<content:encoded><![CDATA[<p>I&#8217;ve been following villagetelco for some time. I find it very interesting. After reading this article I would like to point out a possible solution for the cpu usage. I set out to create a stronger, faster, and more realiable router at a low cost for the users at Open-Mesh. Some of the technology you guys use seems very similar to what I&#8217;m used to. </p>
<p>Check out <a href="http://www.anaptyxmesh.com" rel="nofollow" onclick="pageTracker._trackPageview('/outgoing/www.anaptyxmesh.com?referer=');">http://www.anaptyxmesh.com</a> You&#8217;ll find indoor and outdoor models that will easily run your OpenWRT variant. Add to the fact it&#8217;s designed for dual radio usage, where one card serves the mesh and the other serves the client. I suspect you would of course alter this layout, but maybe it would help you with hardware for the more demanding situation.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Alexander Chemeris</title>
		<link>http://www.villagetelco.org/2009/11/factors-affecting-village-telco-performance/comment-page-1/#comment-420</link>
		<dc:creator>Alexander Chemeris</dc:creator>
		<pubDate>Wed, 02 Dec 2009 22:05:32 +0000</pubDate>
		<guid isPermaLink="false">http://www.villagetelco.org/?p=353#comment-420</guid>
		<description>Moved to the mailing list.</description>
		<content:encoded><![CDATA[<p>Moved to the mailing list.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: David Rowe</title>
		<link>http://www.villagetelco.org/2009/11/factors-affecting-village-telco-performance/comment-page-1/#comment-419</link>
		<dc:creator>David Rowe</dc:creator>
		<pubDate>Wed, 02 Dec 2009 21:40:38 +0000</pubDate>
		<guid isPermaLink="false">http://www.villagetelco.org/?p=353#comment-419</guid>
		<description>Hi Alex,

Yes I tried to check out your samples yesterday but received a 404 error when I hit the link.  BTW for some reason I am not receiving email notifications from this site so my responses depend on me checking this blog.  Feel free to continue this discussion on the Google Group if I am slow to respond.

The reasons for using Asterisk are described on the &lt;a href=&quot;http://wiki.villagetelco.org/index.php/FAQ&quot; rel=&quot;nofollow&quot;&gt;Village Telco FAQ&quot;&lt;/a&gt;.

I understand Asterisk does have some PLC algorithms, but we haven&#039;t experimented with them yet.  I guess we would require some notification of missed frames, and perhaps experimentation with the jitter buffer.

Thanks,

David</description>
		<content:encoded><![CDATA[<p>Hi Alex,</p>
<p>Yes I tried to check out your samples yesterday but received a 404 error when I hit the link.  BTW for some reason I am not receiving email notifications from this site so my responses depend on me checking this blog.  Feel free to continue this discussion on the Google Group if I am slow to respond.</p>
<p>The reasons for using Asterisk are described on the <a href="http://wiki.villagetelco.org/index.php/FAQ" rel="nofollow" onclick="pageTracker._trackPageview('/outgoing/wiki.villagetelco.org/index.php/FAQ?referer=');">Village Telco FAQ&#8221;</a>.</p>
<p>I understand Asterisk does have some PLC algorithms, but we haven&#8217;t experimented with them yet.  I guess we would require some notification of missed frames, and perhaps experimentation with the jitter buffer.</p>
<p>Thanks,</p>
<p>David</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Alexander Chemeris</title>
		<link>http://www.villagetelco.org/2009/11/factors-affecting-village-telco-performance/comment-page-1/#comment-413</link>
		<dc:creator>Alexander Chemeris</dc:creator>
		<pubDate>Wed, 02 Dec 2009 13:19:29 +0000</pubDate>
		<guid isPermaLink="false">http://www.villagetelco.org/?p=353#comment-413</guid>
		<description>Hi David,

Ok, you&#039;ve convinced me, that this is a PLC problem :)

Examples I&#039;ve shown are for generic PLC, i.e. it works on any raw-audio stream. So you just decode packet to raw audio and then apply this PLC. We developed it for the cases when codec does not have internal PLC, like G.711. It&#039;s a shame Asterisk still does not have PLC.

Algorithm 3 (which produces audio with clicks) is actually a dumb frame repetition algorithm - something you can code in an evening by yourself. Algorithm 4 is frame repetition with smoothing just to remove clicks. It requires slightly more work. Seems I can&#039;t tell you a lot about algorithms 0-2, as it&#039;s a IP of SIPez LLC. I just can tell that it took my co-worker quite some time to implement and polish them to remove all clicks and pops and make it as smooth as possible while introducing zero delay. I would love to see this algorithms in open-source, but that&#039;s not in my competence.

I&#039;ve created examples of the same audio with 80ms audio frames and 20% of loss, but I can&#039;t put them online right now, because my ISP is having difficulties in receiving money from me, grr.. I&#039;ll post the link here when my connection brings up.

I still advise you to capture real audio (on sending side) with real packet loss (on receiving side), so we can model it and ply with.

PS Why have you chosen to use Asterisk as a SIP UA? It seems it&#039;s more of a server, then UA. Writing some client will take some more time, but will likely be lighter the Asterisk and will likely have things like PLC.</description>
		<content:encoded><![CDATA[<p>Hi David,</p>
<p>Ok, you&#8217;ve convinced me, that this is a PLC problem <img src='http://www.villagetelco.org/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p>Examples I&#8217;ve shown are for generic PLC, i.e. it works on any raw-audio stream. So you just decode packet to raw audio and then apply this PLC. We developed it for the cases when codec does not have internal PLC, like G.711. It&#8217;s a shame Asterisk still does not have PLC.</p>
<p>Algorithm 3 (which produces audio with clicks) is actually a dumb frame repetition algorithm &#8211; something you can code in an evening by yourself. Algorithm 4 is frame repetition with smoothing just to remove clicks. It requires slightly more work. Seems I can&#8217;t tell you a lot about algorithms 0-2, as it&#8217;s a IP of SIPez LLC. I just can tell that it took my co-worker quite some time to implement and polish them to remove all clicks and pops and make it as smooth as possible while introducing zero delay. I would love to see this algorithms in open-source, but that&#8217;s not in my competence.</p>
<p>I&#8217;ve created examples of the same audio with 80ms audio frames and 20% of loss, but I can&#8217;t put them online right now, because my ISP is having difficulties in receiving money from me, grr.. I&#8217;ll post the link here when my connection brings up.</p>
<p>I still advise you to capture real audio (on sending side) with real packet loss (on receiving side), so we can model it and ply with.</p>
<p>PS Why have you chosen to use Asterisk as a SIP UA? It seems it&#8217;s more of a server, then UA. Writing some client will take some more time, but will likely be lighter the Asterisk and will likely have things like PLC.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: David Rowe</title>
		<link>http://www.villagetelco.org/2009/11/factors-affecting-village-telco-performance/comment-page-1/#comment-407</link>
		<dc:creator>David Rowe</dc:creator>
		<pubDate>Wed, 02 Dec 2009 00:49:31 +0000</pubDate>
		<guid isPermaLink="false">http://www.villagetelco.org/?p=353#comment-407</guid>
		<description>Hi Alex,

The packet loss test involved sending a VOIP call over a mesh network that was loaded with UDP traffic such that it had a measurable packet loss (2%, 5% etc). The VOIP call was sent and received by lightly loaded x86 Asterisk boxes, the MP was not being used for voice processing, just passing on packets.

Nothing special was done to handle packet loss, I just used some standard Asterisk boxes with the GSM codec.

Wow 20% packet loss concealment is very impressive.  What sort of codec were you using?  Are you concealment algorithms open source?  

I would like to see more work done in the area of packet loss but it is very time consuming and we have many other tasks to do on the Village Telco project.

If we use 4 codec packet aggregation it is likely that 4 consecutive packets will be lost (80ms) so the distribution won&#039;t be random.

Cheers,

David</description>
		<content:encoded><![CDATA[<p>Hi Alex,</p>
<p>The packet loss test involved sending a VOIP call over a mesh network that was loaded with UDP traffic such that it had a measurable packet loss (2%, 5% etc). The VOIP call was sent and received by lightly loaded x86 Asterisk boxes, the MP was not being used for voice processing, just passing on packets.</p>
<p>Nothing special was done to handle packet loss, I just used some standard Asterisk boxes with the GSM codec.</p>
<p>Wow 20% packet loss concealment is very impressive.  What sort of codec were you using?  Are you concealment algorithms open source?  </p>
<p>I would like to see more work done in the area of packet loss but it is very time consuming and we have many other tasks to do on the Village Telco project.</p>
<p>If we use 4 codec packet aggregation it is likely that 4 consecutive packets will be lost (80ms) so the distribution won&#8217;t be random.</p>
<p>Cheers,</p>
<p>David</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Alexander Chemeris</title>
		<link>http://www.villagetelco.org/2009/11/factors-affecting-village-telco-performance/comment-page-1/#comment-389</link>
		<dc:creator>Alexander Chemeris</dc:creator>
		<pubDate>Sun, 29 Nov 2009 19:01:30 +0000</pubDate>
		<guid isPermaLink="false">http://www.villagetelco.org/?p=353#comment-389</guid>
		<description>PS My suggestion is to somehow record loss pattern on receiving site to get better understanding of the issue.
PPS One more possible reason of bad audio quality: (4) you loose one packet a time, but your packet is longer then 20ms (which is actually equivalent to case (2)).</description>
		<content:encoded><![CDATA[<p>PS My suggestion is to somehow record loss pattern on receiving site to get better understanding of the issue.<br />
PPS One more possible reason of bad audio quality: (4) you loose one packet a time, but your packet is longer then 20ms (which is actually equivalent to case (2)).</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Alexander Chemeris</title>
		<link>http://www.villagetelco.org/2009/11/factors-affecting-village-telco-performance/comment-page-1/#comment-388</link>
		<dc:creator>Alexander Chemeris</dc:creator>
		<pubDate>Sun, 29 Nov 2009 18:57:30 +0000</pubDate>
		<guid isPermaLink="false">http://www.villagetelco.org/?p=353#comment-388</guid>
		<description>&gt; The quality of the call could be monitored
&gt; at variable packet loss rates. At 2% packet
&gt; loss some click and pops started to become
&gt; noticeable, however the call was still intelligible
&gt; at 5-10% packet loss.

Hum. IIRC, my impression was that this quality drop was not due to packet loss. I may be wrong, but I recall that you measured call quality on MP&#039;s phone port. In this case bad quality on the MP may be caused by local audio drops due to high CPU load. I.e. the real problem was not with packet loss, but with local audio processing.
Sorry if I misunderstood your test setup.

re: Packet loss rate.
20% of randomly distributed packet loss is very well concealed by PLC. You may check out these samples wito 20% of packet loss, concealed with PLC, developed by us for SIPez: http://ipse.chemeris.ru/plc/
There are two dirs with samples: &quot;MaleFast&quot; and &quot;MaleSlow&quot;. Each dir contains original audio and this audio with 20% loss, concealed by different 5 PLC algorithms. Lost fragments are 20ms long. Algorithm 3 is very simple, 4 is slightly more complicated, 2 is even more complicated, 0 and 1 are advanced. You may see here, that even simple algorithm provides enough intelligibility at 20% of uniform random loss.
Thus you either (1) have no PLC at all, (2) your distribution of loss is not uniform random loss (e.g. you may loose more then one packet at a time) or (3) your audio issues are caused by different issue.</description>
		<content:encoded><![CDATA[<p>&gt; The quality of the call could be monitored<br />
&gt; at variable packet loss rates. At 2% packet<br />
&gt; loss some click and pops started to become<br />
&gt; noticeable, however the call was still intelligible<br />
&gt; at 5-10% packet loss.</p>
<p>Hum. IIRC, my impression was that this quality drop was not due to packet loss. I may be wrong, but I recall that you measured call quality on MP&#8217;s phone port. In this case bad quality on the MP may be caused by local audio drops due to high CPU load. I.e. the real problem was not with packet loss, but with local audio processing.<br />
Sorry if I misunderstood your test setup.</p>
<p>re: Packet loss rate.<br />
20% of randomly distributed packet loss is very well concealed by PLC. You may check out these samples wito 20% of packet loss, concealed with PLC, developed by us for SIPez: <a href="http://ipse.chemeris.ru/plc/" rel="nofollow" onclick="pageTracker._trackPageview('/outgoing/ipse.chemeris.ru/plc/?referer=');">http://ipse.chemeris.ru/plc/</a><br />
There are two dirs with samples: &#8220;MaleFast&#8221; and &#8220;MaleSlow&#8221;. Each dir contains original audio and this audio with 20% loss, concealed by different 5 PLC algorithms. Lost fragments are 20ms long. Algorithm 3 is very simple, 4 is slightly more complicated, 2 is even more complicated, 0 and 1 are advanced. You may see here, that even simple algorithm provides enough intelligibility at 20% of uniform random loss.<br />
Thus you either (1) have no PLC at all, (2) your distribution of loss is not uniform random loss (e.g. you may loose more then one packet at a time) or (3) your audio issues are caused by different issue.</p>
]]></content:encoded>
	</item>
</channel>
</rss>
