ari/resource_channels: Add 'formats' to channel create/originate
authorGeorge Joseph <gjoseph@digium.com>
Fri, 27 May 2016 19:49:42 +0000 (13:49 -0600)
committerGeorge Joseph <gjoseph@digium.com>
Fri, 3 Jun 2016 22:30:40 +0000 (17:30 -0500)
commita2f820e8dc168e93d00245bd0e4a4a8e8eb64022
treeec4a0bca1826aa4735adecf5778e335c2fc5bd35
parentde298889047deee01afb451ceedaf7b463616fae
ari/resource_channels:  Add 'formats' to channel create/originate

If you create a local channel and don't specify an originator channel
to take capabilities from, we automatically add all audio formats to
the new channel's capabilities. When we try to make the channel
compatible with another, the "best format" functions pick the best
format available, which in this case will be slin192.  While this is
great for preserving quality, it's the worst for performance and
overkill for the vast majority of applications.

In the absense of any other information, adding all formats is the
correct thing to do and it's not always possible to supply an
originator so a new parameter 'formats' has been added to the channel
create/originate functions. It's just a comma separated list of formats
to make availalble for the channel. Example: "ulaw,slin,slin16".
'formats' and 'originator' are mutually exclusive.

To facilitate determination of format names, the format name has been
added to "core show codecs".

ASTERISK-26070 #close

Change-Id: I091b23ecd41c1b4128d85028209772ee139f604b
CHANGES
include/asterisk/codec.h
main/codec.c
main/codec_builtin.c
res/ari/resource_channels.c
res/ari/resource_channels.h
res/res_ari_channels.c
res/res_ari_recordings.c
rest-api/api-docs/channels.json