Inside the Asterisk

Keyword: core

Asterisk 18.0.0 Released!

Kia Ora! (Or Be Healthy) (Don’t ask – I like greetings from various languages) If you haven’t noticed from the various emails and posts Asterisk 18.0.0 has now been released and is available for download here! As previously mentioned in our blog post for 18.0.0-rc1 this is an LTS release, meaning it will be supported

Read More

A Video Update

Video has been a continued theme of Asterisk for some years now. We put into place the foundation to allow us to do video better, and have over time taken advantage of this and advanced things further. I thought I would take a little bit of time to reflect back on what has been done.

Read More

Asterisk ACN: Advanced Codec Negotiation

Codec negotiation in Asterisk has been one of its deepest darkest secrets.  It’s been around since the beginning and over the past two decades it’s grown and mutated into one of the least understood parts of Asterisk.  With Advanced Codec Negotiation that’s about to change!  One of the Asterisk team’s goals for 2020 was to dig

Read More

Local Channel Multistream and Re-Negotiation Support

When stream support was initially added to Asterisk we did it in the most backwards compatible way possible to ensure that we did not have to modify the entirety of Asterisk. This has allowed us to gradually improve parts of Asterisk as we’ve expanded our stream and video support. To that end the next part

Read More

Adding and Removing Media Streams

When stream support was added to Asterisk it was initially done with the focus being for SFU with a single video stream from each participant with the call starting out with video. This is a use case which is useful for a lot of people and has worked well. Coming soon, however, is the ability

Read More

An Asterisk Video Update

Over the past few years we’ve been working to improve the video support in Asterisk. We initially started with adding stream support[1] in a backwards compatible fashion so we could individually address streams and add/remove them. Next we added support for REMB[2] to be able to control the video bitrate with supported clients. We continued

Read More

PJSIP Configuration Design

A comment that I see frequently when helping people with PJSIP is the lack of a general section (with global options) and how this causes their configuration to be larger than it needs to be. I thought I would take this blog post to explain some of the design choices that went into PJSIP configuration

Read More

Stasis State: Improved Management

Stasis has been a core part of Asterisk for a while now. However, state management within it is a bit precarious. A new stasis_state module has been created to help address some of the complications that arise when attempting to store, and administer state within stasis. Stasis Cache and Topic Pool Typically, the stasis cache

Read More

The case of the blocked AMI Stasis subscription

Manager is an API that has been in Asterisk for almost as long as Asterisk has existed. It provides a mechanism to see what is happening in Asterisk and to also cause things to happen. While the public facing API hasn’t undergone any radical changes since it came into existence the way it works internally

Read More

R.I.P. Media Index Cache!

If you’ve been concerned about slow Asterisk startup times or excessive memory utilization, we’ve got some good news for you.  We’ve eliminated the media index cache that gets built when Asterisk starts. Currently, when Asterisk starts, one of the tasks is to do a scan of /var/lib/asterisk/sounds and build an index of every sound file,

Read More
Scroll to Top