Skip to content

Commit

Permalink
Bugfix: Fix comb-filter effect on oversampled dry/wet; Fix link-in-ou…
Browse files Browse the repository at this point in the history
…t knob positioning; Fix oversampled filter artefacts (#100)

* Fix oversampling issues and refactor DSP

* Fix bypass

* Fix linkinout position

* Fix link-in-out

* Simplify clipper - remove block

* Prettify namespaces

* Proper Clipper cpp split

* Update dry/wet position; Update screenshots

* Remove switch simplification to support Linux build

* Exclude filtering for non-oversampled signal

* Use default mixing rule

* Prototype dry wet on whole section

* Fix comb filter effect

* Fix position of dry/wet knob

* Fix Level Meter magnitude calculation

* Use FIR and report latency to the DAW

* Use cross platform find_max stl function

* Bring back lowest possible macos compatible version

* Bring back test folder
  • Loading branch information
vvvar authored Aug 20, 2023
1 parent 4b97124 commit a99b8db
Show file tree
Hide file tree
Showing 99 changed files with 1,596 additions and 2,297 deletions.
21 changes: 18 additions & 3 deletions .vscode/settings.json
Original file line number Diff line number Diff line change
Expand Up @@ -90,7 +90,13 @@
"forward_list": "cpp",
"regex": "cpp",
"valarray": "cpp",
"random": "cpp"
"random": "cpp",
"*.mm": "cpp",
"any": "cpp",
"charconv": "cpp",
"format": "cpp",
"__std_stream": "cpp",
"iterator": "cpp"
},
"[python]": {
"editor.defaultFormatter": "ms-python.black-formatter"
Expand Down Expand Up @@ -146,9 +152,13 @@
"bindirs",
"buildenv",
"cmaketoolchain",
"cmpf",
"codesign",
"cppstd",
"DBFS",
"Downsample",
"hexlabs",
"jassert",
"juce",
"killall",
"libc",
Expand All @@ -158,21 +168,26 @@
"mmacosx",
"msvc",
"notarytool",
"Nyquist",
"oversampled",
"peakeater",
"PLOGD",
"pluginval",
"Polyphase",
"resdirs",
"ULFO",
"Upsample",
"vvvar",
"xcrun",
"zfile",
"zipresp"
],
"sonarlint.pathToCompileCommands": "${workspaceFolder}/build/Debug/compile_commands.json",
// Bandaid because occasinally git is not added to the Path which breaks just
// Keep untill this resolved - https://github.com/casey/just/issues/1517
// VS Code-only since it is installation issue which works fine on a CI
"terminal.integrated.env.windows": {
"Path": "${env:Path};C:\\Program Files\\Git\\bin"
},
"terminal.integrated.scrollback": 999999999999
"terminal.integrated.scrollback": 999999999999,
"sonarlint.pathToCompileCommands": "${workspaceFolder}/build/Release/compile_commands.json"
}
63 changes: 36 additions & 27 deletions CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -29,36 +29,45 @@ juce_add_plugin(${CMAKE_PROJECT_NAME}

target_sources(${CMAKE_PROJECT_NAME}
PRIVATE
source/GUIv2/clipmeter/ClipMeter.cpp
source/GUIv2/editableparameter/EditableParameterComponentLookAndFeel.cpp
source/GUIv2/editableparameter/EditableLabelAttachment.cpp
source/GUIv2/editableparameter/EditableParameterComponent.cpp
source/GUIv2/dial/DialLookAndFeel.cpp
source/GUIv2/dial/Dial.cpp
source/GUIv2/dial/gaindial/GainDialLookAndFeel.cpp
source/GUIv2/dial/gaindial/GainDial.cpp
source/GUIv2/dial/ceilingdial/CeilingDial.cpp
source/GUIv2/dial/ceilingdial/CeilingDialLookAndFeel.cpp
source/GUIv2/linkinout/LinkInOut.cpp
source/GUIv2/bypass/BypassButton.cpp
source/GUIv2/scaling/ScalingSwitch.cpp
source/GUIv2/levelmeter/LevelMeterComponent.cpp
source/GUIv2/analyser/peakanalyzer/PeakMeter.cpp
source/GUIv2/analyser/peakanalyzer/PeakAnalyzerComponent.cpp
source/GUIv2/analyser/cliptype/ClipTypeComponent.cpp
source/GUIv2/analyser/AnalyserComponent.cpp
source/GUIv2/ControlPanel.cpp
source/GUIv2/LinkingPanel.cpp
source/GUIv2/LeftPanel.cpp
source/GUIv2/CentralPanel.cpp
source/GUIv2/RightPanel.cpp
source/GUIv2/Header.cpp
source/GUIv2/WorkingPanel.cpp
source/GUIv2/MainComponent.cpp
source/DSP/LevelMeter.cpp

# DSP
source/processor/Clipper.cpp
source/processor/LevelMeter.cpp

# GUI
source/editor/clipmeter/ClipMeter.cpp
source/editor/editableparameter/EditableParameterComponentLookAndFeel.cpp
source/editor/editableparameter/EditableLabelAttachment.cpp
source/editor/editableparameter/EditableParameterComponent.cpp
source/editor/dial/DialLookAndFeel.cpp
source/editor/dial/Dial.cpp
source/editor/dial/gaindial/GainDialLookAndFeel.cpp
source/editor/dial/gaindial/GainDial.cpp
source/editor/dial/ceilingdial/CeilingDial.cpp
source/editor/dial/ceilingdial/CeilingDialLookAndFeel.cpp
source/editor/linkinout/LinkInOut.cpp
source/editor/bypass/BypassButton.cpp
source/editor/scaling/ScalingSwitch.cpp
source/editor/levelmeter/LevelMeterComponent.cpp
source/editor/analyser/peakanalyzer/PeakMeter.cpp
source/editor/analyser/peakanalyzer/PeakAnalyzerComponent.cpp
source/editor/analyser/cliptype/ClipTypeComponent.cpp
source/editor/analyser/AnalyserComponent.cpp
source/editor/ControlPanel.cpp
source/editor/LinkingPanel.cpp
source/editor/LeftPanel.cpp
source/editor/CentralPanel.cpp
source/editor/RightPanel.cpp
source/editor/Header.cpp
source/editor/WorkingPanel.cpp
source/editor/MainComponent.cpp

# Entry point
source/PluginEditor.cpp
source/PluginProcessor.cpp)

target_include_directories(${CMAKE_PROJECT_NAME} PUBLIC source)

target_compile_definitions(${CMAKE_PROJECT_NAME}
PUBLIC
JUCE_DISPLAY_SPLASH_SCREEN=0
Expand Down
Binary file modified assets/screenshots/screenshot-mac.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
2 changes: 1 addition & 1 deletion conanfile.py
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@

class PeakEater(ConanFile):
name = "peakeater"
version = "0.8.1"
version = "0.8.2"
user = "vvvar"
channel = "testing"
company = "T-Audio"
Expand Down
74 changes: 2 additions & 72 deletions config/.clang-format
Original file line number Diff line number Diff line change
@@ -1,73 +1,3 @@
---
AccessModifierOffset: -4
AlignAfterOpenBracket: Align
AlignConsecutiveAssignments: false
AlignConsecutiveDeclarations: false
AlignEscapedNewlines: Left
AlignOperands: Align
AlignTrailingComments: false
AllowAllParametersOfDeclarationOnNextLine: false
AllowShortBlocksOnASingleLine: Never
AllowShortCaseLabelsOnASingleLine: false
AllowShortFunctionsOnASingleLine: All
AllowShortIfStatementsOnASingleLine: Never
AllowShortLoopsOnASingleLine: false
AlwaysBreakAfterDefinitionReturnType: None
AlwaysBreakAfterReturnType: None
AlwaysBreakBeforeMultilineStrings: false
AlwaysBreakTemplateDeclarations: Yes
BinPackArguments: false
BinPackParameters: false
BreakAfterJavaFieldAnnotations: false
BreakBeforeBinaryOperators: NonAssignment
BreakBeforeBraces: Allman
BreakBeforeTernaryOperators: true
BreakConstructorInitializersBeforeComma: false
BreakStringLiterals: false
ColumnLimit: 120
ConstructorInitializerAllOnOneLineOrOnePerLine: false
ConstructorInitializerIndentWidth: 4
ContinuationIndentWidth: 4
Cpp11BracedListStyle: false
DerivePointerAlignment: false
DisableFormat: false
ExperimentalAutoDetectBinPacking: false
IndentCaseLabels: true
BasedOnStyle: Google
IndentWidth: 4
IndentWrappedFunctionNames: true
KeepEmptyLinesAtTheStartOfBlocks: false
Language: Cpp
MaxEmptyLinesToKeep: 1
NamespaceIndentation: Inner
PointerAlignment: Left
ReflowComments: false
SortIncludes: true
SpaceAfterCStyleCast: true
SpaceAfterLogicalNot: true
SpaceBeforeAssignmentOperators: true
SpaceBeforeCpp11BracedList: true
SpaceBeforeParens: NonEmptyParentheses
SpaceInEmptyParentheses: false
SpaceBeforeInheritanceColon: true
SpacesInAngles: false
SpacesInCStyleCastParentheses: false
SpacesInContainerLiterals: true
SpacesInParentheses: false
SpacesInSquareBrackets: false
Standard: "c++17"
TabWidth: 4
UseTab: Never
---
Language: ObjC
BasedOnStyle: Chromium
AlignTrailingComments: true
BreakBeforeBraces: Allman
ColumnLimit: 120
IndentWidth: 4
KeepEmptyLinesAtTheStartOfBlocks: false
ObjCSpaceAfterProperty: true
ObjCSpaceBeforeProtocolList: true
PointerAlignment: Left
SpacesBeforeTrailingComments: 1
TabWidth: 4
UseTab: Never
ColumnLimit: 140
2 changes: 1 addition & 1 deletion config/conan/macos.jinja
Original file line number Diff line number Diff line change
Expand Up @@ -4,4 +4,4 @@ include(shared/cppstd.jinja)
include(shared/build_type.jinja)

[conf]
tools.build:cxxflags+=["-arch x86_64", "-arch arm64", "-mmacosx-version-min=10.10"]
tools.build:cxxflags+=["-arch x86_64", "-arch arm64", "-mmacosx-version-min=10.9"]
171 changes: 0 additions & 171 deletions source/Controller/WaveShaperController.h

This file was deleted.

Loading

0 comments on commit a99b8db

Please sign in to comment.