Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

effect chain preset saving/loading, custom effect defaults, and parameter hiding/rearrangement #2618

Closed
wants to merge 552 commits into from
Closed
Show file tree
Hide file tree
Changes from 105 commits
Commits
Show all changes
552 commits
Select commit Hold shift + click to select a range
42ea49e
LV2Backend: prevent copying container in for loop
Be-ing Dec 1, 2020
d834b37
effects: fix clazy warnings
Be-ing Dec 1, 2020
4882396
add comment about EffectBackendType sort order
Be-ing Dec 1, 2020
3d045f4
EffectManifest: use QLatin1String
Be-ing Dec 1, 2020
0cd1fb8
EffectManifest::backendName: add comment noting it is for internal us…
Be-ing Dec 1, 2020
f214a3c
EffectsBackend::backendTypeToString use switch-case statement
Be-ing Dec 1, 2020
c40ff25
effects: fix more clazy warnings
Be-ing Dec 1, 2020
518baf9
EffectSlot: avoid copies in loops
Be-ing Dec 1, 2020
aa67f47
effects: clang-format everything in src/effects
Be-ing Dec 1, 2020
260ed55
effects: clang-format everything in src/engine/effects
Be-ing Dec 1, 2020
ca658f8
ControlEffectKnob: clang-format
Be-ing Dec 1, 2020
b6078a0
ControlPickerMenu: clang-format
Be-ing Dec 1, 2020
c4ede6c
effects: clang-format widgets
Be-ing Dec 1, 2020
8121a34
effects: clang-format tests
Be-ing Dec 1, 2020
a08a1cc
DlgPrefEffects: clang-format
Be-ing Dec 1, 2020
a55a967
DlgPrefEQ: clang-format
Be-ing Dec 1, 2020
de38b7d
make pre-commit shut up
Be-ing Dec 1, 2020
118ec6c
fix Qt 5.9 build
Be-ing Dec 1, 2020
685425b
BuiltInBackend: clean up effect registration
Be-ing Dec 1, 2020
bea6016
EffectsBackendManager: update comment
Be-ing Dec 1, 2020
862b7b6
LV2EffectProcessor: remove unnecessary #include
Be-ing Dec 1, 2020
24047c1
Merge remote-tracking branch 'upstream/main' into effects_refactoring
Be-ing Dec 4, 2020
9cf9d31
Merge remote-tracking branch 'upstream/main' into effects_refactoring
Be-ing Dec 8, 2020
0b9dfa3
make pre-commit happy
Be-ing Dec 8, 2020
2895b67
Merge remote-tracking branch 'upstream/main' into effects_refactoring
Be-ing Dec 9, 2020
95b1ab4
DlgPreferences: remove unused parameter from merge conflict
Be-ing Dec 9, 2020
c7612e9
Merge remote-tracking branch 'upstream/main' into effects_refactoring
Be-ing Dec 10, 2020
a4cae3f
EffectsBackendManager: change debug assertion to if statement
Be-ing Dec 10, 2020
e5e0ecc
EffectChainPresetManager: fix debug assertion without config
Be-ing Dec 10, 2020
20f22e4
Merge remote-tracking branch 'upstream/main' into effects_refactoring
Be-ing Dec 14, 2020
a16aa4c
Merge remote-tracking branch 'upstream/main' into effects_refactoring
Be-ing Dec 15, 2020
c12036f
Merge remote-tracking branch 'upstream/main' into effects_refactoring
Be-ing Dec 15, 2020
e8bfd6e
Merge remote-tracking branch 'upstream/main' into effects_refactoring
Be-ing Dec 16, 2020
6c0676d
DlgPreferences: remove unused parameter
Be-ing Dec 16, 2020
917ed3c
update legacy variable name to current convention
Be-ing Dec 16, 2020
3a53a78
remove unneeded MOC includes for non-QObject classes
Be-ing Dec 16, 2020
cba4582
remove unused #include
Be-ing Dec 16, 2020
9ea168b
Merge remote-tracking branch 'upstream/main' into effects_refactoring
Be-ing Dec 16, 2020
277f57b
Merge remote-tracking branch 'upstream/main' into effects_refactoring
Be-ing Dec 20, 2020
50a950a
Merge remote-tracking branch 'upstream/main' into effects_refactoring
Be-ing Dec 21, 2020
6bbfa82
EffectChainPresetManager: forbid presets with empty names
Be-ing Dec 21, 2020
c95e8bb
EffectChainPresetManager: validate user-entered name
Be-ing Dec 21, 2020
9870c1e
DlgPrefEffects: rearrange text, add hint about controllers
Be-ing Dec 21, 2020
8d2196d
EffectChainPresetManager: prevent empty rename when importing
Be-ing Dec 23, 2020
381f800
WEffectChainPresetButton: fix off by one error in label
Be-ing Dec 23, 2020
60ea96c
EffectChainPresetManager: validate name of new chain presets
Be-ing Dec 23, 2020
0080faf
Merge remote-tracking branch 'upstream/main' into effects_refactoring
Be-ing Jan 11, 2021
b84698d
Merge remote-tracking branch 'upstream/main' into effects_refactoring
Be-ing Jan 23, 2021
f72ae7d
fix code style issues after merge
Be-ing Jan 23, 2021
017619c
Merge remote-tracking branch 'upstream/main' into effects_refactoring
Be-ing Jan 24, 2021
fa11158
Merge remote-tracking branch 'upstream/main' into effects_refactoring
Be-ing Jan 26, 2021
628f75e
make pre-commit happy
Be-ing Feb 5, 2021
45cedc0
Merge remote-tracking branch 'upstream/main' into effects_refactoring
Be-ing Feb 6, 2021
2f57c7c
EffectChainPresetManager: trim whitespace from preset names
Be-ing Feb 6, 2021
9ca79b8
Merge remote-tracking branch 'upstream/main' into effects_refactoring
Be-ing Feb 10, 2021
b52f427
Merge remote-tracking branch 'upstream/main' into effects_refactoring
Be-ing Feb 22, 2021
579236d
Merge remote-tracking branch 'upstream/main' into effects_refactoring
Be-ing Feb 22, 2021
6229788
LV2EffectProcessor: fix lilv header include
Be-ing Feb 22, 2021
ef8b0f4
Merge remote-tracking branch 'upstream/main' into effects_refactoring
Be-ing Feb 24, 2021
0ad3286
DlgPreferences: clang-format fix
Be-ing Feb 24, 2021
c58da3d
WEffectPushButton: fix crash with invalid skins
Be-ing Feb 24, 2021
4396b8c
EffectChainPresetManager: trim whitespace from imported presets
Be-ing Feb 24, 2021
efeab5b
WEffectChainPresetSelector: do not change preset on mouse scroll
Be-ing Feb 24, 2021
386eba9
WEffectChainPresetSelector: set tooltips
Be-ing Feb 24, 2021
6c375c6
WEffectChainPresetButton: do not accept focus
Be-ing Feb 24, 2021
2bcfd54
WEffectChainPresetButton: remove superfluous connection to show menu
Be-ing Feb 25, 2021
021ab5f
Merge remote-tracking branch 'upstream/main' into effects_refactoring
Be-ing Feb 25, 2021
879dcca
Tango: fix fx slot v-layout with Super knobs
ronso0 Feb 25, 2021
bc21e16
Tango: push deck mixer to top with jump/loop controls shown
ronso0 Feb 25, 2021
ccc0171
Merge branch 'main' into effects_refactoring
ronso0 Mar 1, 2021
19a6ef7
WEffectChainPresetButton: note stylesheet support in TODO
Be-ing Mar 1, 2021
dc1bdca
EffectManifestParameter: remove commented debug message
Be-ing Mar 4, 2021
9dd8b8c
BuiltInBackend: remove commented debug message
Be-ing Mar 4, 2021
1f95765
EffectKnobParameterSlot: replace legacy NULL with nullptr
Be-ing Mar 4, 2021
7011afb
EffectState: improve documentation
Be-ing Mar 5, 2021
46cb0b9
EffectProcessor: clarify which methods are called from which thread
Be-ing Mar 5, 2021
674655d
EffectsManager: add a note about initializing submanager classes
Be-ing Mar 5, 2021
e914b81
StandardEffectChain: add note about confusing EffectRack COs
Be-ing Mar 5, 2021
eeb1efb
EffectSlot: clang-tidy cleanup
Be-ing Mar 5, 2021
f8ac928
EffectChain: clang-tidy cleanup
Be-ing Mar 5, 2021
550eca1
EngineEffect: improve documentation
Be-ing Mar 5, 2021
c7ac571
EngineEffectsManager: add/update documentation
Be-ing Mar 5, 2021
d7f10d1
GroupFeatureState: add documentation
Be-ing Mar 5, 2021
fdfb57f
SpecialEffectChains: add documentation
Be-ing Mar 5, 2021
cf29915
EngineEffectChain: replace NULL with nullptr
Be-ing Mar 5, 2021
4c281f1
EngineEffectChain: remove unused method
Be-ing Mar 5, 2021
7161502
EngineEffectChain: add documentation
Be-ing Mar 5, 2021
5404a5f
Merge remote-tracking branch 'upstream/main' into effects_refactoring
Be-ing Mar 5, 2021
48d15b4
SpecialEffectChains: fix grammatical error
Be-ing Mar 5, 2021
7319d0e
PerGroupEffectChain: clarify documentation
Be-ing Mar 5, 2021
56fe847
effects: fix inheritance issues
Be-ing Mar 5, 2021
10cc327
EffectsBackend/EffectManifest: consolidate redundant string literals
Be-ing Mar 5, 2021
a3efdc9
EffectsBackend: fix typo in documentation
Be-ing Mar 5, 2021
afe8dbd
DlgPrefEq: do not repeat string literal
Be-ing Mar 5, 2021
1be263b
EffectManifestParameter: remove unused SemanticHint enum
Be-ing Mar 5, 2021
3af6071
EngineEffectsManager: clarify why allocating in audio thread is okay
Be-ing Mar 5, 2021
c5d522d
EffectState: elaborate in documentation
Be-ing Mar 5, 2021
89b8247
WEffectChainPresetButton: remove redundant connections
Be-ing Mar 5, 2021
89296b7
EffectProcessorImpl: update documentation
Be-ing Mar 5, 2021
d92120b
ParametricEqEffect: update URL for Discourse forum
Be-ing Mar 6, 2021
37a3ef1
ParametricEQEffect: add notes about allocation not in audio thread
Be-ing Mar 6, 2021
6056189
Merge remote-tracking branch 'upstream/main' into effects_refactoring
Be-ing Mar 6, 2021
e744a53
EffectState/EffectProcessor: improve documentation
Be-ing Mar 6, 2021
c9c0718
EffectChainPreset: update documentation
Be-ing Mar 6, 2021
8f73c7d
EffectsMessenger: add link explaining design choice
Be-ing Mar 6, 2021
206db13
EngineEffectsManager: improve documentation
Be-ing Mar 6, 2021
58d58c3
EngineEffect: clarify documentation
Be-ing Mar 6, 2021
eeac82b
EngineEffectsManager: add documentation for methods
Be-ing Mar 6, 2021
fb905f8
EngineEffectsManager: add signal flow diagram
Be-ing Mar 6, 2021
da65f77
Merge remote-tracking branch 'upstream/main' into effects_refactoring
Be-ing Mar 9, 2021
645a83e
DlgPrefEQ: remove static keyword from functions in anonymous namespace
Be-ing Mar 9, 2021
60f7bdd
DlgPrefEQ: remove unneeded else branch
Be-ing Mar 9, 2021
3f1beb1
EffectsManager: remove unused string constants
Be-ing Mar 9, 2021
3d5931e
EffectsMessenger: rename startShutdownProcess to initiateShutdown
Be-ing Mar 9, 2021
72d05af
EchoEffect: restore accidentally deleted setMetaKnobDefault call
Be-ing Mar 9, 2021
7e17294
ParametricEQEffect: use SampleRate class instead of unsigned int
Be-ing Mar 9, 2021
8c6636d
EffectManifest: rename alphabetize to sortLexigraphically
Be-ing Mar 9, 2021
fd57f63
EngineEffect: remove unused m_pEffectsManager member
Be-ing Mar 9, 2021
ae9693d
use kNoEffectString constant more
Be-ing Mar 9, 2021
a62cbc8
EffectChainPresetManager: remove unused member
Be-ing Mar 9, 2021
236af41
EffectsMessenger: document that it runs in the main thread
Be-ing Mar 9, 2021
3c7403e
DlgPrefEffects: use parented_ptr
Be-ing Mar 9, 2021
cb58adf
EffectChainPresetManager: separate error text with a newline
Be-ing Mar 9, 2021
006216a
EffectChain: add debug assertions regarding EngineEffectChain
Be-ing Mar 9, 2021
81df0bf
Tango: add basic styles for menu of WEffectChainPresetButton
ronso0 Mar 9, 2021
7f94758
EffectParameterSlot: remove unused m_pEffectSlot
Be-ing Mar 9, 2021
0ea0d74
EffectChain: static_cast enum class directly to double
Be-ing Mar 9, 2021
7cbaaf6
EffectChain: consolidate load_preset and loaded_preset into one RW CO
Be-ing Mar 12, 2021
661ac8f
EffectChain: fix loaded_preset off-by-one error
Be-ing Mar 12, 2021
da2e71b
EffectChain: update loaded_preset when chain list is updated
Be-ing Mar 12, 2021
4a12d74
EffectChain: rename nameChanged signal to presetNameChanged
Be-ing Mar 12, 2021
1c7c9b7
EffectSlot: rename load_effect to loaded_effect and make it read/write
Be-ing Mar 12, 2021
ad70288
EffectChain: remove setPresetName method
Be-ing Mar 12, 2021
fef8a44
VisibleEffectsList: use debug assertions
Be-ing Mar 12, 2021
4263380
Revert "EchoEffect: restore accidentally deleted setMetaKnobDefault c…
Be-ing Mar 12, 2021
7d72822
EffectManifest: optimize sortLexigraphically function
Be-ing Mar 12, 2021
341f6e9
EffectChain: fix setting of mix and mix_mode defaults
Be-ing Mar 12, 2021
7b0a0d5
split EffectChain subclasses into separate files
Be-ing Mar 12, 2021
e53faa3
rearrange #includes
Be-ing Mar 12, 2021
ae4aba7
EffectChainPresetManager: add comment explaining sorting order
Be-ing Mar 12, 2021
aa9a449
DlgPrefEQ: disable EQ acting on waveform when loading non-EQ effect
Be-ing Mar 13, 2021
16e113c
EffectsManager: rename isAdoptMetaknobValueEnabled
Be-ing Mar 13, 2021
ce2b4a6
DlgPrefEQ: fix loading of settings
Be-ing Mar 13, 2021
ea70102
Merge remote-tracking branch 'upstream/main' into effects_refactoring
Be-ing Mar 13, 2021
077372d
EffectsBackendManager: fix handling of upgrade from Mixxx 2.3
Be-ing Mar 13, 2021
0a7987c
EffectChainPresetManager: fix renaming presets
Be-ing Mar 14, 2021
e303837
log warnings when failing to read effect chain preset XML file
Be-ing Mar 14, 2021
d4a1bca
EffectChainPresetManager: fix deletion of presets with sanitized names
Be-ing Mar 14, 2021
d0af5f4
Tango: fixup effect chain menu
ronso0 Mar 13, 2021
9602609
Tango: style QuickEffect selector
ronso0 Mar 13, 2021
bcd3383
Tango: style WEffectChainPresetButton
ronso0 Mar 13, 2021
e7b8061
DlgPrefEffects: reimport default presets with Defaults button
Be-ing Mar 15, 2021
328e3a3
EffectChainPresetManager: use "Export" in title of export dialog
Be-ing Mar 15, 2021
642ebd1
WEffectChainPresetButton: "Save preset" -> "Save new preset"
Be-ing Mar 15, 2021
c525026
use QChar and QStringLiteral in effects item models
Be-ing Mar 15, 2021
7124c1a
EffectsBackend: use constexpr char[] for translated strings
Be-ing Mar 15, 2021
d601fcb
turn EffectChainMixMode into a class with a Type enum
Be-ing Mar 15, 2021
2151a8f
EffectChain: fix slotControlLoadedChainPresetRequest for QuickEffectC…
Be-ing Mar 15, 2021
f70d342
Merge remote-tracking branch 'upstream/main' into effects_refactoring
Be-ing Mar 15, 2021
5060718
EffectChainPresetManager: handle old effects.xml with presets existing
Be-ing Mar 16, 2021
13a438e
EffectChainPresetManager: improve error handling in importDefaultPresets
Be-ing Mar 16, 2021
a0dc621
Merge remote-tracking branch 'upstream/main' into effects_refactoring
Be-ing Mar 16, 2021
dd7ba9b
EffectChainPresetManager: fix emission of lists updated signals
Be-ing Mar 16, 2021
d71cb69
WEffectChainPresetButton: hardcode 3 effect slots for now
Be-ing Mar 17, 2021
e90b493
Merge remote-tracking branch 'upstream/main' into effects_refactoring
Be-ing Mar 27, 2021
0c7d453
Merge remote-tracking branch 'upstream/main' into effects_refactoring
Be-ing Apr 5, 2021
75c7246
LateNight: fix broken style
Be-ing Apr 6, 2021
c637cae
Merge remote-tracking branch 'mixxx/main' into effrefact3
ronso0 Apr 22, 2021
1492915
fxrefact-resolve-conflicts
ronso0 Apr 22, 2021
d0eda1b
EffectChainPresetManager: validate renamed preset names
Be-ing Apr 22, 2021
ee651f5
Merge branch 'main' of github.com:mixxxdj/mixxx into effects_refactoring
Holzhaus Apr 23, 2021
dcbd9cd
EffectChainPresetManager: Unsplit some strings to help translators
Holzhaus Apr 23, 2021
b55c56a
EffectChainPresetManager: Use toByteArray to write XML document
Holzhaus Apr 23, 2021
17f42fc
EffectChainPresetManager: Add various string fixes
Holzhaus Apr 23, 2021
7331d21
EffectChainPresetManager: Rename effectSupported to effectAvailable
Holzhaus Apr 23, 2021
6883735
EffectChainPresetManager: Fix trailing whitespace
Holzhaus Apr 23, 2021
790364e
Merge branch 'main' of github.com:mixxxdj/mixxx into effects_refactoring
Holzhaus May 16, 2021
cce1568
EffectChainPresetManager: Remove redudant file.close()
Holzhaus May 16, 2021
11e4b12
EffectChainPresetManager: Return if preset deletion fails
Holzhaus May 16, 2021
cbc2acd
EffectChainPresetManager: Replace toString().toUtf8() with toByteArray()
Holzhaus May 16, 2021
97ada3f
EffectChainPresetManager: Continue on invalid preset name during import
Holzhaus May 16, 2021
9980147
EffectChainPresetManager: Rename "SavedPresets" to "UserPresets"
Holzhaus May 16, 2021
6161a39
EffectChainPresetManager: Show QFile.errorString() where applicable
Holzhaus May 16, 2021
3a32979
EffectManifestParameter: Make setParameterType() private
Holzhaus May 16, 2021
280b936
DlgPrefEffects: Fix unitialized member in constructor
Holzhaus May 18, 2021
f1d1326
EffectPreset: Ensure that all members are initialized in constructor
Holzhaus May 18, 2021
4de0539
EffectChainMixMode: Add kNumModes constant
Holzhaus May 18, 2021
3965be9
EffectChainPreset: Fix uninitialized members in constructor
Holzhaus May 18, 2021
b949bc0
EffectSlot: Simplify code using helper variable
Holzhaus May 18, 2021
ebfc297
EffectChainPresetManager: Use homePath instead of cwd for file dialog
Holzhaus May 18, 2021
897fab1
EffectManifestParameter: Fix enum class base type and member naming
Holzhaus May 19, 2021
aee13df
EffectXml: Add missing k prefix
Holzhaus May 19, 2021
e83bd83
VisibleEffectsList: Use QT_FORWARD_DECLARE_CLASS macro
Holzhaus May 19, 2021
3f145d2
EffectsBackendManager: Use kNoEffectString instead of "None"
Holzhaus May 19, 2021
3d88d79
EffectsBackendManager: Add warning if manifest was not found
Holzhaus May 19, 2021
99f3967
WEffectParameterNameBase: Use kNoEffectString instead of "None"
Holzhaus May 19, 2021
4d3d089
EffectChainPresetManager: Add missing error handling
Holzhaus May 19, 2021
d22df2c
QuickEffectChain: add comment for unintuitive code
Be-ing Jul 3, 2021
cc9f918
EffectChainPresetListModel: validate dropped text
Be-ing Jul 3, 2021
6cde58a
Tango/LateNight: fix merge conflicts
Be-ing Jul 3, 2021
381c411
Merge remote-tracking branch 'upstream/main' into effects_refactoring
Be-ing Jul 3, 2021
686314c
EffectChainPresetManager: automatically rename duplicate presets
Be-ing Jul 3, 2021
207a904
EffectChainPresetManager: immediately copy imported preset files
Be-ing Jul 3, 2021
49f1a26
EffectChain: factor out `+ 1` to separate function
Be-ing Jul 3, 2021
e1132b6
QML: Fix broken effects integration
Holzhaus Jul 3, 2021
6d6ea72
EffectChainPresetManager: use while loop for duplicate presets
Be-ing Jul 4, 2021
c7fc756
Merge remote-tracking branch 'upstream/main' into effects_refactoring
Be-ing Jul 8, 2021
ab4d3dd
Merge remote-tracking branch 'upstream/main' into effects_refactoring
Be-ing Jul 31, 2021
aeadc65
Merge remote-tracking branch 'upstream/main' into effects_refactoring
Be-ing Aug 1, 2021
bf25de6
Merge remote-tracking branch 'upstream/main' into effects_refactoring
Be-ing Aug 8, 2021
2b9140a
Merge remote-tracking branch 'upstream/main' into effects_refactoring
Be-ing Aug 17, 2021
8baa8c3
Merge remote-tracking branch 'upstream/main' into effects_refactoring
Be-ing Aug 29, 2021
1c7f7e7
Merge remote-tracking branch 'upstream/main' into effects_refactoring
Be-ing Aug 29, 2021
8bc19b2
Merge remote-tracking branch 'upstream/main' into effects_refactoring
Be-ing Sep 8, 2021
01a61a9
Merge remote-tracking branch 'upstream/main' into effects_refactoring
Be-ing Sep 14, 2021
f5864c0
Merge remote-tracking branch 'upstream/main' into effects_refactoring
Be-ing Sep 24, 2021
67f35d0
Merge remote-tracking branch 'upstream/main' into effects_refactoring
Be-ing Sep 27, 2021
4d7bde1
built-in effects: use constexpr instead of const
Be-ing Sep 27, 2021
f58f68e
Merge remote-tracking branch 'upstream/main' into effects_refactoring
Be-ing Sep 30, 2021
f8f6260
Merge remote-tracking branch 'upstream/main' into effects_refactoring
Be-ing Sep 30, 2021
c462211
Merge remote-tracking branch 'upstream/main' into effects_refactoring
Be-ing Oct 8, 2021
de8b3a4
EffectChainPresetListModel: fix validation of dropped text
Be-ing Oct 8, 2021
ebec5ef
Merge remote-tracking branch 'upstream/main' into effects_refactoring
Be-ing Oct 12, 2021
681e375
Merge remote-tracking branch 'upstream/main' into effects_refactoring
Be-ing Oct 12, 2021
0cb59e8
Merge remote-tracking branch 'upstream/main' into effects_refactoring
Be-ing Oct 12, 2021
60087aa
Merge remote-tracking branch 'upstream/main' into effects_refactoring
Be-ing Oct 13, 2021
3cd6a93
Merge remote-tracking branch 'upstream/main' into effects_refactoring
Be-ing Oct 13, 2021
d967eec
Merge remote-tracking branch 'upstream/main' into effects_refactoring
Be-ing Oct 13, 2021
e4e8cc8
Merge remote-tracking branch 'upstream/main' into effects_refactoring
Be-ing Oct 13, 2021
ef6e73d
Merge remote-tracking branch 'upstream/main' into effects_refactoring
Be-ing Oct 13, 2021
02e7b6a
Merge remote-tracking branch 'upstream/main' into effects_refactoring
Be-ing Oct 13, 2021
5d3d57d
Merge remote-tracking branch 'upstream/main' into effects_refactoring
Be-ing Oct 14, 2021
c4ad6b1
Merge remote-tracking branch 'upstream/main' into effects_refactoring
Be-ing Oct 15, 2021
196bb7d
Rename loaded_effect related variables to match the CO name
daschuer Oct 15, 2021
c3a15e0
Remove redundant check in loadEffectWithDefaults()
daschuer Oct 15, 2021
e145a38
Remove redundant copy of default constructed EffectParameterPreset
daschuer Oct 15, 2021
199637b
Exit effect parameter presets loop once we have a match to save some …
daschuer Oct 15, 2021
06b3f2b
Added missing 0 set of loaded_effect when it has been unloaded
daschuer Oct 15, 2021
4141b2d
Merge remote-tracking branch 'upstream/main' into effects_refactoring
Be-ing Oct 15, 2021
8b9d712
Ignore 0 in EffectChain::slotControlChainSelector to match the behavi…
daschuer Oct 15, 2021
d385385
Simplify control flow in loadChainPreset
daschuer Oct 15, 2021
445e9b8
Remove redundant setting of m_pControlLoadedChainPreset
daschuer Oct 15, 2021
faaa80f
Remove pointless check if group is empty.
daschuer Oct 15, 2021
1a5d702
EffectChain: do not reload preset when chain_selector set to 0
Be-ing Oct 15, 2021
83790ed
EffectChain: fix inconsistent ControlObject names & add aliases
Be-ing Oct 16, 2021
900bf6b
Merge remote-tracking branch 'upstream/main' into effects_refactoring
Be-ing Oct 16, 2021
864c682
Merge remote-tracking branch 'upstream/main' into effects_refactoring
Be-ing Oct 17, 2021
4793f7b
Merge remote-tracking branch 'upstream/main' into effects_refactoring
Be-ing Oct 17, 2021
8a70023
Merge remote-tracking branch 'upstream/main' into effects_refactoring
Be-ing Oct 17, 2021
c9d4bb0
Merge remote-tracking branch 'upstream/main' into effects_refactoring
Be-ing Oct 18, 2021
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
76 changes: 37 additions & 39 deletions CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -237,40 +237,39 @@ add_library(mixxx-lib STATIC EXCLUDE_FROM_ALL
src/dialog/dlgdevelopertoolsdlg.ui
src/dialog/dlgreplacecuecolor.cpp
src/dialog/dlgreplacecuecolordlg.ui
src/effects/builtin/autopaneffect.cpp
src/effects/builtin/balanceeffect.cpp
src/effects/builtin/bessel4lvmixeqeffect.cpp
src/effects/builtin/bessel8lvmixeqeffect.cpp
src/effects/builtin/biquadfullkilleqeffect.cpp
src/effects/builtin/bitcrushereffect.cpp
src/effects/builtin/builtinbackend.cpp
src/effects/builtin/echoeffect.cpp
src/effects/builtin/filtereffect.cpp
src/effects/builtin/flangereffect.cpp
src/effects/builtin/graphiceqeffect.cpp
src/effects/builtin/linkwitzriley8eqeffect.cpp
src/effects/builtin/loudnesscontoureffect.cpp
src/effects/builtin/metronomeeffect.cpp
src/effects/builtin/moogladder4filtereffect.cpp
src/effects/builtin/parametriceqeffect.cpp
src/effects/builtin/phasereffect.cpp
src/effects/builtin/reverbeffect.cpp
src/effects/builtin/threebandbiquadeqeffect.cpp
src/effects/builtin/tremoloeffect.cpp
src/effects/effect.cpp
src/effects/effectbuttonparameterslot.cpp
src/effects/effectchain.cpp
src/effects/effectchainmanager.cpp
src/effects/effectchainslot.cpp
src/effects/effectmanifest.cpp
src/effects/effectmanifestparameter.cpp
src/effects/effectparameter.cpp
src/effects/effectparameterslot.cpp
src/effects/effectknobparameterslot.cpp
src/effects/effectparameterslotbase.cpp
src/effects/effectrack.cpp
src/effects/effectsbackend.cpp
src/effects/effectslot.cpp
src/effects/effectsmanager.cpp
src/effects/specialeffectchainslots.cpp
src/effects/backends/effectmanifest.cpp
src/effects/backends/effectmanifestparameter.cpp
src/effects/backends/builtin/autopaneffect.cpp
src/effects/backends/builtin/balanceeffect.cpp
src/effects/backends/builtin/bessel4lvmixeqeffect.cpp
src/effects/backends/builtin/bessel8lvmixeqeffect.cpp
src/effects/backends/builtin/biquadfullkilleqeffect.cpp
src/effects/backends/builtin/bitcrushereffect.cpp
src/effects/backends/builtin/builtinbackend.cpp
src/effects/backends/builtin/echoeffect.cpp
src/effects/backends/builtin/filtereffect.cpp
src/effects/backends/builtin/flangereffect.cpp
src/effects/backends/builtin/graphiceqeffect.cpp
src/effects/backends/builtin/linkwitzriley8eqeffect.cpp
src/effects/backends/builtin/loudnesscontoureffect.cpp
src/effects/backends/builtin/metronomeeffect.cpp
src/effects/backends/builtin/moogladder4filtereffect.cpp
src/effects/backends/builtin/parametriceqeffect.cpp
src/effects/backends/builtin/phasereffect.cpp
src/effects/backends/builtin/reverbeffect.cpp
src/effects/backends/builtin/threebandbiquadeqeffect.cpp
src/effects/backends/builtin/tremoloeffect.cpp
src/effects/presets/effectpreset.cpp
src/effects/presets/effectchainpreset.cpp
src/effects/presets/effectparameterpreset.cpp
src/encoder/encoder.cpp
src/encoder/encoderbroadcastsettings.cpp
src/encoder/encoderflacsettings.cpp
Expand Down Expand Up @@ -304,7 +303,6 @@ add_library(mixxx-lib STATIC EXCLUDE_FROM_ALL
src/engine/controls/ratecontrol.cpp
src/engine/effects/engineeffect.cpp
src/engine/effects/engineeffectchain.cpp
src/engine/effects/engineeffectrack.cpp
src/engine/effects/engineeffectsmanager.cpp
src/engine/enginebuffer.cpp
src/engine/enginedelay.cpp
Expand Down Expand Up @@ -492,7 +490,6 @@ add_library(mixxx-lib STATIC EXCLUDE_FROM_ALL
src/preferences/dialog/dlgprefkeydlg.ui
src/preferences/dialog/dlgpreflibrary.cpp
src/preferences/dialog/dlgpreflibrarydlg.ui
src/preferences/dialog/dlgpreflv2dlg.ui
src/preferences/dialog/dlgprefnovinyl.cpp
src/preferences/dialog/dlgprefnovinyldlg.ui
src/preferences/dialog/dlgprefrecord.cpp
Expand Down Expand Up @@ -685,6 +682,7 @@ add_library(mixxx-lib STATIC EXCLUDE_FROM_ALL
src/widget/weffect.cpp
src/widget/weffectbuttonparameter.cpp
src/widget/weffectchain.cpp
src/widget/weffectchainpresetbutton.cpp
src/widget/weffectparameter.cpp
src/widget/weffectparameterbase.cpp
src/widget/weffectparameterknob.cpp
Expand Down Expand Up @@ -1025,7 +1023,6 @@ add_executable(mixxx-test
src/test/analyzersilence_test.cpp
src/test/audiotaperpot_test.cpp
src/test/autodjprocessor_test.cpp
src/test/baseeffecttest.cpp
src/test/beatgridtest.cpp
src/test/beatmaptest.cpp
src/test/beatstranslatetest.cpp
Expand All @@ -1052,9 +1049,10 @@ add_executable(mixxx-test
src/test/directorydaotest.cpp
src/test/duration_test.cpp
src/test/durationutiltest.cpp
src/test/effectchainslottest.cpp
src/test/effectslottest.cpp
src/test/effectsmanagertest.cpp
#TODO: write useful tests for refactored effects system
Be-ing marked this conversation as resolved.
Show resolved Hide resolved
#src/test/effectchainslottest.cpp
#src/test/effectslottest.cpp
#src/test/effectsmanagertest.cpp
src/test/enginebufferscalelineartest.cpp
src/test/enginebuffertest.cpp
src/test/enginefilterbiquadtest.cpp
Expand All @@ -1072,7 +1070,8 @@ add_executable(mixxx-test
src/test/main.cpp
src/test/mathutiltest.cpp
src/test/metadatatest.cpp
src/test/metaknob_link_test.cpp
#TODO: make this build again
Be-ing marked this conversation as resolved.
Show resolved Hide resolved
#src/test/metaknob_link_test.cpp
src/test/midicontrollertest.cpp
src/test/mixxxtest.cpp
src/test/movinginterquartilemean_test.cpp
Expand Down Expand Up @@ -1846,10 +1845,9 @@ if(LILV)
message(FATAL_ERROR "Lilv (LV2) support requires the liblilv-0 and its development headers.")
endif()
target_sources(mixxx-lib PRIVATE
src/effects/lv2/lv2backend.cpp
src/effects/lv2/lv2effectprocessor.cpp
src/effects/lv2/lv2manifest.cpp
src/preferences/dialog/dlgpreflv2.cpp
src/effects/backends/lv2/lv2backend.cpp
src/effects/backends/lv2/lv2effectprocessor.cpp
src/effects/backends/lv2/lv2manifest.cpp
)
target_compile_definitions(mixxx-lib PUBLIC __LILV__)
target_link_libraries(mixxx-lib PUBLIC Lilv::Lilv)
Expand Down
64 changes: 31 additions & 33 deletions build/depends.py
Original file line number Diff line number Diff line change
Expand Up @@ -797,46 +797,44 @@ def sources(self, build):
"src/preferences/colorpalettesettings.cpp",
"src/preferences/dlgpreferencepage.cpp",

"src/effects/effectmanifest.cpp",
"src/effects/effectmanifestparameter.cpp",

"src/effects/effectchain.cpp",
"src/effects/effect.cpp",
"src/effects/effectparameter.cpp",

"src/effects/effectrack.cpp",
"src/effects/effectchainslot.cpp",
"src/effects/specialeffectchainslots.cpp",
"src/effects/effectslot.cpp",
"src/effects/effectparameterslotbase.cpp",
"src/effects/effectparameterslot.cpp",
"src/effects/effectknobparameterslot.cpp",
"src/effects/effectbuttonparameterslot.cpp",
"src/effects/effectsmanager.cpp",
"src/effects/effectchainmanager.cpp",
"src/effects/effectsbackend.cpp",

"src/effects/builtin/builtinbackend.cpp",
"src/effects/builtin/bitcrushereffect.cpp",
"src/effects/builtin/balanceeffect.cpp",
"src/effects/builtin/linkwitzriley8eqeffect.cpp",
"src/effects/builtin/bessel4lvmixeqeffect.cpp",
"src/effects/builtin/bessel8lvmixeqeffect.cpp",
"src/effects/builtin/threebandbiquadeqeffect.cpp",
"src/effects/builtin/biquadfullkilleqeffect.cpp",
"src/effects/builtin/loudnesscontoureffect.cpp",
"src/effects/builtin/graphiceqeffect.cpp",
"src/effects/builtin/parametriceqeffect.cpp",
"src/effects/builtin/flangereffect.cpp",
"src/effects/builtin/filtereffect.cpp",
"src/effects/builtin/moogladder4filtereffect.cpp",
"src/effects/builtin/reverbeffect.cpp",
"src/effects/builtin/echoeffect.cpp",
"src/effects/builtin/autopaneffect.cpp",
"src/effects/builtin/phasereffect.cpp",
"src/effects/builtin/metronomeeffect.cpp",
"src/effects/builtin/tremoloeffect.cpp",

"src/effects/backends/effectmanifest.cpp",
"src/effects/backends/effectmanifestparameter.cpp",

"src/effects/backends/builtin/builtinbackend.cpp",
"src/effects/backends/builtin/bitcrushereffect.cpp",
"src/effects/backends/builtin/balanceeffect.cpp",
"src/effects/backends/builtin/linkwitzriley8eqeffect.cpp",
"src/effects/backends/builtin/bessel4lvmixeqeffect.cpp",
"src/effects/backends/builtin/bessel8lvmixeqeffect.cpp",
"src/effects/backends/builtin/threebandbiquadeqeffect.cpp",
"src/effects/backends/builtin/biquadfullkilleqeffect.cpp",
"src/effects/backends/builtin/loudnesscontoureffect.cpp",
"src/effects/backends/builtin/graphiceqeffect.cpp",
"src/effects/backends/builtin/parametriceqeffect.cpp",
"src/effects/backends/builtin/flangereffect.cpp",
"src/effects/backends/builtin/filtereffect.cpp",
"src/effects/backends/builtin/moogladder4filtereffect.cpp",
"src/effects/backends/builtin/reverbeffect.cpp",
"src/effects/backends/builtin/echoeffect.cpp",
"src/effects/backends/builtin/autopaneffect.cpp",
"src/effects/backends/builtin/phasereffect.cpp",
"src/effects/backends/builtin/metronomeeffect.cpp",
"src/effects/backends/builtin/tremoloeffect.cpp",

"src/effects/presets/effectpreset.cpp",
"src/effects/presets/effectchainpreset.cpp",
"src/effects/presets/effectparameterpreset.cpp",

"src/engine/effects/engineeffectsmanager.cpp",
"src/engine/effects/engineeffectrack.cpp",
"src/engine/effects/engineeffectchain.cpp",
"src/engine/effects/engineeffect.cpp",

Expand Down Expand Up @@ -986,6 +984,7 @@ def sources(self, build):
"src/widget/wtrackproperty.cpp",
"src/widget/wstarrating.cpp",
"src/widget/weffectchain.cpp",
"src/widget/weffectchainpresetbutton.cpp",
"src/widget/weffect.cpp",
"src/widget/weffectselector.cpp",
"src/widget/weffectparameter.cpp",
Expand Down Expand Up @@ -1362,7 +1361,6 @@ def sources(self, build):
'src/preferences/dialog/dlgprefdeckdlg.ui',
'src/preferences/dialog/dlgprefcolorsdlg.ui',
'src/preferences/dialog/dlgprefcrossfaderdlg.ui',
'src/preferences/dialog/dlgpreflv2dlg.ui',
'src/preferences/dialog/dlgprefeffectsdlg.ui',
'src/preferences/dialog/dlgprefeqdlg.ui',
'src/preferences/dialog/dlgpreferencesdlg.ui',
Expand Down
7 changes: 3 additions & 4 deletions build/features.py
Original file line number Diff line number Diff line change
Expand Up @@ -1170,10 +1170,9 @@ def configure(self, build, conf):
build.env.Append(CPPDEFINES='__LILV__')

def sources(self, build):
return ['src/effects/lv2/lv2backend.cpp',
'src/effects/lv2/lv2effectprocessor.cpp',
'src/effects/lv2/lv2manifest.cpp',
'src/preferences/dialog/dlgpreflv2.cpp']
return ['src/effects/backends/lv2/lv2backend.cpp',
'src/effects/backends/lv2/lv2effectprocessor.cpp',
'src/effects/backends/lv2/lv2manifest.cpp']

class Battery(Feature):
def description(self):
Expand Down
77 changes: 39 additions & 38 deletions lib/hidapi/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -74,62 +74,63 @@ simplicity):
#endif
#include <stdio.h>
#include <stdlib.h>

#include "hidapi.h"

#define MAX_STR 255

int main(int argc, char* argv[])
{
int res;
unsigned char buf[65];
wchar_t wstr[MAX_STR];
hid_device *handle;
int i;
int res;
unsigned char buf[65];
wchar_t wstr[MAX_STR];
hid_device* handle;
int i;

// Initialize the hidapi library
res = hid_init();
// Initialize the hidapi library
res = hid_init();

// Open the device using the VID, PID,
// and optionally the Serial number.
handle = hid_open(0x4d8, 0x3f, NULL);
// Open the device using the VID, PID,
// and optionally the Serial number.
handle = hid_open(0x4d8, 0x3f, NULL);

// Read the Manufacturer String
res = hid_get_manufacturer_string(handle, wstr, MAX_STR);
wprintf(L"Manufacturer String: %s\n", wstr);
// Read the Manufacturer String
res = hid_get_manufacturer_string(handle, wstr, MAX_STR);
wprintf(L"Manufacturer String: %s\n", wstr);

// Read the Product String
res = hid_get_product_string(handle, wstr, MAX_STR);
wprintf(L"Product String: %s\n", wstr);
// Read the Product String
res = hid_get_product_string(handle, wstr, MAX_STR);
wprintf(L"Product String: %s\n", wstr);

// Read the Serial Number String
res = hid_get_serial_number_string(handle, wstr, MAX_STR);
wprintf(L"Serial Number String: (%d) %s\n", wstr[0], wstr);
// Read the Serial Number String
res = hid_get_serial_number_string(handle, wstr, MAX_STR);
wprintf(L"Serial Number String: (%d) %s\n", wstr[0], wstr);

// Read Indexed String 1
res = hid_get_indexed_string(handle, 1, wstr, MAX_STR);
wprintf(L"Indexed String 1: %s\n", wstr);
// Read Indexed String 1
res = hid_get_indexed_string(handle, 1, wstr, MAX_STR);
wprintf(L"Indexed String 1: %s\n", wstr);

// Toggle LED (cmd 0x80). The first byte is the report number (0x0).
buf[0] = 0x0;
buf[1] = 0x80;
res = hid_write(handle, buf, 65);
// Toggle LED (cmd 0x80). The first byte is the report number (0x0).
buf[0] = 0x0;
buf[1] = 0x80;
res = hid_write(handle, buf, 65);

// Request state (cmd 0x81). The first byte is the report number (0x0).
buf[0] = 0x0;
buf[1] = 0x81;
res = hid_write(handle, buf, 65);
// Request state (cmd 0x81). The first byte is the report number (0x0).
buf[0] = 0x0;
buf[1] = 0x81;
res = hid_write(handle, buf, 65);

// Read requested state
res = hid_read(handle, buf, 65);
// Read requested state
res = hid_read(handle, buf, 65);

// Print out the returned buffer.
for (i = 0; i < 4; i++)
printf("buf[%d]: %d\n", i, buf[i]);
// Print out the returned buffer.
for (i = 0; i < 4; i++)
printf("buf[%d]: %d\n", i, buf[i]);

// Finalize the hidapi library
res = hid_exit();
// Finalize the hidapi library
res = hid_exit();

return 0;
return 0;
}
```

Expand Down
14 changes: 9 additions & 5 deletions lib/hidapi/configure.ac
Original file line number Diff line number Diff line change
Expand Up @@ -66,12 +66,13 @@ case $host in
LIBS_HIDRAW_PR="${LIBS_HIDRAW_PR} $libudev_LIBS"
CFLAGS_HIDRAW="${CFLAGS_HIDRAW} $libudev_CFLAGS"

# HIDAPI/libusb libs
#HIDAPI / libusb libs
AC_CHECK_LIB([rt], [clock_gettime], [LIBS_LIBUSB_PRIVATE="${LIBS_LIBUSB_PRIVATE} -lrt"], [hidapi_lib_error librt])
PKG_CHECK_MODULES([libusb], [libusb-1.0 >= 1.0.9], true, [hidapi_lib_error libusb-1.0])
LIBS_LIBUSB_PRIVATE="${LIBS_LIBUSB_PRIVATE} $libusb_LIBS"
CFLAGS_LIBUSB="${CFLAGS_LIBUSB} $libusb_CFLAGS"
;;
;
;
*-darwin*)
AC_MSG_RESULT([ (Mac OS X back-end)])
AC_DEFINE(OS_DARWIN, 1, [Mac implementation])
Expand All @@ -80,7 +81,8 @@ case $host in
os="darwin"
threads="pthreads"
LIBS="${LIBS} -framework IOKit -framework CoreFoundation"
;;
;
;
*-freebsd*)
AC_MSG_RESULT([ (FreeBSD back-end)])
AC_DEFINE(OS_FREEBSD, 1, [FreeBSD implementation])
Expand All @@ -95,7 +97,8 @@ case $host in
AC_CHECK_LIB([usb], [libusb_init], [LIBS_LIBUSB_PRIVATE="${LIBS_LIBUSB_PRIVATE} -lusb"], [hidapi_lib_error libusb])
AC_CHECK_LIB([iconv], [iconv_open], [LIBS_LIBUSB_PRIVATE="${LIBS_LIBUSB_PRIVATE} -liconv"], [hidapi_lib_error libiconv])
echo libs_priv: $LIBS_LIBUSB_PRIVATE
;;
;
;
*-kfreebsd*)
AC_MSG_RESULT([ (kFreeBSD back-end)])
AC_DEFINE(OS_KFREEBSD, 1, [kFreeBSD implementation])
Expand All @@ -106,7 +109,8 @@ case $host in

AC_CHECK_LIB([usb], [libusb_init], [LIBS_LIBUSB_PRIVATE="${LIBS_LIBUSB_PRIVATE} -lusb"], [hidapi_lib_error libusb])
echo libs_priv: $LIBS_LIBUSB_PRIVATE
;;
;
;
*-mingw*)
AC_MSG_RESULT([ (Windows back-end, using MinGW)])
backend="windows"
Expand Down
Loading