[asterisk-dev] A thread for format work

Matthew Jordan mjordan at digium.com
Tue Apr 29 06:49:32 CDT 2014

On Tue, Apr 29, 2014 at 6:15 AM, Joshua Colp <jcolp at digium.com> wrote:

> Matthew Jordan wrote:
>> (1) Where will the packetization of a format on a channel reside? With
>> the format on the channel? Or with the capability of the channel?
> It "has" to reside in the RTP engine layer and optionally can (but I've
> written it so it is) in the format capabilities layer.
> It has to be in the RTP layer so that the underlying stack can know how to
> set up the smoother so packets contain the right amount of media.
> It can optionally be in format capabilities so that further down the road
> the smoothing logic can be moved out of RTP and into the core.
I'd say it makes sense then for the information to reside in an
ast_format_cap structure. The RTP engine can use that as its storage
mechanism, and it makes it easier to extract to the core if needed.

Storing it in two places could get confusing and lead to errors.


>  (3) Are all these questions moot, and should I just go ahead and add the
>> proposed framing size functions from the wiki:

> The ability to set the framing per-format, globally in a capabilities
> structure, and to get the framing already exists. What doesn't exist is
> adding a format and then setting the framing as two separate API calls.
> That is something that could be added but to make sure you set the right
> format (format capabilities can contain multiple formats of the same codec)
> you have to keep that format around, in which case why not just add/set in
> the same API call?

We may end up needing that API call sometime down the road. For example, if
an Offer arrives with a new ptime attribute, it may be easier to modify an
existing ast_format_cap structure rather than create a new one. But
currently I just need the packetization values.

What API call provides them? I must be missing it, because I couldn't seem
to find it in format_cap.h. (I could be just going crazy however)


Matthew Jordan
Digium, Inc. | Engineering Manager
445 Jan Davis Drive NW - Huntsville, AL 35806 - USA
Check us out at: http://digium.com & http://asterisk.org
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.digium.com/pipermail/asterisk-dev/attachments/20140429/2140227e/attachment.html>

More information about the asterisk-dev mailing list