aboutsummaryrefslogtreecommitdiffstats
path: root/include/asterisk
diff options
context:
space:
mode:
Diffstat (limited to 'include/asterisk')
-rw-r--r--include/asterisk/frame.h4
-rw-r--r--include/asterisk/rtp.h7
2 files changed, 7 insertions, 4 deletions
diff --git a/include/asterisk/frame.h b/include/asterisk/frame.h
index 5cfe0eb0a..7f45d91f0 100644
--- a/include/asterisk/frame.h
+++ b/include/asterisk/frame.h
@@ -85,7 +85,8 @@ struct ast_codec_pref {
\arg \b HOLD Call is placed on hold
\arg \b UNHOLD Call is back from hold
\arg \b VIDUPDATE Video update requested
- \arg \b SRCUPDATE The source of media has changed
+ \arg \b SRCUPDATE The source of media has changed (RTP marker bit must change)
+ \arg \b SRCCHANGE Media source has changed (RTP marker bit and SSRC must change)
*/
@@ -290,6 +291,7 @@ enum ast_control_frame_type {
AST_CONTROL_UNHOLD = 17, /*!< Indicate call is left from hold */
AST_CONTROL_VIDUPDATE = 18, /*!< Indicate video frame update */
AST_CONTROL_SRCUPDATE = 20, /*!< Indicate source of media has changed */
+ AST_CONTROL_SRCCHANGE = 21, /*!< Media has changed and requires a new RTP SSRC */
};
#define AST_SMOOTHER_FLAG_G729 (1 << 0)
diff --git a/include/asterisk/rtp.h b/include/asterisk/rtp.h
index fada0bcb4..955e8bf99 100644
--- a/include/asterisk/rtp.h
+++ b/include/asterisk/rtp.h
@@ -179,10 +179,11 @@ int ast_rtp_sendcng(struct ast_rtp *rtp, int level);
int ast_rtp_settos(struct ast_rtp *rtp, int tos);
-/*! \brief When changing sources, don't generate a new SSRC */
-void ast_rtp_set_constantssrc(struct ast_rtp *rtp);
+/*! \brief Indicate that we need to set the marker bit */
+void ast_rtp_update_source(struct ast_rtp *rtp);
-void ast_rtp_new_source(struct ast_rtp *rtp);
+/*! \brief Indicate that we need to set the marker bit and change the ssrc */
+void ast_rtp_change_source(struct ast_rtp *rtp);
/*! \brief Setting RTP payload types from lines in a SDP description: */
void ast_rtp_pt_clear(struct ast_rtp* rtp);