mirror of
https://github.com/asterisk/asterisk.git
synced 2025-10-07 22:05:25 +00:00
Merged revisions 200991 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4 ........ r200991 | kpfleming | 2009-06-16 12:05:38 -0500 (Tue, 16 Jun 2009) | 11 lines Improve support for media paths that can generate multiple frames at once. There are various media paths in Asterisk (codec translators and UDPTL, primarily) that can generate more than one frame to be generated when the application calling them expects only a single frame. This patch addresses a number of those cases, at least the primary ones to solve the known problems. In addition it removes the broken TRACE_FRAMES support, fixes a number of bugs in various frame-related API functions, and cleans up various code paths affected by these changes. https://reviewboard.asterisk.org/r/175/ ........ git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@201056 65c4cc65-6c06-0410-ace0-fbb531ad65f3
This commit is contained in:
@@ -925,25 +925,32 @@ struct ast_channel * attribute_malloc __attribute__((format(printf, 12, 13)))
|
||||
__FILE__, __LINE__, __FUNCTION__, __VA_ARGS__)
|
||||
|
||||
/*!
|
||||
* \brief Queue an outgoing frame
|
||||
* \brief Queue one or more frames to a channel's frame queue
|
||||
*
|
||||
* \note The channel does not need to be locked before calling this function.
|
||||
*/
|
||||
int ast_queue_frame(struct ast_channel *chan, const struct ast_frame *f);
|
||||
|
||||
/*!
|
||||
* \brief Queue an outgoing frame to the head of the frame queue
|
||||
*
|
||||
* \param chan the channel to queue the frame on
|
||||
* \param f the frame to queue. Note that this frame will be duplicated by
|
||||
* this function. It is the responsibility of the caller to handle
|
||||
* freeing the memory associated with the frame being passed if
|
||||
* \param chan the channel to queue the frame(s) on
|
||||
* \param f the frame(s) to queue. Note that the frame(s) will be duplicated
|
||||
* by this function. It is the responsibility of the caller to handle
|
||||
* freeing the memory associated with the frame(s) being passed if
|
||||
* necessary.
|
||||
*
|
||||
* \retval 0 success
|
||||
* \retval non-zero failure
|
||||
*/
|
||||
int ast_queue_frame_head(struct ast_channel *chan, const struct ast_frame *f);
|
||||
int ast_queue_frame(struct ast_channel *chan, struct ast_frame *f);
|
||||
|
||||
/*!
|
||||
* \brief Queue one or more frames to the head of a channel's frame queue
|
||||
*
|
||||
* \param chan the channel to queue the frame(s) on
|
||||
* \param f the frame(s) to queue. Note that the frame(s) will be duplicated
|
||||
* by this function. It is the responsibility of the caller to handle
|
||||
* freeing the memory associated with the frame(s) being passed if
|
||||
* necessary.
|
||||
*
|
||||
* \retval 0 success
|
||||
* \retval non-zero failure
|
||||
*/
|
||||
int ast_queue_frame_head(struct ast_channel *chan, struct ast_frame *f);
|
||||
|
||||
/*!
|
||||
* \brief Queue a hangup frame
|
||||
|
Reference in New Issue
Block a user