Skip to content
GitLab
Projects
Groups
Snippets
/
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
Menu
Open sidebar
nerrons
purr-data
Commits
3e367a45
Commit
3e367a45
authored
Aug 03, 2018
by
Pranay Gupta
Browse files
double precision changes to the freeverb~ external class
parent
9eb7691c
Changes
3
Show whitespace changes
Inline
Side-by-side
externals/freeverb~/freeverb~.c
View file @
3e367a45
...
...
@@ -143,25 +143,12 @@ typedef struct _freeverb
//#define FIX_DENORM_NAN_FLOAT(v);
//#endif
typedef
union
ulf
{
unsigned
long
ul
;
float
f
;
}
ulf
;
static
inline
float
fix_denorm_nan_float
(
float
v
);
static
inline
float
fix_denorm_nan_float
(
t_float
v
);
static
inline
float
fix_denorm_nan_float
(
float
v
)
static
inline
float
fix_denorm_nan_float
(
t_
float
v
)
{
#ifndef IRIX
ulf
u
;
u
.
f
=
v
;
if
((((
u
.
ul
&
0x7f800000
)
==
0L
)
&&
(
u
.
f
!=
0
.
f
))
||
((
u
.
ul
&
0x7f800000
)
==
0x7f800000
))
/* if the float is denormal or NaN, return 0.0 */
if
(
PD_BADFLOAT
(
v
))
v
=
0
.
0
f
;
//return 0.0f;
#endif //IRIX
return
v
;
}
...
...
externals/pdp/include/pdp_config.h
View file @
3e367a45
...
...
@@ -35,7 +35,7 @@
#define HAVE_PDP_QT 1
/* build pdp_sdl */
/* #undef
HAVE_PDP_SDL
*/
#define
HAVE_PDP_SDL
1
/* build pdp_v4l */
#define HAVE_PDP_V4L 1
...
...
pd/src/d_fft_fftw.c
View file @
3e367a45
...
...
@@ -68,7 +68,7 @@ static cfftw_info *cfftw_getplan(int n,int fwd)
typedef
struct
{
fftwf_plan
plan
;
float
*
in
,
*
out
;
t_
float
*
in
,
*
out
;
}
rfftw_info
;
static
rfftw_info
rfftw_fwd
[
MAXFFT
+
1
-
MINFFT
],
rfftw_bwd
[
MAXFFT
+
1
-
MINFFT
];
...
...
@@ -82,8 +82,8 @@ static rfftw_info *rfftw_getplan(int n,int fwd)
info
=
(
fwd
?
rfftw_fwd
:
rfftw_bwd
)
+
(
logn
-
MINFFT
);
if
(
!
info
->
plan
)
{
info
->
in
=
(
float
*
)
fftwf_malloc
(
sizeof
(
float
)
*
n
);
info
->
out
=
(
float
*
)
fftwf_malloc
(
sizeof
(
float
)
*
n
);
info
->
in
=
(
t_
float
*
)
fftwf_malloc
(
sizeof
(
t_
float
)
*
n
);
info
->
out
=
(
t_
float
*
)
fftwf_malloc
(
sizeof
(
t_
float
)
*
n
);
info
->
plan
=
fftwf_plan_r2r_1d
(
n
,
info
->
in
,
info
->
out
,
fwd
?
FFTW_R2HC
:
FFTW_HC2R
,
FFTW_MEASURE
);
}
return
info
;
...
...
@@ -91,34 +91,34 @@ static rfftw_info *rfftw_getplan(int n,int fwd)
EXTERN
void
mayer_fht
(
float
*
fz
,
int
n
)
EXTERN
void
mayer_fht
(
t_
float
*
fz
,
int
n
)
{
post
(
"FHT: not yet implemented"
);
}
static
void
mayer_do_cfft
(
int
n
,
float
*
fz1
,
float
*
fz2
,
int
fwd
)
static
void
mayer_do_cfft
(
int
n
,
t_
float
*
fz1
,
t_
float
*
fz2
,
int
fwd
)
{
int
i
;
float
*
fz
;
t_
float
*
fz
;
cfftw_info
*
p
=
cfftw_getplan
(
n
,
fwd
);
if
(
!
p
)
return
;
for
(
i
=
0
,
fz
=
(
float
*
)
p
->
in
;
i
<
n
;
i
++
)
for
(
i
=
0
,
fz
=
(
t_
float
*
)
p
->
in
;
i
<
n
;
i
++
)
fz
[
i
*
2
]
=
fz1
[
i
],
fz
[
i
*
2
+
1
]
=
fz2
[
i
];
fftwf_execute
(
p
->
plan
);
for
(
i
=
0
,
fz
=
(
float
*
)
p
->
out
;
i
<
n
;
i
++
)
for
(
i
=
0
,
fz
=
(
t_
float
*
)
p
->
out
;
i
<
n
;
i
++
)
fz1
[
i
]
=
fz
[
i
*
2
],
fz2
[
i
]
=
fz
[
i
*
2
+
1
];
}
EXTERN
void
mayer_fft
(
int
n
,
float
*
fz1
,
float
*
fz2
)
EXTERN
void
mayer_fft
(
int
n
,
t_
float
*
fz1
,
t_
float
*
fz2
)
{
mayer_do_cfft
(
n
,
fz1
,
fz2
,
1
);
}
EXTERN
void
mayer_ifft
(
int
n
,
float
*
fz1
,
float
*
fz2
)
EXTERN
void
mayer_ifft
(
int
n
,
t_
float
*
fz1
,
t_
float
*
fz2
)
{
mayer_do_cfft
(
n
,
fz1
,
fz2
,
0
);
}
...
...
@@ -129,7 +129,7 @@ EXTERN void mayer_ifft(int n, float *fz1, float *fz2)
but it's probably the mayer_fft that should be corrected...
*/
EXTERN
void
mayer_realfft
(
int
n
,
float
*
fz
)
EXTERN
void
mayer_realfft
(
int
n
,
t_
float
*
fz
)
{
int
i
;
rfftw_info
*
p
=
rfftw_getplan
(
n
,
1
);
...
...
@@ -145,7 +145,7 @@ EXTERN void mayer_realfft(int n, float *fz)
fz
[
i
]
=
-
p
->
out
[
i
];
}
EXTERN
void
mayer_realifft
(
int
n
,
float
*
fz
)
EXTERN
void
mayer_realifft
(
int
n
,
t_
float
*
fz
)
{
int
i
;
rfftw_info
*
p
=
rfftw_getplan
(
n
,
0
);
...
...
Write
Preview
Supports
Markdown
0%
Try again
or
attach a new file
.
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment