From b23ba52807a8e641d26b2ca3ea1daec2d69a9d10 Mon Sep 17 00:00:00 2001 From: Seven Du Date: Wed, 29 Aug 2012 12:59:21 +0800 Subject: [PATCH] FS-7502: video eavesdrop --- src/switch_ivr_async.c | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/src/switch_ivr_async.c b/src/switch_ivr_async.c index a8244076a8..e2705f3614 100644 --- a/src/switch_ivr_async.c +++ b/src/switch_ivr_async.c @@ -1651,7 +1651,17 @@ static switch_bool_t eavesdrop_callback(switch_media_bug_t *bug, void *user_data } } break; + case SWITCH_ABC_TYPE_READ_VIDEO_PING: + if (!bug->ping_frame) break; + if (ep->eavesdropper && switch_core_session_read_lock(ep->eavesdropper) == SWITCH_STATUS_SUCCESS) { + switch_channel_t *channel = switch_core_session_get_channel(ep->eavesdropper); + if (switch_channel_test_flag(channel, CF_VIDEO)) { + switch_core_session_write_video_frame(ep->eavesdropper, bug->ping_frame, SWITCH_IO_FLAG_NONE, 0); + } + switch_core_session_rwunlock(ep->eavesdropper); + } + break; default: break; }