mirror of
https://gitlab.com/qemu-project/qemu
synced 2024-10-15 15:32:51 +00:00
audio: move function audio_pcm_hw_clip_out()
Move the function audio_pcm_hw_clip_out() into the correct section 'Hard voice (playback)'. Reviewed-by: Philippe Mathieu-Daudé <f4bug@amsat.org> Signed-off-by: Volker Rümelin <vr_qemu@t-online.de> Message-Id: <20220301191311.26695-2-vr_qemu@t-online.de> Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
This commit is contained in:
parent
18404ff111
commit
8e56a172a1
|
@ -548,25 +548,6 @@ static size_t audio_pcm_hw_get_live_in(HWVoiceIn *hw)
|
||||||
return live;
|
return live;
|
||||||
}
|
}
|
||||||
|
|
||||||
static void audio_pcm_hw_clip_out(HWVoiceOut *hw, void *pcm_buf, size_t len)
|
|
||||||
{
|
|
||||||
size_t clipped = 0;
|
|
||||||
size_t pos = hw->mix_buf->pos;
|
|
||||||
|
|
||||||
while (len) {
|
|
||||||
st_sample *src = hw->mix_buf->samples + pos;
|
|
||||||
uint8_t *dst = advance(pcm_buf, clipped * hw->info.bytes_per_frame);
|
|
||||||
size_t samples_till_end_of_buf = hw->mix_buf->size - pos;
|
|
||||||
size_t samples_to_clip = MIN(len, samples_till_end_of_buf);
|
|
||||||
|
|
||||||
hw->clip(dst, src, samples_to_clip);
|
|
||||||
|
|
||||||
pos = (pos + samples_to_clip) % hw->mix_buf->size;
|
|
||||||
len -= samples_to_clip;
|
|
||||||
clipped += samples_to_clip;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Soft voice (capture)
|
* Soft voice (capture)
|
||||||
*/
|
*/
|
||||||
|
@ -677,6 +658,25 @@ static size_t audio_pcm_hw_get_live_out (HWVoiceOut *hw, int *nb_live)
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
static void audio_pcm_hw_clip_out(HWVoiceOut *hw, void *pcm_buf, size_t len)
|
||||||
|
{
|
||||||
|
size_t clipped = 0;
|
||||||
|
size_t pos = hw->mix_buf->pos;
|
||||||
|
|
||||||
|
while (len) {
|
||||||
|
st_sample *src = hw->mix_buf->samples + pos;
|
||||||
|
uint8_t *dst = advance(pcm_buf, clipped * hw->info.bytes_per_frame);
|
||||||
|
size_t samples_till_end_of_buf = hw->mix_buf->size - pos;
|
||||||
|
size_t samples_to_clip = MIN(len, samples_till_end_of_buf);
|
||||||
|
|
||||||
|
hw->clip(dst, src, samples_to_clip);
|
||||||
|
|
||||||
|
pos = (pos + samples_to_clip) % hw->mix_buf->size;
|
||||||
|
len -= samples_to_clip;
|
||||||
|
clipped += samples_to_clip;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Soft voice (playback)
|
* Soft voice (playback)
|
||||||
*/
|
*/
|
||||||
|
|
Loading…
Reference in a new issue