diff options
Diffstat (limited to 'bridges')
-rw-r--r-- | bridges/bridge_native_rtp.c | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/bridges/bridge_native_rtp.c b/bridges/bridge_native_rtp.c index 02b094b31..9f99d55c0 100644 --- a/bridges/bridge_native_rtp.c +++ b/bridges/bridge_native_rtp.c @@ -288,6 +288,12 @@ static struct ast_frame *native_rtp_framehook(struct ast_channel *chan, struct a return f; } +/*! \brief Callback function which informs upstream if we are consuming a frame of a specific type */ +static int native_rtp_framehook_consume(void *data, enum ast_frame_type type) +{ + return (type == AST_FRAME_CONTROL ? 1 : 0); +} + /*! \brief Internal helper function which checks whether the channels are compatible with our native bridging */ static int native_rtp_bridge_capable(struct ast_channel *chan) { @@ -392,6 +398,7 @@ static int native_rtp_bridge_framehook_attach(struct ast_bridge_channel *bridge_ static struct ast_framehook_interface hook = { .version = AST_FRAMEHOOK_INTERFACE_VERSION, .event_cb = native_rtp_framehook, + .consume_cb = native_rtp_framehook_consume, }; if (!data) { |