git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@7540 d0543943-73ff-0310-b7d9-9358b9ac24b2
This commit is contained in:
Anthony Minessale 2008-02-07 17:20:23 +00:00
parent 3624982f79
commit cd054f7d7a
1 changed files with 14 additions and 10 deletions

View File

@ -760,15 +760,12 @@ static void *SWITCH_THREAD_FUNC conference_video_thread_run(switch_thread_t *thr
continue;
}
if (!conference->floor_holder) {
req_iframe = 0;
continue;
}
if (conference->floor_holder != last_member) {
int iframe = 0;
#if 0
switch_core_session_message_t msg = { 0 };
if (!req_iframe) {
/* Tell the channel to request a fresh vid frame */
msg.from = __FILE__;
@ -776,7 +773,8 @@ static void *SWITCH_THREAD_FUNC conference_video_thread_run(switch_thread_t *thr
switch_core_session_receive_message(conference->floor_holder->session, &msg);
req_iframe = 1;
}
#endif
if (vid_frame->codec->implementation->ianacode == 34) { /* h.263 */
iframe = (*((int16_t*)vid_frame->data) >> 12 == 6);
} else if (vid_frame->codec->implementation->ianacode == 115) { /* h.263-1998 */
@ -945,7 +943,7 @@ static void *SWITCH_THREAD_FUNC conference_thread_run(switch_thread_t * thread,
}
if (ready || has_file_data) {
int nt = 0;
//int nt = 0;
/* Build a muxed frame for every member that contains the mixed audio of everyone else */
for (omember = conference->members; omember; omember = omember->next) {
if (has_file_data && file_sample_len) {
@ -996,12 +994,12 @@ static void *SWITCH_THREAD_FUNC conference_thread_run(switch_thread_t * thread,
}
}
}
#if 0
if (nt && conference->not_talking_buf_len && !switch_test_flag(omember, MFLAG_HAS_AUDIO)) {
memcpy(omember->mux_frame, conference->not_talking_buf, conference->not_talking_buf_len);
continue;
}
#endif
bptr = (int16_t *) imember->frame;
muxed = (int16_t *) omember->mux_frame;
@ -1010,7 +1008,7 @@ static void *SWITCH_THREAD_FUNC conference_thread_run(switch_thread_t * thread,
switch_normalize_to_16bit(z);
muxed[x] = (int16_t) z;
}
#if 0
if (total - ready > 1) {
conference->not_talking_buf_len = imember->read;
if (!conference->not_talking_buf) {
@ -1019,6 +1017,7 @@ static void *SWITCH_THREAD_FUNC conference_thread_run(switch_thread_t * thread,
memcpy(conference->not_talking_buf, muxed, conference->not_talking_buf_len);
nt++;
}
#endif
}
}
@ -2590,6 +2589,11 @@ static void conference_list(conference_obj_t * conference, switch_stream_handle_
count++;
}
if (switch_channel_test_flag(switch_core_session_get_channel(member->session), CF_VIDEO)) {
stream->write_function(stream, "%s%s", count ? "|" : "", "video");
count++;
}
if (member == member->conference->floor_holder) {
stream->write_function(stream, "%s%s", count ? "|" : "", "floor");
count++;