summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/aiorecord.cc10
1 files changed, 5 insertions, 5 deletions
diff --git a/src/aiorecord.cc b/src/aiorecord.cc
index 7befa64..ff6eb74 100644
--- a/src/aiorecord.cc
+++ b/src/aiorecord.cc
@@ -177,11 +177,11 @@ int main(int argc, char *argv[])
return 1;
}
- short avg = 0;
+ double avg = 0;
while(running) {
char pcm[1024];
size_t size = src->readSamples(pcm, sizeof(pcm));
- (void)fwrite(pcm, size, 1, fp);
+ size_t w = fwrite(pcm, size, 1, fp); (void)w;
if(verbose) {
short *p = (short*)pcm;
size_t sz = size / sizeof(short);
@@ -191,13 +191,13 @@ int main(int argc, char *argv[])
}
char bar[33];
char spc[33];
- avg = avg * 0.9 + max * 0.1;
- size_t pos = avg / 1000;
+ avg = avg * 0.99 + (double)max * 0.01;
+ size_t pos = (int)avg / 1000;
memset(bar, '#', sizeof(bar));
memset(spc, ' ', sizeof(spc));
bar[pos] = '\0';
spc[sizeof(spc) - pos] = '\0';
- printf("\rVU [% 6d]: %s%s", avg, bar, spc);
+ printf("\rVU [% 6d]: %s%s", (int)avg, bar, spc);
fflush(stdout);
}
}