summaryrefslogtreecommitdiff
blob: b1cf3cd31def789f3a749f21d40eacbd79a7d1ad (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
--- fldigi-3.23.12/src/main.cxx	2016-06-05 13:57:29.000000000 +0200
+++ fldigi-3.23.15/src/main.cxx	2016-10-13 20:39:48.000000000 +0200
@@ -1521,14 +1556,18 @@
 #define OUT_RATE 8000
 double speed_test(int converter, unsigned repeat)
 {
+	float input_frames[IN_RATE];
+	float output_frames[OUT_RATE];
+
 	SRC_DATA src;
+
 	src.src_ratio = (double)OUT_RATE / IN_RATE;
 	src.input_frames = IN_RATE;
 	src.output_frames = OUT_RATE;
-	src.data_in = new float[src.input_frames];
-	src.data_out = new float[src.output_frames];
+	src.data_in = &input_frames[0];
+	src.data_out = &output_frames[0];
 
-	memset(src.data_in, 0, src.input_frames * sizeof(float));
+	memset(input_frames, 0, sizeof(input_frames));
 
 	// warm up
 	src_simple(&src, converter, 1);
@@ -1547,9 +1586,6 @@
 	clock_gettime(CLOCK_REALTIME, &t1);
 #endif
 
-	delete [] src.data_in;
-	delete [] src.data_out;
-
 	t0 = t1 - t0;
 	return repeat / (t0.tv_sec + t0.tv_nsec/1e9);
 }