tracktion-engine
3.0-10-g034fdde4aa5
Tracktion Engine — High level data model for audio applications
« « « Anklang Documentation
Loading...
Searching...
No Matches
tracktion_engine
tracktion_engine_timestretch.cpp
Go to the documentation of this file.
1
/*
2
,--. ,--. ,--. ,--.
3
,-' '-.,--.--.,--,--.,---.| |,-.,-' '-.`--' ,---. ,--,--, Copyright 2024
4
'-. .-'| .--' ,-. | .--'| /'-. .-',--.| .-. || \ Tracktion Software
5
| | | | \ '-' \ `--.| \ \ | | | |' '-' '| || | Corporation
6
`---' `--' `--`--'`---'`--'`--' `---' `--' `---' `--''--' www.tracktion.com
7
8
Tracktion Engine uses a GPL/commercial licence - see LICENCE.md for details.
9
*/
10
11
#if ! JUCE_PROJUCER_LIVE_BUILD
12
13
#include "
tracktion_engine.h
"
14
15
#if TRACKTION_ENABLE_TIMESTRETCH_ELASTIQUE
16
#ifdef __GNUC__
17
#pragma GCC diagnostic push
18
#pragma GCC diagnostic ignored "-Wextra-semi"
19
#endif
20
21
// If you get a build error here you'll need to add the Elastique SDK to your header search path!
22
#include "elastique_pro/incl/elastiqueProV3API.h"
23
#include "elastique_pro/incl/elastiqueProV3DirectAPI.h"
24
25
#ifdef __GNUC__
26
#pragma GCC diagnostic pop
27
#endif
28
#endif
29
30
#ifdef __clang__
31
#pragma clang diagnostic push
32
#pragma clang diagnostic ignored "-Wsign-conversion"
33
#pragma clang diagnostic ignored "-Wunused-parameter"
34
#pragma clang diagnostic ignored "-Wshadow"
35
#pragma clang diagnostic ignored "-Wshadow-all"
36
#pragma clang diagnostic ignored "-Wmacro-redefined"
37
#pragma clang diagnostic ignored "-Wconversion"
38
#pragma clang diagnostic ignored "-Wunused"
39
#pragma clang diagnostic ignored "-Wcast-align"
40
#if __has_warning("-Wzero-as-null-pointer-constant")
41
#pragma clang diagnostic ignored "-Wzero-as-null-pointer-constant"
42
#endif
43
#pragma clang diagnostic ignored "-Wextra-semi"
44
#pragma clang diagnostic ignored "-Wextra-semi"
45
#pragma clang diagnostic ignored "-Wmissing-prototypes"
46
#pragma clang diagnostic ignored "-Wfloat-equal"
47
#endif
48
49
#ifdef __GNUC__
50
#pragma GCC diagnostic push
51
#pragma GCC diagnostic ignored "-Wsign-conversion"
52
#pragma GCC diagnostic ignored "-Wshadow"
53
#if ! __clang__
54
#pragma GCC diagnostic ignored "-Wunused-but-set-variable"
55
#pragma GCC diagnostic ignored "-Wzero-as-null-pointer-constant"
56
#endif
57
#pragma GCC diagnostic ignored "-Wunused-variable"
58
#pragma GCC diagnostic ignored "-Wunused-parameter"
59
#pragma GCC diagnostic ignored "-Wpedantic"
60
#pragma GCC diagnostic ignored "-Wunknown-pragmas"
61
#pragma GCC diagnostic ignored "-Wfloat-equal"
62
#endif
63
64
#ifdef JUCE_MSVC
65
#pragma warning (push)
66
#pragma warning (disable: 4005 4189 4189 4267 4702 4458 4100)
67
#endif
68
69
#include <
tracktion_core/tracktion_TestConfig.h
>
70
71
#include "
timestretch/tracktion_TimeStretch.cpp
"
72
//#include "timestretch/tracktion_TimeStretch.test.cpp"
73
#include "
timestretch/tracktion_ReadAheadTimeStretcher.cpp
"
74
75
namespace
tracktion
{
inline
namespace
engine
76
{
77
#include "3rd_party/soundtouch/source/SoundTouch/BPMDetect.cpp"
78
#undef max
79
#include "3rd_party/soundtouch/source/SoundTouch/PeakFinder.cpp"
80
#undef max
81
#include "3rd_party/soundtouch/source/SoundTouch/FIFOSampleBuffer.cpp"
82
83
#if TRACKTION_ENABLE_TIMESTRETCH_SOUNDTOUCH
84
#include "3rd_party/soundtouch/source/SoundTouch/AAFilter.cpp"
85
#undef PI
86
#include "3rd_party/soundtouch/source/SoundTouch/cpu_detect_x86.cpp"
87
#include "3rd_party/soundtouch/source/SoundTouch/FIRFilter.cpp"
88
#include "3rd_party/soundtouch/source/SoundTouch/InterpolateCubic.cpp"
89
#include "3rd_party/soundtouch/source/SoundTouch/InterpolateLinear.cpp"
90
#include "3rd_party/soundtouch/source/SoundTouch/InterpolateShannon.cpp"
91
#include "3rd_party/soundtouch/source/SoundTouch/mmx_optimized.cpp"
92
#include "3rd_party/soundtouch/source/SoundTouch/RateTransposer.cpp"
93
#include "3rd_party/soundtouch/source/SoundTouch/SoundTouch.cpp"
94
#include "3rd_party/soundtouch/source/SoundTouch/sse_optimized.cpp"
95
#include "3rd_party/soundtouch/source/SoundTouch/TDStretch.cpp"
96
#endif
97
}}
// namespace tracktion { inline namespace engine
98
99
#ifdef JUCE_MSVC
100
#pragma warning (pop)
101
#endif
102
103
#ifdef __clang__
104
#pragma clang diagnostic pop
105
#endif
106
107
#ifdef __GNUC__
108
#pragma GCC diagnostic pop
109
#endif
110
111
#endif
tracktion
Definition
tracktion_AudioReader.h:23
tracktion_ReadAheadTimeStretcher.cpp
tracktion_TestConfig.h
tracktion_TimeStretch.cpp
tracktion_engine.h
« « « Anklang Documentation