mirror of
https://github.com/asterisk/asterisk.git
synced 2025-10-12 15:45:18 +00:00
Merge "channel: Add support for writing to a specific stream."
This commit is contained in:
@@ -670,6 +670,9 @@ struct ast_channel_tech {
|
||||
/*! \brief Write a frame, in standard format (see frame.h) */
|
||||
int (* const write)(struct ast_channel *chan, struct ast_frame *frame);
|
||||
|
||||
/*! \brief Write a frame on a specific stream, in standard format (see frame.h) */
|
||||
int (* const write_stream)(struct ast_channel *chan, int stream_num, struct ast_frame *frame);
|
||||
|
||||
/*! \brief Display or transmit text */
|
||||
int (* const send_text)(struct ast_channel *chan, const char *text);
|
||||
|
||||
@@ -1968,6 +1971,18 @@ int ast_write_video(struct ast_channel *chan, struct ast_frame *frame);
|
||||
*/
|
||||
int ast_write_text(struct ast_channel *chan, struct ast_frame *frame);
|
||||
|
||||
/*!
|
||||
* \brief Write a frame to a stream
|
||||
* This function writes the given frame to the indicated stream on the channel.
|
||||
* \param chan destination channel of the frame
|
||||
* \param stream_num destination stream on the channel
|
||||
* \param frame frame that will be written
|
||||
* \return It returns 0 on success, -1 on failure.
|
||||
* \note If -1 is provided as the stream number and a media frame is provided the
|
||||
* function will write to the default stream of the type of media.
|
||||
*/
|
||||
int ast_write_stream(struct ast_channel *chan, int stream_num, struct ast_frame *frame);
|
||||
|
||||
/*! \brief Send empty audio to prime a channel driver */
|
||||
int ast_prod(struct ast_channel *chan);
|
||||
|
||||
@@ -4768,4 +4783,17 @@ struct ast_stream_topology *ast_channel_get_stream_topology(
|
||||
struct ast_stream_topology *ast_channel_set_stream_topology(
|
||||
struct ast_channel *chan, struct ast_stream_topology *topology);
|
||||
|
||||
/*!
|
||||
* \brief Retrieve the default stream of a specific media type on a channel
|
||||
*
|
||||
* \param channel The channel to get the stream from
|
||||
* \param type The media type of the default stream
|
||||
*
|
||||
* \pre chan is locked
|
||||
*
|
||||
* \retval non-NULL success
|
||||
* \retval NULL failure
|
||||
*/
|
||||
struct ast_stream *ast_channel_get_default_stream(struct ast_channel *chan, enum ast_media_type type);
|
||||
|
||||
#endif /* _ASTERISK_CHANNEL_H */
|
||||
|
Reference in New Issue
Block a user