[Asterisk-code-review] chan pjsip: Multistream: Actually do it. (asterisk[master])

Joshua Colp asteriskteam at digium.com
Tue Jun 20 05:52:21 CDT 2017


Hello Jenkins2, 

I'd like you to reexamine a change. Please visit

    https://gerrit.asterisk.org/5876

to look at the new patch set (#8).

Change subject: chan_pjsip: Multistream: Actually do it.
......................................................................

chan_pjsip: Multistream: Actually do it.

This change allows chan_pjsip to negotiate and use
multiple streams on both incoming and outgoing SDP
negotiation.

For both offering and answering we will restrict what
streams are allowed by declining when the maximum
number of configured streams is reached. This allows
us to maintain the proper ordering for streams.

When sending an offer we will use the topology that
has been provided by a calling party or what has
been provided by an application.

When sending an answer we will accept how ever many
streams has been configured as the maximum and decline
any further streams. In the future it will be up to
the application currently handling the channel to
provide a response topology back.

When both of these negotiations are complete the
pending media updates are applied to PJSIP and the
Asterisk channel. This results in an updated stream
topology which is communicated to the application
currently handling the channel.

Some other bonus things as a result of this is that
some of the logic for handling media reading and writing
is now done via an API which allows it to more easily
live outside of chan_pjsip itself.

The res_pjsip_sdp_rtp has now also gained basic support
for declining media streams.

For the case of direct media, however, only the first
audio and video streams will be directly reinvited. In
the future when bridge_native_rtp is updated to understand
streams and the RTP glue API extended this could be improved.

Change-Id: I8afd8dd2eb538806a39b887af0abd046266e14c7
---
M channels/chan_pjsip.c
M channels/pjsip/cli_commands.c
M channels/pjsip/dialplan_functions.c
M channels/pjsip/include/chan_pjsip.h
M include/asterisk/res_pjsip_session.h
M include/asterisk/stream.h
M main/channel.c
M main/stream.c
M res/res_pjsip_sdp_rtp.c
M res/res_pjsip_session.c
M res/res_pjsip_session.exports.in
M res/res_pjsip_t38.c
12 files changed, 975 insertions(+), 470 deletions(-)


  git pull ssh://gerrit.asterisk.org:29418/asterisk refs/changes/76/5876/8
-- 
To view, visit https://gerrit.asterisk.org/5876
To unsubscribe, visit https://gerrit.asterisk.org/settings

Gerrit-Project: asterisk
Gerrit-Branch: master
Gerrit-MessageType: newpatchset
Gerrit-Change-Id: I8afd8dd2eb538806a39b887af0abd046266e14c7
Gerrit-Change-Number: 5876
Gerrit-PatchSet: 8
Gerrit-Owner: Joshua Colp <jcolp at digium.com>
Gerrit-Reviewer: Jenkins2
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.digium.com/pipermail/asterisk-code-review/attachments/20170620/a5911aec/attachment-0001.html>


More information about the asterisk-code-review mailing list