diff --git a/src/mod/applications/mod_conference/mod_conference.c b/src/mod/applications/mod_conference/mod_conference.c index 728ea17462..1721a6d7b6 100644 --- a/src/mod/applications/mod_conference/mod_conference.c +++ b/src/mod/applications/mod_conference/mod_conference.c @@ -4685,7 +4685,7 @@ static void *SWITCH_THREAD_FUNC conference_record_thread_run(switch_thread_t *th //low_count = 0; if ((rlen = (uint32_t) switch_buffer_read(member->mux_buffer, data_buf, data_buf_len))) { - len = (switch_size_t) rlen / sizeof(int16_t); + len = (switch_size_t) rlen / sizeof(int16_t) / conference->channels; no_data = 0; } switch_mutex_unlock(member->audio_out_mutex); @@ -4723,7 +4723,7 @@ static void *SWITCH_THREAD_FUNC conference_record_thread_run(switch_thread_t *th while(!no_data) { switch_mutex_lock(member->audio_out_mutex); if ((rlen = (uint32_t) switch_buffer_read(member->mux_buffer, data_buf, data_buf_len))) { - len = (switch_size_t) rlen / sizeof(int16_t); + len = (switch_size_t) rlen / sizeof(int16_t)/ conference->channels; switch_core_file_write(&fh, data_buf, &len); } else { no_data = 1;