Robert Bielik wrote: > It works nicely if I either: > 3. Pipe capture -> playback with a larger buffer size, such as 64. It's possible that the hardware does not actually handles size 32 correctly. > The rendering thread is (pseudo code): > > while (true) { > if(capture_active) { > snd_pcm_wait(capture_handle, timeout); > read_pcm_data_into_buffer(capture_handle, input_buffer); > } > do_callback(input_buffer, output_buffer); > if (playback_active) { > snd_pcm_wait(playback_handle, timeout); > write_pcm_data_from_buffer(playback_handle, output_buffer); > } > } Are you filling the output before the loop? Regards, Clemens ------------------------------------------------------------------------------ Check out the vibrant tech community on one of the world's most engaging tech sites, Slashdot.org! http://sdm.link/slashdot _______________________________________________ Alsa-user mailing list Alsa-user@xxxxxxxxxxxxxxxxxxxxx https://lists.sourceforge.net/lists/listinfo/alsa-user