Skip to content

Commit

Permalink
ALSA: snd-aloop - fix capture buffer silence
Browse files Browse the repository at this point in the history
In a special case, some old samples are left in the capture ring buffer.
Fix it.

Signed-off-by: Jaroslav Kysela <[email protected]>
  • Loading branch information
perexg committed Sep 29, 2010
1 parent 1446c5f commit 20d9a26
Showing 1 changed file with 4 additions and 2 deletions.
6 changes: 4 additions & 2 deletions sound/drivers/aloop.c
Original file line number Diff line number Diff line change
Expand Up @@ -347,7 +347,7 @@ static void copy_play_buf(struct loopback_pcm *play,
unsigned int bytes)
{
struct snd_pcm_runtime *runtime = play->substream->runtime;
char *src = play->substream->runtime->dma_area;
char *src = runtime->dma_area;
char *dst = capt->substream->runtime->dma_area;
unsigned int src_off = play->buf_pos;
unsigned int dst_off = capt->buf_pos;
Expand Down Expand Up @@ -385,8 +385,10 @@ static void copy_play_buf(struct loopback_pcm *play,
dst_off = (dst_off + size) % capt->pcm_buffer_size;
}

if (clear_bytes > 0)
if (clear_bytes > 0) {
clear_capture_buf(capt, clear_bytes);
capt->silent_size = 0;
}
}

#define BYTEPOS_UPDATE_POSONLY 0
Expand Down

0 comments on commit 20d9a26

Please sign in to comment.