SlideShare a Scribd company logo
Silence suppression in Asterisk 1.8 

- Codename Roibos
oej@edvina.net * Twitter @oej
Copyright 2014, Edvina AB, Sollentuna Sweden.All rights reserved.
Want to save at least

40% of the bandwidth used for
media in your Asterisk server?
This work is funded by Bressner Technology GMBH
(bressner.de) that makes a series of Lync integration
products. 



They also distribute Industrial PCs that are excellent as
Asterisk platforms.



Thank you, Bressner, for contributing to Asterisk.
Thank you
If you use Asterisk,

make sure you contribute back

whenever possible.
Thank you Josh and Matt
for the support!
An RTP session
Alice Bob
Typical RTP streams consists of UDP/RTP packets sent

every 20 millisecond. With Asterisk today, we need a constant

stream of packets.
But… In a normal
conversation one person
listens while the other one
speaks.
With silence suppression
Alice Bob
CN
CN
When the sender detects silence, it sends a CN - Comfort
Noise - request frame. After that no RTP traffic will be seen until
the audio comes back.



This saves a lot of bandwidth in a 

normal conversation. Up to 40% bandwidth

savings in a normal call.
When we get no RTP from the other side,

Asterisk needs to produce some noise.
CN is agreed on in SDP Offfer/answer and

is only used if both parties support it.
After a few frames of silence, alerts RTP to send

a CN frame and starts dropping frames.
Listens to outbound audio stream and

detects silence. An Asterisk audiohook and DSP.
The various parts
Silence

detection
Silence

suppression
Comfort Noise

support in SDP and RTP
Noise generator
silencedetection.c
silencedetection.c
chan_sip.c, res_rtp_asterisk.c
channel.c
Configuration
Add the ”cn” codec to allowed codecs in sip.conf
Add ”silencesuppression=yes” 

in the [general] section or device section of sip.conf
Note: If you enable the CN codec but not silence suppression, 

we will accept CN but never send a CN frame. 

This saves some CPU for silence detection, 

but still uses CPU for noice generation.
1.
2.
Download roibos
svn checkout http://svn.digium.com/svn/asterisk/team/oej/roibos-cng-support-1.8"
cd roibos-cng-support-1.8

more README.roibos"
./configure"
make"
make install"
!
Test it and report bugs to the
bug tracker, as indicated in the
README file.
Issue: ASTERISK-23624
What next?
?
If this code get good feedback,

it’s going to get ported to 12 and trunk,

to be integrated into the standard

version of Asterisk."
!
We do need your help testing it to get there.
Due to release policies it can
not be part of Asterisk

1.8 or 11.
F.A.Q.
Why 1.8?
Simply because that’s what we use in the project

this was developed for. Funding for porting it to

other releases is welcome.
Why
chan_sip?
chan_pjsip doesn’t exist in 1.8 (see above). Most of the

work is in the core of Asterisk and will be updated to

other releases after testing and when funding exists.
Why not
IAX2? chan_iax2 does not use RTP media framing.
Other RTP-channels
Most of this work is generic in
Asterisk. Other channels may benefit too,
as long as they are using RTP.
Like chan_pjsip in 12 and the
XMPP Jingle drivers. 

Time to start coding?
Do you need a new

Asterisk feature?
If you need a new Asterisk feature or want to 

get general Asterisk or Kamailio

support or training from Edvina, 

please contact us - info@edvina.net

Roibus will soon be part of our 

version of Asterisk 1.8 - EDVx -

with improved RTCP support, Lync integration

PRACK support, Improved SRTP negotiation, 

RTP packet loss concealment and much more.
http://edvina.net * Twitter @edvina

More Related Content

Viewers also liked

Granada 1878-g
Granada  1878-gGranada  1878-g
Granada 1878-gamfelisa
 
Day 3 2nd_weekcris
Day 3 2nd_weekcrisDay 3 2nd_weekcris
Day 3 2nd_weekcriscristiarnau
 
P O W E R P O I N T C I M DÀ L I G U E S
P O W E R  P O I N T  C I M  DÀ L I G U E SP O W E R  P O I N T  C I M  DÀ L I G U E S
P O W E R P O I N T C I M DÀ L I G U E Sguest1bf92f
 
Job creation with audio
Job creation with audioJob creation with audio
Job creation with audio
TomTex
 
'Advanced' Link Building
'Advanced' Link Building'Advanced' Link Building
'Advanced' Link Building
Ian Lurie
 
Kevlin Henney Effective Design
Kevlin Henney Effective DesignKevlin Henney Effective Design
Kevlin Henney Effective Designdeimos
 
The Social Web & Your Library
The Social Web & Your LibraryThe Social Web & Your Library
The Social Web & Your Library
Bobbi Newman
 
Small Business and Social Media
Small Business and Social MediaSmall Business and Social Media
Small Business and Social Media
Shashi Bellamkonda
 
IA, UX and SEO
IA, UX and SEOIA, UX and SEO
IA, UX and SEO
Ian Lurie
 
Apresiasi NSPM Penataan Ruang (srn-ed07)
Apresiasi NSPM Penataan Ruang (srn-ed07)Apresiasi NSPM Penataan Ruang (srn-ed07)
Apresiasi NSPM Penataan Ruang (srn-ed07)
Surana Ir, MSc, PU-SDA
 
Research 101 - Effective Research with Google
Research 101 - Effective Research with GoogleResearch 101 - Effective Research with Google
Research 101 - Effective Research with GoogleAndrew McCarthy
 
Forgotten Password
Forgotten PasswordForgotten Password
Forgotten PasswordCon Morris
 
Library 101 82208
Library 101 82208Library 101 82208
Library 101 82208
librfun
 
2007 development of a who growth reference for school aged children and adole...
2007 development of a who growth reference for school aged children and adole...2007 development of a who growth reference for school aged children and adole...
2007 development of a who growth reference for school aged children and adole...Raul Rojas
 

Viewers also liked (20)

Granada 1878-g
Granada  1878-gGranada  1878-g
Granada 1878-g
 
Day 3 2nd_weekcris
Day 3 2nd_weekcrisDay 3 2nd_weekcris
Day 3 2nd_weekcris
 
TV lecture: Technology
TV lecture: TechnologyTV lecture: Technology
TV lecture: Technology
 
P O W E R P O I N T C I M DÀ L I G U E S
P O W E R  P O I N T  C I M  DÀ L I G U E SP O W E R  P O I N T  C I M  DÀ L I G U E S
P O W E R P O I N T C I M DÀ L I G U E S
 
Job creation with audio
Job creation with audioJob creation with audio
Job creation with audio
 
'Advanced' Link Building
'Advanced' Link Building'Advanced' Link Building
'Advanced' Link Building
 
Kevlin Henney Effective Design
Kevlin Henney Effective DesignKevlin Henney Effective Design
Kevlin Henney Effective Design
 
The Social Web & Your Library
The Social Web & Your LibraryThe Social Web & Your Library
The Social Web & Your Library
 
Small Business and Social Media
Small Business and Social MediaSmall Business and Social Media
Small Business and Social Media
 
IA, UX and SEO
IA, UX and SEOIA, UX and SEO
IA, UX and SEO
 
Apresiasi NSPM Penataan Ruang (srn-ed07)
Apresiasi NSPM Penataan Ruang (srn-ed07)Apresiasi NSPM Penataan Ruang (srn-ed07)
Apresiasi NSPM Penataan Ruang (srn-ed07)
 
Research 101 - Effective Research with Google
Research 101 - Effective Research with GoogleResearch 101 - Effective Research with Google
Research 101 - Effective Research with Google
 
God
GodGod
God
 
Forgotten Password
Forgotten PasswordForgotten Password
Forgotten Password
 
Top50 Romania
Top50 RomaniaTop50 Romania
Top50 Romania
 
web2.0
web2.0web2.0
web2.0
 
Library 101 82208
Library 101 82208Library 101 82208
Library 101 82208
 
Mikstreet Pr-2010
Mikstreet Pr-2010Mikstreet Pr-2010
Mikstreet Pr-2010
 
2007 development of a who growth reference for school aged children and adole...
2007 development of a who growth reference for school aged children and adole...2007 development of a who growth reference for school aged children and adole...
2007 development of a who growth reference for school aged children and adole...
 
Nahum
NahumNahum
Nahum
 

Similar to roibos-asterisk-bandwidth-saving

Asterisk security with kingasterisk
Asterisk security with kingasteriskAsterisk security with kingasterisk
Asterisk security with kingasterisk
King Asterisk
 
200706 kathmann shared by voip.com.vn
200706 kathmann shared by voip.com.vn200706 kathmann shared by voip.com.vn
200706 kathmann shared by voip.com.vn
Tran Thanh
 
Challenges and experiences with IPTV from a network point of view
Challenges and experiences with IPTV from a network point of viewChallenges and experiences with IPTV from a network point of view
Challenges and experiences with IPTV from a network point of view
brouer
 
Fatah Uddin (072831056)
Fatah Uddin (072831056)Fatah Uddin (072831056)
Fatah Uddin (072831056)mashiur
 
Internetix Video Kills
Internetix Video KillsInternetix Video Kills
Internetix Video Kills
degrumpysmurf
 
DEFCON 23 - Ian Latter - remote access the apt
DEFCON 23 - Ian Latter - remote access the aptDEFCON 23 - Ian Latter - remote access the apt
DEFCON 23 - Ian Latter - remote access the apt
Felipe Prado
 
Jonathan Christensen's Presentation at eComm 2009
Jonathan Christensen's Presentation at eComm 2009Jonathan Christensen's Presentation at eComm 2009
Jonathan Christensen's Presentation at eComm 2009eCommConf
 
Jonathan Christensen's Presentation at eComm 2009
Jonathan Christensen's Presentation at eComm 2009Jonathan Christensen's Presentation at eComm 2009
Jonathan Christensen's Presentation at eComm 2009eCommConf
 
London Video Tech - Adventures in cutting every last millisecond from glass-t...
London Video Tech - Adventures in cutting every last millisecond from glass-t...London Video Tech - Adventures in cutting every last millisecond from glass-t...
London Video Tech - Adventures in cutting every last millisecond from glass-t...
Kieran Kunhya
 
Time Sensitive Networking in the Linux Kernel
Time Sensitive Networking in the Linux KernelTime Sensitive Networking in the Linux Kernel
Time Sensitive Networking in the Linux Kernel
henrikau
 
RF Experiments in Raspberry Pi
RF Experiments in Raspberry PiRF Experiments in Raspberry Pi
RF Experiments in Raspberry Pi
Radiojitter Concepts Lab LLP
 

Similar to roibos-asterisk-bandwidth-saving (20)

Asterisk security with kingasterisk
Asterisk security with kingasteriskAsterisk security with kingasterisk
Asterisk security with kingasterisk
 
Feature satip4
Feature satip4Feature satip4
Feature satip4
 
200706 kathmann shared by voip.com.vn
200706 kathmann shared by voip.com.vn200706 kathmann shared by voip.com.vn
200706 kathmann shared by voip.com.vn
 
Challenges and experiences with IPTV from a network point of view
Challenges and experiences with IPTV from a network point of viewChallenges and experiences with IPTV from a network point of view
Challenges and experiences with IPTV from a network point of view
 
Feature satip4
Feature satip4Feature satip4
Feature satip4
 
Fatah Uddin (072831056)
Fatah Uddin (072831056)Fatah Uddin (072831056)
Fatah Uddin (072831056)
 
Internetix Video Kills
Internetix Video KillsInternetix Video Kills
Internetix Video Kills
 
Feature satip4
Feature satip4Feature satip4
Feature satip4
 
Feature satip4
Feature satip4Feature satip4
Feature satip4
 
DEFCON 23 - Ian Latter - remote access the apt
DEFCON 23 - Ian Latter - remote access the aptDEFCON 23 - Ian Latter - remote access the apt
DEFCON 23 - Ian Latter - remote access the apt
 
Feature satip4
Feature satip4Feature satip4
Feature satip4
 
Jonathan Christensen's Presentation at eComm 2009
Jonathan Christensen's Presentation at eComm 2009Jonathan Christensen's Presentation at eComm 2009
Jonathan Christensen's Presentation at eComm 2009
 
Jonathan Christensen's Presentation at eComm 2009
Jonathan Christensen's Presentation at eComm 2009Jonathan Christensen's Presentation at eComm 2009
Jonathan Christensen's Presentation at eComm 2009
 
Feature satip4
Feature satip4Feature satip4
Feature satip4
 
Feature satip4
Feature satip4Feature satip4
Feature satip4
 
Feature satip4
Feature satip4Feature satip4
Feature satip4
 
London Video Tech - Adventures in cutting every last millisecond from glass-t...
London Video Tech - Adventures in cutting every last millisecond from glass-t...London Video Tech - Adventures in cutting every last millisecond from glass-t...
London Video Tech - Adventures in cutting every last millisecond from glass-t...
 
Time Sensitive Networking in the Linux Kernel
Time Sensitive Networking in the Linux KernelTime Sensitive Networking in the Linux Kernel
Time Sensitive Networking in the Linux Kernel
 
RF Experiments in Raspberry Pi
RF Experiments in Raspberry PiRF Experiments in Raspberry Pi
RF Experiments in Raspberry Pi
 
Icecrypt
IcecryptIcecrypt
Icecrypt
 

More from Olle E Johansson

Cybernode.se: Securing the software supply chain (CRA)
Cybernode.se: Securing the software supply chain (CRA)Cybernode.se: Securing the software supply chain (CRA)
Cybernode.se: Securing the software supply chain (CRA)
Olle E Johansson
 
CRA - overview of vulnerability handling
CRA - overview of vulnerability handlingCRA - overview of vulnerability handling
CRA - overview of vulnerability handling
Olle E Johansson
 
Introduction to the proposed EU cyber resilience act (CRA)
Introduction to the proposed EU cyber resilience act (CRA)Introduction to the proposed EU cyber resilience act (CRA)
Introduction to the proposed EU cyber resilience act (CRA)
Olle E Johansson
 
The birth and death of PSTN
The birth and death of PSTNThe birth and death of PSTN
The birth and death of PSTN
Olle E Johansson
 
WebRTC and Janus intro for FOSS Stockholm January 2019
WebRTC and Janus intro for FOSS Stockholm January 2019WebRTC and Janus intro for FOSS Stockholm January 2019
WebRTC and Janus intro for FOSS Stockholm January 2019
Olle E Johansson
 
Kamailio World 2018: Having fun with new stuff
Kamailio World 2018: Having fun with new stuffKamailio World 2018: Having fun with new stuff
Kamailio World 2018: Having fun with new stuff
Olle E Johansson
 
Kamailio on air
Kamailio on airKamailio on air
Kamailio on air
Olle E Johansson
 
Webrtc overview
Webrtc overviewWebrtc overview
Webrtc overview
Olle E Johansson
 
Realtime communication over a dual stack network
Realtime communication over a dual stack networkRealtime communication over a dual stack network
Realtime communication over a dual stack network
Olle E Johansson
 
The Realtime Story - part 2
The Realtime Story - part 2The Realtime Story - part 2
The Realtime Story - part 2
Olle E Johansson
 
Sip2016 - a talk at VOIP2DAY 2016
Sip2016 - a talk at VOIP2DAY 2016Sip2016 - a talk at VOIP2DAY 2016
Sip2016 - a talk at VOIP2DAY 2016
Olle E Johansson
 
Sips must die, die, die - about TLS usage in the SIP protocol
Sips must die, die, die - about TLS usage in the SIP protocolSips must die, die, die - about TLS usage in the SIP protocol
Sips must die, die, die - about TLS usage in the SIP protocol
Olle E Johansson
 
SIP :: Half outbound (random notes)
SIP :: Half outbound (random notes)SIP :: Half outbound (random notes)
SIP :: Half outbound (random notes)
Olle E Johansson
 
Kamailio World 2016: Update your SIP!
Kamailio World 2016: Update your SIP!Kamailio World 2016: Update your SIP!
Kamailio World 2016: Update your SIP!
Olle E Johansson
 
SIP & TLS - Security in a peer to peer world
SIP & TLS - Security in a peer to peer worldSIP & TLS - Security in a peer to peer world
SIP & TLS - Security in a peer to peer world
Olle E Johansson
 
Tio tester av TLS - Transport Layer Security (TLS-O-MATIC.COM)
Tio tester av TLS - Transport Layer Security (TLS-O-MATIC.COM)Tio tester av TLS - Transport Layer Security (TLS-O-MATIC.COM)
Tio tester av TLS - Transport Layer Security (TLS-O-MATIC.COM)
Olle E Johansson
 
2015 update: SIP and IPv6 issues - staying Happy in SIP
2015 update: SIP and IPv6 issues - staying Happy in SIP2015 update: SIP and IPv6 issues - staying Happy in SIP
2015 update: SIP and IPv6 issues - staying Happy in SIP
Olle E Johansson
 
TCP/IP Geeks Stockholm :: Introduction to IPv6
TCP/IP Geeks Stockholm :: Introduction to IPv6TCP/IP Geeks Stockholm :: Introduction to IPv6
TCP/IP Geeks Stockholm :: Introduction to IPv6
Olle E Johansson
 
Why is Kamailio so different? An introduction.
Why is Kamailio so different? An introduction.Why is Kamailio so different? An introduction.
Why is Kamailio so different? An introduction.
Olle E Johansson
 
RFC 7435 - Opportunistic security - Some protection most of the time
RFC 7435 - Opportunistic security - Some protection most of the timeRFC 7435 - Opportunistic security - Some protection most of the time
RFC 7435 - Opportunistic security - Some protection most of the time
Olle E Johansson
 

More from Olle E Johansson (20)

Cybernode.se: Securing the software supply chain (CRA)
Cybernode.se: Securing the software supply chain (CRA)Cybernode.se: Securing the software supply chain (CRA)
Cybernode.se: Securing the software supply chain (CRA)
 
CRA - overview of vulnerability handling
CRA - overview of vulnerability handlingCRA - overview of vulnerability handling
CRA - overview of vulnerability handling
 
Introduction to the proposed EU cyber resilience act (CRA)
Introduction to the proposed EU cyber resilience act (CRA)Introduction to the proposed EU cyber resilience act (CRA)
Introduction to the proposed EU cyber resilience act (CRA)
 
The birth and death of PSTN
The birth and death of PSTNThe birth and death of PSTN
The birth and death of PSTN
 
WebRTC and Janus intro for FOSS Stockholm January 2019
WebRTC and Janus intro for FOSS Stockholm January 2019WebRTC and Janus intro for FOSS Stockholm January 2019
WebRTC and Janus intro for FOSS Stockholm January 2019
 
Kamailio World 2018: Having fun with new stuff
Kamailio World 2018: Having fun with new stuffKamailio World 2018: Having fun with new stuff
Kamailio World 2018: Having fun with new stuff
 
Kamailio on air
Kamailio on airKamailio on air
Kamailio on air
 
Webrtc overview
Webrtc overviewWebrtc overview
Webrtc overview
 
Realtime communication over a dual stack network
Realtime communication over a dual stack networkRealtime communication over a dual stack network
Realtime communication over a dual stack network
 
The Realtime Story - part 2
The Realtime Story - part 2The Realtime Story - part 2
The Realtime Story - part 2
 
Sip2016 - a talk at VOIP2DAY 2016
Sip2016 - a talk at VOIP2DAY 2016Sip2016 - a talk at VOIP2DAY 2016
Sip2016 - a talk at VOIP2DAY 2016
 
Sips must die, die, die - about TLS usage in the SIP protocol
Sips must die, die, die - about TLS usage in the SIP protocolSips must die, die, die - about TLS usage in the SIP protocol
Sips must die, die, die - about TLS usage in the SIP protocol
 
SIP :: Half outbound (random notes)
SIP :: Half outbound (random notes)SIP :: Half outbound (random notes)
SIP :: Half outbound (random notes)
 
Kamailio World 2016: Update your SIP!
Kamailio World 2016: Update your SIP!Kamailio World 2016: Update your SIP!
Kamailio World 2016: Update your SIP!
 
SIP & TLS - Security in a peer to peer world
SIP & TLS - Security in a peer to peer worldSIP & TLS - Security in a peer to peer world
SIP & TLS - Security in a peer to peer world
 
Tio tester av TLS - Transport Layer Security (TLS-O-MATIC.COM)
Tio tester av TLS - Transport Layer Security (TLS-O-MATIC.COM)Tio tester av TLS - Transport Layer Security (TLS-O-MATIC.COM)
Tio tester av TLS - Transport Layer Security (TLS-O-MATIC.COM)
 
2015 update: SIP and IPv6 issues - staying Happy in SIP
2015 update: SIP and IPv6 issues - staying Happy in SIP2015 update: SIP and IPv6 issues - staying Happy in SIP
2015 update: SIP and IPv6 issues - staying Happy in SIP
 
TCP/IP Geeks Stockholm :: Introduction to IPv6
TCP/IP Geeks Stockholm :: Introduction to IPv6TCP/IP Geeks Stockholm :: Introduction to IPv6
TCP/IP Geeks Stockholm :: Introduction to IPv6
 
Why is Kamailio so different? An introduction.
Why is Kamailio so different? An introduction.Why is Kamailio so different? An introduction.
Why is Kamailio so different? An introduction.
 
RFC 7435 - Opportunistic security - Some protection most of the time
RFC 7435 - Opportunistic security - Some protection most of the timeRFC 7435 - Opportunistic security - Some protection most of the time
RFC 7435 - Opportunistic security - Some protection most of the time
 

Recently uploaded

Free Complete Python - A step towards Data Science
Free Complete Python - A step towards Data ScienceFree Complete Python - A step towards Data Science
Free Complete Python - A step towards Data Science
RinaMondal9
 
PHP Frameworks: I want to break free (IPC Berlin 2024)
PHP Frameworks: I want to break free (IPC Berlin 2024)PHP Frameworks: I want to break free (IPC Berlin 2024)
PHP Frameworks: I want to break free (IPC Berlin 2024)
Ralf Eggert
 
Elevating Tactical DDD Patterns Through Object Calisthenics
Elevating Tactical DDD Patterns Through Object CalisthenicsElevating Tactical DDD Patterns Through Object Calisthenics
Elevating Tactical DDD Patterns Through Object Calisthenics
Dorra BARTAGUIZ
 
Welocme to ViralQR, your best QR code generator.
Welocme to ViralQR, your best QR code generator.Welocme to ViralQR, your best QR code generator.
Welocme to ViralQR, your best QR code generator.
ViralQR
 
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdf
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdfObservability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdf
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdf
Paige Cruz
 
Empowering NextGen Mobility via Large Action Model Infrastructure (LAMI): pav...
Empowering NextGen Mobility via Large Action Model Infrastructure (LAMI): pav...Empowering NextGen Mobility via Large Action Model Infrastructure (LAMI): pav...
Empowering NextGen Mobility via Large Action Model Infrastructure (LAMI): pav...
Thierry Lestable
 
Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...
Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...
Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...
Ramesh Iyer
 
GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...
GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...
GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...
Sri Ambati
 
Accelerate your Kubernetes clusters with Varnish Caching
Accelerate your Kubernetes clusters with Varnish CachingAccelerate your Kubernetes clusters with Varnish Caching
Accelerate your Kubernetes clusters with Varnish Caching
Thijs Feryn
 
UiPath Test Automation using UiPath Test Suite series, part 3
UiPath Test Automation using UiPath Test Suite series, part 3UiPath Test Automation using UiPath Test Suite series, part 3
UiPath Test Automation using UiPath Test Suite series, part 3
DianaGray10
 
DevOps and Testing slides at DASA Connect
DevOps and Testing slides at DASA ConnectDevOps and Testing slides at DASA Connect
DevOps and Testing slides at DASA Connect
Kari Kakkonen
 
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...
James Anderson
 
Transcript: Selling digital books in 2024: Insights from industry leaders - T...
Transcript: Selling digital books in 2024: Insights from industry leaders - T...Transcript: Selling digital books in 2024: Insights from industry leaders - T...
Transcript: Selling digital books in 2024: Insights from industry leaders - T...
BookNet Canada
 
By Design, not by Accident - Agile Venture Bolzano 2024
By Design, not by Accident - Agile Venture Bolzano 2024By Design, not by Accident - Agile Venture Bolzano 2024
By Design, not by Accident - Agile Venture Bolzano 2024
Pierluigi Pugliese
 
Leading Change strategies and insights for effective change management pdf 1.pdf
Leading Change strategies and insights for effective change management pdf 1.pdfLeading Change strategies and insights for effective change management pdf 1.pdf
Leading Change strategies and insights for effective change management pdf 1.pdf
OnBoard
 
FIDO Alliance Osaka Seminar: Overview.pdf
FIDO Alliance Osaka Seminar: Overview.pdfFIDO Alliance Osaka Seminar: Overview.pdf
FIDO Alliance Osaka Seminar: Overview.pdf
FIDO Alliance
 
Essentials of Automations: Optimizing FME Workflows with Parameters
Essentials of Automations: Optimizing FME Workflows with ParametersEssentials of Automations: Optimizing FME Workflows with Parameters
Essentials of Automations: Optimizing FME Workflows with Parameters
Safe Software
 
Securing your Kubernetes cluster_ a step-by-step guide to success !
Securing your Kubernetes cluster_ a step-by-step guide to success !Securing your Kubernetes cluster_ a step-by-step guide to success !
Securing your Kubernetes cluster_ a step-by-step guide to success !
KatiaHIMEUR1
 
How world-class product teams are winning in the AI era by CEO and Founder, P...
How world-class product teams are winning in the AI era by CEO and Founder, P...How world-class product teams are winning in the AI era by CEO and Founder, P...
How world-class product teams are winning in the AI era by CEO and Founder, P...
Product School
 
De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...
De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...
De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...
Product School
 

Recently uploaded (20)

Free Complete Python - A step towards Data Science
Free Complete Python - A step towards Data ScienceFree Complete Python - A step towards Data Science
Free Complete Python - A step towards Data Science
 
PHP Frameworks: I want to break free (IPC Berlin 2024)
PHP Frameworks: I want to break free (IPC Berlin 2024)PHP Frameworks: I want to break free (IPC Berlin 2024)
PHP Frameworks: I want to break free (IPC Berlin 2024)
 
Elevating Tactical DDD Patterns Through Object Calisthenics
Elevating Tactical DDD Patterns Through Object CalisthenicsElevating Tactical DDD Patterns Through Object Calisthenics
Elevating Tactical DDD Patterns Through Object Calisthenics
 
Welocme to ViralQR, your best QR code generator.
Welocme to ViralQR, your best QR code generator.Welocme to ViralQR, your best QR code generator.
Welocme to ViralQR, your best QR code generator.
 
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdf
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdfObservability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdf
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdf
 
Empowering NextGen Mobility via Large Action Model Infrastructure (LAMI): pav...
Empowering NextGen Mobility via Large Action Model Infrastructure (LAMI): pav...Empowering NextGen Mobility via Large Action Model Infrastructure (LAMI): pav...
Empowering NextGen Mobility via Large Action Model Infrastructure (LAMI): pav...
 
Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...
Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...
Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...
 
GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...
GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...
GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...
 
Accelerate your Kubernetes clusters with Varnish Caching
Accelerate your Kubernetes clusters with Varnish CachingAccelerate your Kubernetes clusters with Varnish Caching
Accelerate your Kubernetes clusters with Varnish Caching
 
UiPath Test Automation using UiPath Test Suite series, part 3
UiPath Test Automation using UiPath Test Suite series, part 3UiPath Test Automation using UiPath Test Suite series, part 3
UiPath Test Automation using UiPath Test Suite series, part 3
 
DevOps and Testing slides at DASA Connect
DevOps and Testing slides at DASA ConnectDevOps and Testing slides at DASA Connect
DevOps and Testing slides at DASA Connect
 
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...
 
Transcript: Selling digital books in 2024: Insights from industry leaders - T...
Transcript: Selling digital books in 2024: Insights from industry leaders - T...Transcript: Selling digital books in 2024: Insights from industry leaders - T...
Transcript: Selling digital books in 2024: Insights from industry leaders - T...
 
By Design, not by Accident - Agile Venture Bolzano 2024
By Design, not by Accident - Agile Venture Bolzano 2024By Design, not by Accident - Agile Venture Bolzano 2024
By Design, not by Accident - Agile Venture Bolzano 2024
 
Leading Change strategies and insights for effective change management pdf 1.pdf
Leading Change strategies and insights for effective change management pdf 1.pdfLeading Change strategies and insights for effective change management pdf 1.pdf
Leading Change strategies and insights for effective change management pdf 1.pdf
 
FIDO Alliance Osaka Seminar: Overview.pdf
FIDO Alliance Osaka Seminar: Overview.pdfFIDO Alliance Osaka Seminar: Overview.pdf
FIDO Alliance Osaka Seminar: Overview.pdf
 
Essentials of Automations: Optimizing FME Workflows with Parameters
Essentials of Automations: Optimizing FME Workflows with ParametersEssentials of Automations: Optimizing FME Workflows with Parameters
Essentials of Automations: Optimizing FME Workflows with Parameters
 
Securing your Kubernetes cluster_ a step-by-step guide to success !
Securing your Kubernetes cluster_ a step-by-step guide to success !Securing your Kubernetes cluster_ a step-by-step guide to success !
Securing your Kubernetes cluster_ a step-by-step guide to success !
 
How world-class product teams are winning in the AI era by CEO and Founder, P...
How world-class product teams are winning in the AI era by CEO and Founder, P...How world-class product teams are winning in the AI era by CEO and Founder, P...
How world-class product teams are winning in the AI era by CEO and Founder, P...
 
De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...
De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...
De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...
 

roibos-asterisk-bandwidth-saving

  • 1. Silence suppression in Asterisk 1.8 
 - Codename Roibos oej@edvina.net * Twitter @oej Copyright 2014, Edvina AB, Sollentuna Sweden.All rights reserved. Want to save at least
 40% of the bandwidth used for media in your Asterisk server?
  • 2. This work is funded by Bressner Technology GMBH (bressner.de) that makes a series of Lync integration products. 
 
 They also distribute Industrial PCs that are excellent as Asterisk platforms.
 
 Thank you, Bressner, for contributing to Asterisk. Thank you If you use Asterisk,
 make sure you contribute back
 whenever possible. Thank you Josh and Matt for the support!
  • 3. An RTP session Alice Bob Typical RTP streams consists of UDP/RTP packets sent
 every 20 millisecond. With Asterisk today, we need a constant
 stream of packets. But… In a normal conversation one person listens while the other one speaks.
  • 4. With silence suppression Alice Bob CN CN When the sender detects silence, it sends a CN - Comfort Noise - request frame. After that no RTP traffic will be seen until the audio comes back.
 
 This saves a lot of bandwidth in a 
 normal conversation. Up to 40% bandwidth
 savings in a normal call.
  • 5. When we get no RTP from the other side,
 Asterisk needs to produce some noise. CN is agreed on in SDP Offfer/answer and
 is only used if both parties support it. After a few frames of silence, alerts RTP to send
 a CN frame and starts dropping frames. Listens to outbound audio stream and
 detects silence. An Asterisk audiohook and DSP. The various parts Silence
 detection Silence
 suppression Comfort Noise
 support in SDP and RTP Noise generator silencedetection.c silencedetection.c chan_sip.c, res_rtp_asterisk.c channel.c
  • 6. Configuration Add the ”cn” codec to allowed codecs in sip.conf Add ”silencesuppression=yes” 
 in the [general] section or device section of sip.conf Note: If you enable the CN codec but not silence suppression, 
 we will accept CN but never send a CN frame. 
 This saves some CPU for silence detection, 
 but still uses CPU for noice generation. 1. 2.
  • 7. Download roibos svn checkout http://svn.digium.com/svn/asterisk/team/oej/roibos-cng-support-1.8" cd roibos-cng-support-1.8
 more README.roibos" ./configure" make" make install" ! Test it and report bugs to the bug tracker, as indicated in the README file. Issue: ASTERISK-23624
  • 8. What next? ? If this code get good feedback,
 it’s going to get ported to 12 and trunk,
 to be integrated into the standard
 version of Asterisk." ! We do need your help testing it to get there. Due to release policies it can not be part of Asterisk
 1.8 or 11.
  • 9. F.A.Q. Why 1.8? Simply because that’s what we use in the project
 this was developed for. Funding for porting it to
 other releases is welcome. Why chan_sip? chan_pjsip doesn’t exist in 1.8 (see above). Most of the
 work is in the core of Asterisk and will be updated to
 other releases after testing and when funding exists. Why not IAX2? chan_iax2 does not use RTP media framing.
  • 10. Other RTP-channels Most of this work is generic in Asterisk. Other channels may benefit too, as long as they are using RTP. Like chan_pjsip in 12 and the XMPP Jingle drivers. 
 Time to start coding?
  • 11. Do you need a new
 Asterisk feature? If you need a new Asterisk feature or want to 
 get general Asterisk or Kamailio
 support or training from Edvina, 
 please contact us - info@edvina.net
 Roibus will soon be part of our 
 version of Asterisk 1.8 - EDVx -
 with improved RTCP support, Lync integration
 PRACK support, Improved SRTP negotiation, 
 RTP packet loss concealment and much more. http://edvina.net * Twitter @edvina