aboutsummaryrefslogtreecommitdiffstats
path: root/channel.c
diff options
context:
space:
mode:
authormarkster <markster@f38db490-d61c-443f-a65b-d21fe96a405b>2003-06-28 16:40:02 +0000
committermarkster <markster@f38db490-d61c-443f-a65b-d21fe96a405b>2003-06-28 16:40:02 +0000
commit63170c4333b792805df5170e43d516b479a75421 (patch)
tree350126d47aecc8eeeaca9794943d8d2640d37670 /channel.c
parentefde31a9908909b35ee154afe257030a56a6c520 (diff)
Add SIP/RTP video support, video enable app_echo, start on RTCP
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@1128 f38db490-d61c-443f-a65b-d21fe96a405b
Diffstat (limited to 'channel.c')
-rwxr-xr-xchannel.c20
1 files changed, 19 insertions, 1 deletions
diff --git a/channel.c b/channel.c
index 3071113c3..2127a46bd 100755
--- a/channel.c
+++ b/channel.c
@@ -1,4 +1,4 @@
-/*
+ /*
* Asterisk -- A telephony toolkit for Linux.
*
* Channel Management
@@ -1269,6 +1269,17 @@ int ast_prod(struct ast_channel *chan)
return 0;
}
+int ast_write_video(struct ast_channel *chan, struct ast_frame *fr)
+{
+ int res;
+ if (!chan->pvt->write_video)
+ return 0;
+ res = ast_write(chan, fr);
+ if (!res)
+ res = 1;
+ return res;
+}
+
int ast_write(struct ast_channel *chan, struct ast_frame *fr)
{
int res = -1;
@@ -1306,6 +1317,13 @@ int ast_write(struct ast_channel *chan, struct ast_frame *fr)
if (chan->pvt->send_text)
res = chan->pvt->send_text(chan, (char *) fr->data);
break;
+ case AST_FRAME_VIDEO:
+ /* XXX Handle translation of video codecs one day XXX */
+ if (chan->pvt->write_video)
+ res = chan->pvt->write_video(chan, fr);
+ else
+ res = 0;
+ break;
default:
if (chan->pvt->write) {
if (chan->pvt->writetrans) {