mirror of
https://github.com/alsa-project/alsa-lib.git
synced 2025-10-29 05:40:25 -04:00
A small cleanup to 32-bit mix routine as Abramo suggested
This commit is contained in:
parent
6235dab516
commit
87538939bd
1 changed files with 6 additions and 6 deletions
|
|
@ -197,7 +197,7 @@ static void mix_areas2(unsigned int size,
|
|||
register signed int sample, old_sample;
|
||||
|
||||
while (size-- > 0) {
|
||||
sample = *src >> 8;
|
||||
sample = *src / 256;
|
||||
old_sample = *sum;
|
||||
if (*dst == 0)
|
||||
sample -= old_sample;
|
||||
|
|
@ -205,12 +205,12 @@ static void mix_areas2(unsigned int size,
|
|||
do {
|
||||
old_sample = *sum;
|
||||
if (old_sample > 0x7fffff)
|
||||
sample = 0x7fffff;
|
||||
sample = 0x7fffffff;
|
||||
else if (old_sample < -0x800000)
|
||||
sample = -0x800000;
|
||||
sample = -0x80000000;
|
||||
else
|
||||
sample = old_sample;
|
||||
*dst = sample << 8;
|
||||
sample = old_sample * 256;
|
||||
*dst = sample;
|
||||
} while (*sum != old_sample);
|
||||
((char *)src) += src_step;
|
||||
((char *)dst) += dst_step;
|
||||
|
|
@ -709,7 +709,7 @@ static snd_pcm_sframes_t snd_pcm_dmix_forward(snd_pcm_t *pcm, snd_pcm_uframes_t
|
|||
{
|
||||
snd_pcm_sframes_t avail;
|
||||
|
||||
avail = snd_pcm_mmap_avail(pcm);
|
||||
avail = snd_pcm_mmap_playback_avail(pcm);
|
||||
if (avail < 0)
|
||||
return 0;
|
||||
if (frames > (snd_pcm_uframes_t)avail)
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue