Changes between Version 11 and Version 12 of media-flow


Ignore:
Timestamp:
Jul 11, 2019 4:07:45 AM (16 months ago)
Author:
nanang
Comment:

Media Session was removed from PJMEDIA long time ago, so just removed here too.

Legend:

Unmodified
Added
Removed
Modified
  • media-flow

    v11 v12  
    1 = Understanding Media Flow = 
     1= Understanding Audio Media Flow = 
    22 
    33The diagram below shows the media interconnection of multiple parts in a typical call: 
     
    2020The media interconnection above would be set up as follows: 
    2121 
    22  * during application initialization, application creates the Sound Device Port and the Conference Bridge. These two objects would normally remain throughout the life time of the application. 
    23  * when making outgoing call or receiving incoming call, application would create a media transport instance (normally it's an [http://www.pjsip.org/pjmedia/docs/html/group__PJMEDIA__TRANSPORT__UDP.htm UDP Media Transport]). From this media transport, application can put its listening address and port number in the local SDP to be given to the INVITE session. 
    24  * when the offer/answer session in the call is established (and application's {{{on_media_update()}}} callback is called), application creates a [http://www.pjsip.org/pjmedia/docs/html/group__PJMED__SES.htm Media Session Info] from both local and remote SDP found in the INVITE session. 
    25  * from the Media Session Info above, application creates a [http://www.pjsip.org/pjmedia/docs/html/group__PJMED__SES.htm Media Session], specifying also the Media Transport created earlier. This process will create Media Streams according to the codec settings and other parameters in the Media Session Info, and also establish ''connection'' between the Media Stream and the Media Transport. 
    26  * application retrieve the Media (Audio) Stream from the Media Session, and register this Media Stream to the conference bridge. 
     22 * during application initialization, application creates the Conference Bridge, which would normally remains throughout the life time of the application. 
     23 * when making outgoing call or receiving incoming call, application would create a Sound Device Port and a media transport instance (normally it's an [http://www.pjsip.org/pjmedia/docs/html/group__PJMEDIA__TRANSPORT__UDP.htm UDP Media Transport]). From this media transport, application can put its listening address and port number in the local SDP to be given to the INVITE session. 
     24 * when the offer/answer session in the call is established (and application's {{{on_media_update()}}} callback is called), application creates a [https://www.pjsip.org/docs/latest/pjmedia/docs/html/structpjmedia__stream__info.htm Media Stream Info] from both local and remote SDP found in the INVITE session. 
     25 * from the Media Stream Info above, application creates a [https://www.pjsip.org/docs/latest/pjmedia/docs/html/group__PJMED__STRM.htm Media Stream], specifying also the Media Transport created earlier. This process will create Media Streams according to the codec settings and other parameters in the Media Stream Info, and also establish ''connection'' between the Media Stream and the Media Transport. 
     26 * application registers this Media Stream to the conference bridge. 
    2727 * application connects the Media Stream slot in the bridge to other slots such as slot zero which normally is connected to the sound device. 
    2828