Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Submit feedback
Sign in
Toggle navigation
ITADSP
Project overview
Project overview
Details
Activity
Releases
Cycle Analytics
Insights
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Locked Files
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
Security & Compliance
Security & Compliance
Dependency List
Packages
Packages
Container Registry
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Commits
Issue Boards
Open sidebar
Institute of Technical Acoustics (ITA)
ITADSP
Commits
42264fc1
Commit
42264fc1
authored
Sep 12, 2018
by
Dipl.-Ing. Jonas Stienen
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Applying ITABase mode naming refactoring
parent
64e1db46
Changes
6
Hide whitespace changes
Inline
Side-by-side
Showing
6 changed files
with
14 additions
and
20 deletions
+14
-20
include/ITABiquad.h
include/ITABiquad.h
+1
-8
include/ITAThirdOctaveFilterbankFIR.h
include/ITAThirdOctaveFilterbankFIR.h
+3
-3
src/ITABiquad.cpp
src/ITABiquad.cpp
+5
-4
src/ITASIMOVariableDelayLine.cpp
src/ITASIMOVariableDelayLine.cpp
+1
-1
src/ITAThirdOctaveFilterbankIIR.cpp
src/ITAThirdOctaveFilterbankIIR.cpp
+3
-3
src/ITAVariableDelayLine.cpp
src/ITAVariableDelayLine.cpp
+1
-1
No files found.
include/ITABiquad.h
View file @
42264fc1
...
...
@@ -49,14 +49,7 @@ public:
CParams
();
}
oParams
;
//! Output write modes
enum
{
OUTPUT_OVERWRITE
=
0
,
//!< Overwrites output
OUTPUT_ADD
=
1
//!< Adds to the output
};
CITABiquad
();
virtual
inline
~
CITABiquad
()
{};
...
...
include/ITAThirdOctaveFilterbankFIR.h
View file @
42264fc1
...
...
@@ -45,7 +45,7 @@ public:
m_pGenerator
=
new
CITAThirdOctaveFIRFilterGenerator
(
dSampleRate
,
m_iFilterLength
);
m_pConvolver
=
new
ITAUPConvolution
(
iBlockLength
,
m_iFilterLength
);
m_pConvolver
->
SetFilterExchange
Mode
(
ITAUPConvolution
::
CROSSFADE_
COSINE_SQUARE
);
m_pConvolver
->
SetFilterExchange
FadingFunction
(
ITABase
::
FadingFunction
::
COSINE_SQUARE
);
m_pConvolver
->
SetFilterCrossfadeLength
(
32
);
SetIdentity
(
false
);
...
...
@@ -66,7 +66,7 @@ public:
fm_zero
(
m_pfFilter
,
m_iFilterLength
);
m_pfFilter
[
iLatency
]
=
1
;
pFilter
->
Load
(
m_pfFilter
,
m_iFilterLength
);
m_pConvolver
->
ExchangeFilter
(
pFilter
,
(
bSmoothChangeover
?
ITA
UPConvolution
::
AUTO
:
ITAUPConvolu
tion
::
SWITCH
)
);
m_pConvolver
->
ExchangeFilter
(
pFilter
,
(
bSmoothChangeover
?
ITA
Base
::
FadingFunction
::
COSINE_SQUARE
:
ITABase
::
FadingFunc
tion
::
SWITCH
)
);
pFilter
->
Release
();
// Auto-release
}
...
...
@@ -75,7 +75,7 @@ public:
m_pGenerator
->
GenerateFilter
(
oMags
,
m_pfFilter
);
ITAUPFilter
*
pFilter
=
m_pConvolver
->
RequestFilter
();
pFilter
->
Load
(
m_pfFilter
,
m_iFilterLength
);
m_pConvolver
->
ExchangeFilter
(
pFilter
,
(
bSmoothChangeover
?
ITA
UPConvolution
::
AUTO
:
ITAUPConvolu
tion
::
SWITCH
)
);
m_pConvolver
->
ExchangeFilter
(
pFilter
,
(
bSmoothChangeover
?
ITA
Base
::
FadingFunction
::
COSINE_SQUARE
:
ITABase
::
FadingFunc
tion
::
SWITCH
)
);
pFilter
->
Release
();
// Auto-release
}
...
...
src/ITABiquad.cpp
View file @
42264fc1
#
include
<
ITABiquad
.
h
>
#include <ITAException.h>
#include <ITABaseDefinitions.h>
CITABiquad
::
CITABiquad
()
{
...
...
@@ -49,7 +50,7 @@ void CITABiquad::Process( const float* pfInputData, float* pfOutputData, const i
z1
=
m_vfAccumulators
[
0
];
z2
=
m_vfAccumulators
[
1
];
if
(
iOutputMode
==
CITABiquad
::
OUTPUT_
ADD
)
if
(
iOutputMode
==
ITABase
::
MixingMethod
::
ADD
)
{
for
(
int
i
=
0
;
i
<
iNumSamples
;
i
++
)
{
...
...
@@ -61,7 +62,7 @@ void CITABiquad::Process( const float* pfInputData, float* pfOutputData, const i
z1
=
z0
;
}
}
else
if
(
iOutputMode
==
CITABiquad
::
OUTPUT_
OVERWRITE
)
else
if
(
iOutputMode
==
ITABase
::
MixingMethod
::
OVERWRITE
)
{
for
(
int
i
=
0
;
i
<
iNumSamples
;
i
++
)
{
...
...
@@ -98,7 +99,7 @@ void CITABiquad::Process( const float* pfInputData, float* out, const int iNumSa
// Factor for linear gain
const
float
fLinearGainFactor
=
(
fOutputGain2
-
fOutputGain1
)
/
float
(
iNumSamples
);
if
(
iOutputWriteMode
==
OUTPUT_
ADD
)
if
(
iOutputWriteMode
==
ITABase
::
MixingMethod
::
ADD
)
{
for
(
int
i
=
0
;
i
<
iNumSamples
;
i
++
)
{
...
...
@@ -113,7 +114,7 @@ void CITABiquad::Process( const float* pfInputData, float* out, const int iNumSa
}
}
else
if
(
iOutputWriteMode
==
CITABiquad
::
OUTPUT_
OVERWRITE
)
else
if
(
iOutputWriteMode
==
ITABase
::
MixingMethod
::
OVERWRITE
)
{
for
(
int
i
=
0
;
i
<
iNumSamples
;
i
++
)
{
...
...
src/ITASIMOVariableDelayLine.cpp
View file @
42264fc1
...
...
@@ -370,7 +370,7 @@ void CITASIMOVariableDelayLine::ReadBlock( const int iCursorID, ITASampleBuffer*
m_psbTemp
->
cyclic_write
(
m_psbVDLBuffer
,
m_iFadeLength
,
iReadCursorCurrent
,
0
);
psbOutput
->
cyclic_write
(
m_psbVDLBuffer
,
m_iBlockLength
,
iReadCursorNew
,
0
);
psbOutput
->
Crossfade
(
m_psbTemp
,
0
,
m_iFadeLength
,
ITA
SampleBuffer
::
CROSSFADE_FROM_SOURCE
,
ITASampleBuffer
::
COSINE_SQUARE
);
psbOutput
->
Crossfade
(
m_psbTemp
,
0
,
m_iFadeLength
,
ITA
Base
::
CrossfadeDirection
::
FROM_SOURCE
,
ITABase
::
FadingFunction
::
COSINE_SQUARE
);
break
;
}
...
...
src/ITAThirdOctaveFilterbankIIR.cpp
View file @
42264fc1
...
...
@@ -98,7 +98,7 @@ void CITAThirdOctaveFilterbankIIR::Process( const float* pfInputSamples, float*
m_vBiquads
[
i
*
m_nBiquadsPerBand
+
j
].
Process
(
m_sfTempFilterBuf
.
GetData
(),
m_sfTempFilterBuf
.
GetData
(),
m_iBlockLength
);
const
float
fGain
=
oLatestMagnitudeUpdate
.
oMags
[
i
];
const
int
iOutputWriteMode
=
(
i
==
0
?
CITABiquad
::
OUTPUT_OVERWRITE
:
CITABiquad
::
OUTPUT_
ADD
);
const
int
iOutputWriteMode
=
(
i
==
0
?
ITABase
::
MixingMethod
::
OVERWRITE
:
ITABase
::
MixingMethod
::
ADD
);
m_vBiquads
[
i
*
m_nBiquadsPerBand
+
iLastBandIndex
].
Process
(
m_sfTempFilterBuf
.
GetData
(),
m_pfTempOutputBuf
.
GetData
(),
m_iBlockLength
,
fGain
,
iOutputWriteMode
);
}
}
...
...
@@ -117,7 +117,7 @@ void CITAThirdOctaveFilterbankIIR::Process( const float* pfInputSamples, float*
// Letztes Biquad mit Gain: tmp => output
const
float
fGain1
=
m_oMagnitudesInternal
[
i
];
const
float
fGain2
=
oLatestMagnitudeUpdate
.
oMags
[
i
];
m_vBiquads
[
i
*
m_nBiquadsPerBand
+
iLastBandIndex
].
Process
(
m_sfTempFilterBuf
.
GetData
(),
m_pfTempOutputBuf
.
GetData
(),
m_iBlockLength
,
fGain1
,
fGain2
,
(
i
==
0
?
CITABiquad
::
OUTPUT_OVERWRITE
:
CITABiquad
::
OUTPUT_
ADD
)
);
m_vBiquads
[
i
*
m_nBiquadsPerBand
+
iLastBandIndex
].
Process
(
m_sfTempFilterBuf
.
GetData
(),
m_pfTempOutputBuf
.
GetData
(),
m_iBlockLength
,
fGain1
,
fGain2
,
(
i
==
0
?
ITABase
::
MixingMethod
::
OVERWRITE
:
ITABase
::
MixingMethod
::
ADD
)
);
}
}
...
...
@@ -136,7 +136,7 @@ void CITAThirdOctaveFilterbankIIR::Process( const float* pfInputSamples, float*
m_vBiquads
[
i
*
m_nBiquadsPerBand
+
j
].
Process
(
m_sfTempFilterBuf
.
GetData
(),
m_sfTempFilterBuf
.
GetData
(),
m_iBlockLength
);
// Letztes Biquad mit Gain: tmp => output
m_vBiquads
[
i
*
m_nBiquadsPerBand
+
iLastBandIndex
].
Process
(
m_sfTempFilterBuf
.
GetData
(),
m_pfTempOutputBuf
.
GetData
(),
m_iBlockLength
,
m_oMagnitudesInternal
[
i
],
(
i
==
0
?
CITABiquad
::
OUTPUT_OVERWRITE
:
CITABiquad
::
OUTPUT_
ADD
)
);
m_vBiquads
[
i
*
m_nBiquadsPerBand
+
iLastBandIndex
].
Process
(
m_sfTempFilterBuf
.
GetData
(),
m_pfTempOutputBuf
.
GetData
(),
m_iBlockLength
,
m_oMagnitudesInternal
[
i
],
(
i
==
0
?
ITABase
::
MixingMethod
::
OVERWRITE
:
ITABase
::
MixingMethod
::
ADD
)
);
}
}
...
...
src/ITAVariableDelayLine.cpp
View file @
42264fc1
...
...
@@ -389,7 +389,7 @@ void CITAVariableDelayLine::Process( const ITASampleBuffer* psbInput, ITASampleB
m_psbTemp
->
cyclic_write
(
m_psbVDLBuffer
,
m_iFadeLength
,
iReadCursorCurrent
,
0
);
psbOutput
->
cyclic_write
(
m_psbVDLBuffer
,
m_iBlockLength
,
iReadCursorNew
,
0
);
psbOutput
->
Crossfade
(
m_psbTemp
,
0
,
m_iFadeLength
,
ITA
SampleBuffer
::
CROSSFADE_FROM_SOURCE
,
ITASampleBuffer
::
COSINE_SQUARE
);
psbOutput
->
Crossfade
(
m_psbTemp
,
0
,
m_iFadeLength
,
ITA
Base
::
CrossfadeDirection
::
FROM_SOURCE
,
ITABase
::
FadingFunction
::
COSINE_SQUARE
);
break
;
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a 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