Echo during call (no echo cancellation) #9

Open
opened 2022-09-16 21:08:10 +00:00 by shadowcaster3 · 2 comments
Collaborator

Tested with NMT-450.

Setup:
osmocom-analog, osmo-cc-sip-endpoint, asterisk as sip pbx.
All network communications running at loopback interface (127.0.0.1/8)
Two nokia nmt-450 phones, various SIP clients.

Problem:
Calls from MS to MS, or from SIP to MS in any direction produce echo and (sometimes) goes into positive feedback loop. Leads to audio distortion.

Cause:
Analog phones have sensitive microphones that pick up sound from the phone speaker.
Analog phones don't implement echo cancellation due to limited processing capacity.
Echo cancellation should be implemented on network side.
SIP (digital telephony) are incapable of echo cancellation on SIP trunks due to design.

Proposed
Implement echo cancellation algorithm in osmocom-analog.

See attached files for SIP session tcpdump file and wav file for test call (call to asterisk voicemail number to eliminate all other possible causes).

Tested with NMT-450. Setup: osmocom-analog, osmo-cc-sip-endpoint, asterisk as sip pbx. All network communications running at loopback interface (127.0.0.1/8) Two nokia nmt-450 phones, various SIP clients. Problem: Calls from MS to MS, or from SIP to MS in any direction produce echo and (sometimes) goes into positive feedback loop. Leads to audio distortion. Cause: Analog phones have sensitive microphones that pick up sound from the phone speaker. Analog phones don't implement echo cancellation due to limited processing capacity. Echo cancellation should be implemented on network side. SIP (digital telephony) are incapable of echo cancellation on SIP trunks due to design. Proposed Implement echo cancellation algorithm in osmocom-analog. See attached files for SIP session tcpdump file and wav file for test call (call to asterisk voicemail number to eliminate all other possible causes).
Author
Collaborator

Best open source GPL v2 line echo canceler implementaion is OSLEC (open-source line echo canceler)
It's a part of Linux kernel (module):
https://github.com/torvalds/linux/tree/master/drivers/misc/echo

Oslec Echo Canceller home page:
http://www.rowetel.com/?page_id=454

Best open source GPL v2 line echo canceler implementaion is OSLEC (open-source line echo canceler) It's a part of Linux kernel (module): https://github.com/torvalds/linux/tree/master/drivers/misc/echo Oslec Echo Canceller home page: http://www.rowetel.com/?page_id=454
jolly was assigned by laforge 2022-09-18 11:25:44 +00:00
Author
Collaborator

echo canceller are a necessity when analog is converted to digital, and because all signal processing in osmocom-analog is digital it's required to implement echo cancelling on the edge in order to achieve proper speech transmission without positive gain loop.
Echo canceler implemented in linux echo kernel module confronts to at least some G.168 International Telecommunication Union recommendation for digital network echo canceller tests. ( https://www.itu.int/rec/T-REC-G.168/en )

echo canceller are a necessity when analog is converted to digital, and because all signal processing in osmocom-analog is digital it's required to implement echo cancelling on the edge in order to achieve proper speech transmission without positive gain loop. Echo canceler implemented in linux echo kernel module confronts to at least some G.168 International Telecommunication Union recommendation for digital network echo canceller tests. ( https://www.itu.int/rec/T-REC-G.168/en )
Sign in to join this conversation.
No Label
No Milestone
No project
No Assignees
1 Participants
Notifications
Due Date
The due date is invalid or out of range. Please use the format 'yyyy-mm-dd'.

No due date set.

Dependencies

No dependencies set.

Reference: cellular-infrastructure/osmocom-analog#9
No description provided.