diff options
| author | trialuser02 <trialuser02@90c681e8-e032-0410-971d-27865f9a5e38> | 2015-12-26 11:05:16 +0000 |
|---|---|---|
| committer | trialuser02 <trialuser02@90c681e8-e032-0410-971d-27865f9a5e38> | 2015-12-26 11:05:16 +0000 |
| commit | 5dbe189907818b3c599e63caa22ed16e43e674b9 (patch) | |
| tree | 2110def0cbf8b47baeb0613462b917ec2933c112 /src/plugins/Ui/qsui/inlines.h | |
| parent | c3b05ebdc87be03e1cce5ccc5aa9398db3054f53 (diff) | |
| download | qmmp-5dbe189907818b3c599e63caa22ed16e43e674b9.tar.gz qmmp-5dbe189907818b3c599e63caa22ed16e43e674b9.tar.bz2 qmmp-5dbe189907818b3c599e63caa22ed16e43e674b9.zip | |
qsui: fixed build
git-svn-id: http://svn.code.sf.net/p/qmmp-dev/code/trunk/qmmp@5886 90c681e8-e032-0410-971d-27865f9a5e38
Diffstat (limited to 'src/plugins/Ui/qsui/inlines.h')
| -rw-r--r-- | src/plugins/Ui/qsui/inlines.h | 31 |
1 files changed, 25 insertions, 6 deletions
diff --git a/src/plugins/Ui/qsui/inlines.h b/src/plugins/Ui/qsui/inlines.h index 39b81bd57..8203de336 100644 --- a/src/plugins/Ui/qsui/inlines.h +++ b/src/plugins/Ui/qsui/inlines.h @@ -4,13 +4,20 @@ // warranty, or liability of any kind. // +/* + modifications compared to original code: + using float format +*/ + #ifndef INLINES_H #define INLINES_H #include "fft.h" +#include <math.h> +#include <string.h> // *fast* convenience functions -static inline void calc_freq(short* dest, short *src) +static inline void calc_freq(short* dest, float *src) { static fft_state *state = NULL; float tmp_out[257]; @@ -25,11 +32,17 @@ static inline void calc_freq(short* dest, short *src) dest[i] = ((int) sqrt(tmp_out[i + 1])) >> 8; } -static inline void stereo16_from_multichannel(register short *l, - register short *r, - register short *s, +static inline void stereo_from_multichannel(float *l, + float *r, + float *s, long cnt, int chan) { + if(chan == 1) + { + memcpy(l, s, cnt * sizeof(float)); + memcpy(r, s, cnt * sizeof(float)); + return; + } while (cnt > 0) { l[0] = s[0]; @@ -41,10 +54,16 @@ static inline void stereo16_from_multichannel(register short *l, } } -static inline void mono16_from_multichannel(register short *l, - register short *s, +static inline void mono_from_multichannel(float *l, + float *s, long cnt, int chan) { + if(chan == 1) + { + memcpy(l, s, cnt * sizeof(float)); + return; + } + while (cnt > 0) { l[0] = s[0]; |
