--- audacious-dumb-0.4/audacious-dumb.c 2006-04-21 19:29:53.000000000 +0200 +++ audacious-dumb-0.5-dev/audacious-dumb.c 2006-04-21 23:50:47.000000000 +0200 @@ -168,12 +168,9 @@ } else { - duh_ip.add_vis_pcm(duh_ip.output->written_time(), (duh_file->bits_per_sample == 16) ? FMT_S16_LE : FMT_U8, - duh_file->channels, bytes, data); - while(duh_ip.output->buffer_free() < bytes && duh_file->going && duh_file->seek_to == -1) - g_usleep(10000); - if(duh_file->going && duh_file->seek_to == -1) - duh_ip.output->write_audio(data, bytes); + produce_audio(duh_ip.output->written_time(), (duh_file->bits_per_sample == 16) ? FMT_S16_LE : FMT_U8, + duh_file->channels, bytes, data, &duh_file->going); + duh_file->position += actual_read; } }