FS-5930 --resolve

This commit is contained in:
Anthony Minessale 2013-11-02 10:31:23 -05:00
parent 456f69a62b
commit b5ac4fdb88
1 changed files with 5 additions and 5 deletions

View File

@ -311,20 +311,20 @@ static void *SWITCH_THREAD_FUNC read_stream_thread(switch_thread_t *thread, void
if (!is_open || used >= source->prebuf || (source->total && used > source->samples * 2)) { if (!is_open || used >= source->prebuf || (source->total && used > source->samples * 2)) {
used = switch_buffer_read(audio_buffer, dist_buf, source->samples * 2); used = switch_buffer_read(audio_buffer, dist_buf, source->samples * 2);
if (source->total) { if (source->total) {
uint32_t used = 0; uint32_t bused = 0;
switch_mutex_lock(source->mutex); switch_mutex_lock(source->mutex);
for (cp = source->context_list; cp && RUNNING; cp = cp->next) { for (cp = source->context_list; cp && RUNNING; cp = cp->next) {
if (switch_test_flag(cp->handle, SWITCH_FILE_CALLBACK)) { if (switch_test_flag(cp->handle, SWITCH_FILE_CALLBACK)) {
continue; continue;
} }
switch_mutex_lock(cp->audio_mutex); switch_mutex_lock(cp->audio_mutex);
used = switch_buffer_inuse(cp->audio_buffer); bused = switch_buffer_inuse(cp->audio_buffer);
if (used > source->samples * 768) { if (bused > source->samples * 768) {
switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_DEBUG1, "Flushing Stream Handle Buffer [%s() %s:%d] size: %u samples: %ld\n", switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_DEBUG1, "Flushing Stream Handle Buffer [%s() %s:%d] size: %u samples: %ld\n",
cp->func, cp->file, cp->line, used, (long)source->samples); cp->func, cp->file, cp->line, bused, (long)source->samples);
switch_buffer_zero(cp->audio_buffer); switch_buffer_zero(cp->audio_buffer);
} else { } else {
switch_buffer_write(cp->audio_buffer, dist_buf, used); switch_buffer_write(cp->audio_buffer, dist_buf, bused);
} }
switch_mutex_unlock(cp->audio_mutex); switch_mutex_unlock(cp->audio_mutex);
} }