MODAPP-402

git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@16908 d0543943-73ff-0310-b7d9-9358b9ac24b2
This commit is contained in:
Anthony Minessale 2010-03-04 23:28:06 +00:00
parent 178be32842
commit e0287faa91
1 changed files with 12 additions and 7 deletions

View File

@ -2389,13 +2389,18 @@ static void conference_loop_output(conference_member_t *member)
use_buffer = member->mux_buffer;
low_count = 0;
if ((write_frame.datalen = (uint32_t) switch_buffer_read(use_buffer, write_frame.data, bytes))) {
if (write_frame.datalen && switch_test_flag(member, MFLAG_CAN_HEAR)) {
write_frame.samples = write_frame.datalen / 2;
/* Check for output volume adjustments */
if (member->volume_out_level) {
switch_change_sln_volume(write_frame.data, write_frame.samples, member->volume_out_level);
}
if (write_frame.datalen) {
write_frame.samples = write_frame.datalen / 2;
if( !switch_test_flag(member, MFLAG_CAN_HEAR)) {
memset(write_frame.data, 255, write_frame.datalen);
}
else {
/* Check for output volume adjustments */
if (member->volume_out_level) {
switch_change_sln_volume(write_frame.data, write_frame.samples, member->volume_out_level);
}
}
write_frame.timestamp = timer.samplecount;
if (member->fnode) {
member_add_file_data(member, write_frame.data, write_frame.datalen);