[Freeswitch-users] echo cancelation
Steve Underwood
steveu at coppice.org
Thu Apr 23 06:00:20 MSD 2015
On 04/18/2015 07:13 PM, Sergey Safarov wrote:
> How would you expect to use echo cancellation in FS?
> I thinking it can be used like t38_gateway application (audio to image
> converter). In echo canceler application audio with echo converted to
> audio without echo.
How would you propose to do that with a fixed rate type of echo
canceler, like OSLEC?
> > On the one hand SpanDSP library compiled with FS and contains
> > functions for echo canceler libs/spandsp/src/echo.c
> Not really. Look carefully at those routines.
> In source
> * echo.c - An echo cancellor, suitable for electrical and acoustic
> * cancellation. This code does not currently comply with
> * any relevant standards (e.g. G.164/5/7/8). One day....
> And other 70 string of following comments describe file as echo canceler
> Also in echo_can_update()
> at string 429
> clean_rx = rx - echo_value;
>
> at string 569
> if ((ec->adaption_mode & ECHO_CAN_USE_NLP))
> {
> /* Non-linear processor - a fancy way to say "zap small
> signals, to avoid
> residual echo due to (uLaw/ALaw) non-linearity in the
> channel.". */
>
> Look in echo.h comments ....
>
> in the echo_tests.c
> The echo cancellation tests test the echo cancellor against the G.168
> spec.
>
> At http://www.rowetel.com/blog/?page_id=454 I read
> spandsp : A subset of spandsp to support testing and development of
> Oslec. The echo canceller and G168 test suite source code live in here.
>
> I thinking it really echo canceler functions.
Do you also believe in unicorns? I find lots of stuff about them in
children's books. I am the author of SpanSDP. People are always trying
to tell me that half finished chunks of code are fully functional. It
gets rather annoying after a while. I even find people telling me a
problem is solved when there is a project web site somewhere that hasn't
been touched in years, and contains no code. I never really had the
incentive to finish the echo canceler in SpanDSP, because David Rowe
took my work in progress and fleshed it out to the fully functional
OSLEC. I did finish the G.168 test suite in SpanDSP, so David could use
that for his testing.
>
> SpanDSP does NOT contain OSLEC. OSLEC has its origins in the work in
> progress echo canceller in SpanDSP.
> If it two different product then echo canceler may be realized by
>
> 1. SpanDSP library
> 2. Oslec kernel driver
>
> I has find relation In source files between OSLEC kernel driver
> (drivers/staging/echo) and SpanDSP functions:
> oslec_create(int len, int adaption_mode) - echo_can_init(int len, int
> adaption_mode)
> oslec_adaption_mode(struct oslec_state *ec, int adaption_mode) -
> oslec_update(struct oslec_state *ec, int16_t tx, int16_t rx)
> - echo_can_update(echo_can_state_t *ec, int16_t tx, int16_t rx)
> oslec_hpf_tx(struct oslec_state *ec, int16_t tx)
> - echo_can_hpf_tx(echo_can_state_t *ec, int16_t tx)
>
> And FS may use two echo canceler engines (SpanSDP or OSLEC kernel
> driver). What is prevent to do it?
SpanDSP doesn't have a working echo canceler.
The OSLEC echo canceler is blocked by licence conditions.
The OSLEC echo canceler is a great addition to the PSTN interfaces -
DADHI and FreeTDM - but has no use elsewhere.
>
> On Sat, Apr 18, 2015 at 12:39 PM, Steve Underwood <steveu at coppice.org
> <mailto:steveu at coppice.org>> wrote:
>
> On 04/18/2015 02:40 PM, Sergey Safarov wrote:
> > Could you help me understand that prevents the use echo
> cancellation in FS
> How would you expect to use echo cancellation in FS?
> > On the one hand SpanDSP library compiled with FS and contains
> > functions for echo canceler libs/spandsp/src/echo.c
> Not really. Look carefully at those routines.
> > On the other hand FS does not contain applications of echo canceler.
> Correct.
> > Also, I found the discussion in which states GPL is not compatible
> > with the MPL1.1 and it prevent use Oslec (SpanDSP is uses Oslec).
> SpanDSP does NOT contain OSLEC. OSLEC has its origins in the work in
> progress echo canceller in SpanDSP.
>
> Regards,
> Steve
>
Regards,
Steve
Join us at ClueCon 2016 Aug 8-12, 2016
More information about the FreeSWITCH-users
mailing list