[asterisk-dev] dvossel: trunk r239712 - in /trunk: ./ apps/ main/

John Todd jtodd at digium.com
Mon Jan 18 08:10:46 CST 2010




On Jan 15, 2010, at 6:23 PM, Russell Bryant wrote:

>
> ----- "SVN commits to the Digium repositories" <svn-commits at lists.digium.com 
> > wrote:
>
>> Author: dvossel
>> Date: Wed Jan 13 10:31:14 2010
>> New Revision: 239712
>>
>> URL: http://svnview.digium.com/svn/asterisk?view=rev&rev=239712
>> Log:
>> add silence gen to wait apps
>>
>> asterisk.conf's 'transmit_silence' option existed before
>> this patch, but was limited to only generating silence
>> while recording and sending DTMF.  Now enabling the
>> transmit_silence option generates silence during wait
>> times as well.
>>
>> To achieve this, ast_safe_sleep has been modified to
>> generate silence anytime no other generators are present
>> and transmit_silence is enabled.  Wait apps not using
>> ast_safe_sleep now generate silence when transmit_silence
>> is enabled as well.
>>
>> (closes issue #16524)
>> Reported by: kobaz
>>
>> (closes issue #16523)
>> Reported by: kobaz
>> Tested by: dvossel
>
>> --- trunk/Makefile (original)
>> +++ trunk/Makefile Wed Jan 13 10:31:14 2010
>
>> -		echo ";transmit_silence = yes ; Transmit SLINEAR silence while a
>> channel is being recorded or DTMF is being generated" ; \
>> +		echo ";transmit_silence = yes ; Transmit SLINEAR silence while a
>> channel is waiting, being recorded, or DTMF is being generated" ; \
>
> I think this documentation could be improved a bit, as it is a bit  
> misleading.  The generation of signed linear silence is in fact what  
> is happening internally, but that is not what is (most likely) being  
> transmitted to the endpoint, which is what most people would think  
> when reading this.  I would recommend changing this to say something  
> like ...
>
> Transmit silence while a channel is in a waiting state, a recording  
> only state, or when DTMF is being generated.  Note that the silence  
> internally is generated in raw signed linear format.  This means  
> that it must be transcoded into the native format of the channel  
> before it can be sent to the device.  It is for this reason that  
> this is optional, as it may result in requiring a temporary codec  
> translation path for a channel that may not otherwise require one.



Might there be a better way to do this?  If the user tries to send  
silence for G.729, as an example, and has no G.729 licenses installed,  
then this will fail, correct?  Same with any other codec that is being  
handled through but does not exist on that system.

Would it not be useful to just (repeatedly) send one of the pre- 
recorded "sounds/silence" files in the appropriate pre-generated codec  
form?  This would eliminate any transcoding issues.  Those files are  
part of the standard sounds distribution, and we might even consider  
adding them into the baseline distro since they are not language  
specific.

JT

---
John Todd                       email:jtodd at digium.com
Digium, Inc. | Asterisk Open Source Community Director
445 Jan Davis Drive NW -  Huntsville AL 35806  -   USA
direct: +1-256-428-6083         http://www.digium.com/







More information about the asterisk-dev mailing list