From 1061539b75811d9115dcbc0be46967515bd9e2d1 Mon Sep 17 00:00:00 2001 From: Lorenzo Miniero Date: Tue, 29 Nov 2016 16:31:21 +0100 Subject: media: Add experimental support for RTCP feedback. This change adds experimental support for providing RTCP feedback information to codec modules so they can dynamically change themselves based on conditions. ASTERISK-26584 Change-Id: Ifd6aa77fb4a7ff546c6025900fc2baf332c31857 --- main/translate.c | 11 +++++++++++ 1 file changed, 11 insertions(+) (limited to 'main/translate.c') diff --git a/main/translate.c b/main/translate.c index fa606e71b..168a72a4b 100644 --- a/main/translate.c +++ b/main/translate.c @@ -530,6 +530,17 @@ struct ast_frame *ast_translate(struct ast_trans_pvt *path, struct ast_frame *f, long len; int seqno; + if (f->frametype == AST_FRAME_RTCP) { + /* Just pass the feedback to the right callback, if it exists. + * This "translation" does nothing so return a null frame. */ + struct ast_trans_pvt *tp; + for (tp = p; tp; tp = tp->next) { + if (tp->t->feedback) + tp->t->feedback(tp, f); + } + return &ast_null_frame; + } + has_timing_info = ast_test_flag(f, AST_FRFLAG_HAS_TIMING_INFO); ts = f->ts; len = f->len; -- cgit v1.2.3