-
-
Notifications
You must be signed in to change notification settings - Fork 60
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
* Normalizing factory preset output levels * CI tweaks and making mix group parameter preset agnostic * Update validation script for MacOS
- Loading branch information
1 parent
6283854
commit 0404408
Showing
38 changed files
with
224 additions
and
154 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,48 +1,48 @@ | ||
name: clang-tidy | ||
|
||
on: | ||
pull_request: | ||
branches: | ||
- main | ||
- develop | ||
paths: | ||
- '**.cpp' | ||
- '**.h' | ||
|
||
workflow_dispatch: | ||
|
||
jobs: | ||
build_and_test: | ||
if: contains(toJson(github.event.commits), '***NO_CI***') == false && contains(toJson(github.event.commits), '[ci skip]') == false && contains(toJson(github.event.commits), '[skip ci]') == false | ||
name: Run clang-tidy on pull request | ||
runs-on: ubuntu-latest | ||
steps: | ||
- name: Install Linux Deps | ||
if: runner.os == 'Linux' | ||
run: | | ||
sudo apt-get update | ||
sudo apt install clang-tidy | ||
- name: Checkout code | ||
uses: actions/checkout@v2 | ||
with: | ||
persist-credentials: false | ||
fetch-depth: 0 | ||
|
||
- name: Run clang-tidy | ||
shell: bash | ||
working-directory: ${{github.workspace}}/Plugin | ||
run: find Source -iname "*.cpp" -not -path "Source/Headless*" | xargs clang-tidy > tidy_log.txt && status=0 || status=1 | ||
|
||
- name: Check results | ||
shell: bash | ||
working-directory: ${{github.workspace}}/Plugin | ||
run: | | ||
num_failures=$(grep "" -c tidy_log.txt) | ||
num_ignore=$(echo $(($(grep "file not found" -c tidy_log.txt)*3))) | ||
num_actual=$(($num_failures - $num_ignore)) | ||
if [ "$num_actual" -gt 1 ]; then | ||
more tidy_log.txt | ||
exit 1 | ||
fi | ||
#name: clang-tidy | ||
# | ||
#on: | ||
# pull_request: | ||
# branches: | ||
# - main | ||
# - develop | ||
# paths: | ||
# - '**.cpp' | ||
# - '**.h' | ||
# | ||
# workflow_dispatch: | ||
# | ||
#jobs: | ||
# build_and_test: | ||
# if: contains(toJson(github.event.commits), '***NO_CI***') == false && contains(toJson(github.event.commits), '[ci skip]') == false && contains(toJson(github.event.commits), '[skip ci]') == false | ||
# name: Run clang-tidy on pull request | ||
# runs-on: ubuntu-latest | ||
# | ||
# steps: | ||
# - name: Install Linux Deps | ||
# if: runner.os == 'Linux' | ||
# run: | | ||
# sudo apt-get update | ||
# sudo apt install clang-tidy | ||
# | ||
# - name: Checkout code | ||
# uses: actions/checkout@v2 | ||
# with: | ||
# persist-credentials: false | ||
# fetch-depth: 0 | ||
# | ||
# - name: Run clang-tidy | ||
# shell: bash | ||
# working-directory: ${{github.workspace}}/Plugin | ||
# run: find Source -iname "*.cpp" -not -path "Source/Headless*" | xargs clang-tidy > tidy_log.txt && status=0 || status=1 | ||
# | ||
# - name: Check results | ||
# shell: bash | ||
# working-directory: ${{github.workspace}}/Plugin | ||
# run: | | ||
# num_failures=$(grep "" -c tidy_log.txt) | ||
# num_ignore=$(echo $(($(grep "file not found" -c tidy_log.txt)*3))) | ||
# num_actual=$(($num_failures - $num_ignore)) | ||
# if [ "$num_actual" -gt 1 ]; then | ||
# more tidy_log.txt | ||
# exit 1 | ||
# fi |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,63 +1,63 @@ | ||
name: CI-iOS | ||
|
||
on: | ||
push: | ||
branches: | ||
- master | ||
- develop | ||
paths-ignore: | ||
- 'Manual/**' | ||
- 'Paper/**' | ||
- 'Simulations/**' | ||
- 'Testing/**' | ||
- 'Scripts/**' | ||
- '*.md' | ||
pull_request: | ||
branches: | ||
- master | ||
- develop | ||
paths-ignore: | ||
- 'Manual/**' | ||
- 'Paper/**' | ||
- 'Simulations/**' | ||
- 'Testing/**' | ||
- 'Scripts/**' | ||
- '*.md' | ||
|
||
workflow_dispatch: | ||
|
||
jobs: | ||
build_and_test: | ||
if: contains(toJson(github.event.commits), '***NO_CI***') == false && contains(toJson(github.event.commits), '[ci skip]') == false && contains(toJson(github.event.commits), '[skip ci]') == false | ||
name: Build AUv3 plugin for iOS | ||
runs-on: macos-latest | ||
steps: | ||
- name: Get latest CMake | ||
uses: lukka/get-cmake@latest | ||
|
||
- name: Checkout code | ||
uses: actions/checkout@v2 | ||
with: | ||
submodules: recursive | ||
|
||
- uses: Apple-Actions/import-codesign-certs@v1 | ||
with: | ||
p12-file-base64: ${{ secrets.MAC_CERTIFICATES_BASE64 }} | ||
p12-password: ${{ secrets.MAC_CERTIFICATES_PASS }} | ||
|
||
- uses: Apple-Actions/download-provisioning-profiles@v1 | ||
with: | ||
bundle-id: com.chowdsp.CHOWTapeModel* | ||
issuer-id: ${{ secrets.APPSTORE_ISSUER_ID }} | ||
api-key-id: ${{ secrets.APPSTORE_KEY_ID }} | ||
api-private-key: ${{ secrets.APPSTORE_PRIVATE_KEY }} | ||
|
||
- name: Configure | ||
shell: bash | ||
run: cmake -Bbuild-ios Plugin -GXcode -DCMAKE_SYSTEM_NAME=iOS -DCMAKE_OSX_DEPLOYMENT_TARGET=11.4 -DCMAKE_XCODE_ATTRIBUTE_TARGETED_DEVICE_FAMILY="1,2" -DCMAKE_XCODE_ATTRIBUTE_CODE_SIGN_STYLE="Manual" -DCMAKE_XCODE_ATTRIBUTE_CODE_SIGN_IDENTITY="Apple Distribution" -DCMAKE_XCODE_ATTRIBUTE_PROVISIONING_PROFILE_SPECIFIER="ChowTapeModel" -DCMAKE_XCODE_ATTRIBUTE_DEVELOPMENT_TEAM=${{ secrets.APPLE_TEAM_ID }} | ||
|
||
|
||
- name: Build | ||
shell: bash | ||
run: cmake --build build-ios --config Release --parallel 4 | xcpretty | ||
#name: CI-iOS | ||
# | ||
#on: | ||
# push: | ||
# branches: | ||
# - master | ||
# - develop | ||
# paths-ignore: | ||
# - 'Manual/**' | ||
# - 'Paper/**' | ||
# - 'Simulations/**' | ||
# - 'Testing/**' | ||
# - 'Scripts/**' | ||
# - '*.md' | ||
# pull_request: | ||
# branches: | ||
# - master | ||
# - develop | ||
# paths-ignore: | ||
# - 'Manual/**' | ||
# - 'Paper/**' | ||
# - 'Simulations/**' | ||
# - 'Testing/**' | ||
# - 'Scripts/**' | ||
# - '*.md' | ||
# | ||
# workflow_dispatch: | ||
# | ||
#jobs: | ||
# build_and_test: | ||
# if: contains(toJson(github.event.commits), '***NO_CI***') == false && contains(toJson(github.event.commits), '[ci skip]') == false && contains(toJson(github.event.commits), '[skip ci]') == false | ||
# name: Build AUv3 plugin for iOS | ||
# runs-on: macos-latest | ||
# | ||
# steps: | ||
# - name: Get latest CMake | ||
# uses: lukka/get-cmake@latest | ||
# | ||
# - name: Checkout code | ||
# uses: actions/checkout@v2 | ||
# with: | ||
# submodules: recursive | ||
# | ||
# - uses: Apple-Actions/import-codesign-certs@v1 | ||
# with: | ||
# p12-file-base64: ${{ secrets.MAC_CERTIFICATES_BASE64 }} | ||
# p12-password: ${{ secrets.MAC_CERTIFICATES_PASS }} | ||
# | ||
# - uses: Apple-Actions/download-provisioning-profiles@v1 | ||
# with: | ||
# bundle-id: com.chowdsp.CHOWTapeModel* | ||
# issuer-id: ${{ secrets.APPSTORE_ISSUER_ID }} | ||
# api-key-id: ${{ secrets.APPSTORE_KEY_ID }} | ||
# api-private-key: ${{ secrets.APPSTORE_PRIVATE_KEY }} | ||
# | ||
# - name: Configure | ||
# shell: bash | ||
# run: cmake -Bbuild-ios Plugin -GXcode -DCMAKE_SYSTEM_NAME=iOS -DCMAKE_OSX_DEPLOYMENT_TARGET=11.4 -DCMAKE_XCODE_ATTRIBUTE_TARGETED_DEVICE_FAMILY="1,2" -DCMAKE_XCODE_ATTRIBUTE_CODE_SIGN_STYLE="Manual" -DCMAKE_XCODE_ATTRIBUTE_CODE_SIGN_IDENTITY="Apple Distribution" -DCMAKE_XCODE_ATTRIBUTE_PROVISIONING_PROFILE_SPECIFIER="ChowTapeModel" -DCMAKE_XCODE_ATTRIBUTE_DEVELOPMENT_TEAM=${{ secrets.APPLE_TEAM_ID }} | ||
# | ||
# | ||
# - name: Build | ||
# shell: bash | ||
# run: cmake --build build-ios --config Release --parallel 4 | xcpretty |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,63 @@ | ||
#include "PluginProcessor.h" | ||
|
||
class PresetLevelTest : public UnitTest | ||
{ | ||
public: | ||
PresetLevelTest() : UnitTest ("PresetLevelTest") | ||
{ | ||
} | ||
|
||
void runTest() override | ||
{ | ||
beginTest ("Preset Level Test"); | ||
|
||
std::unique_ptr<ChowtapeModelAudioProcessor> proc { | ||
dynamic_cast<ChowtapeModelAudioProcessor*> (createPluginFilterOfType ( | ||
AudioProcessor::WrapperType::wrapperType_Standalone)) | ||
}; | ||
|
||
static constexpr double sampleRate = 48000.0; | ||
static constexpr int blockSize = 512; | ||
const auto numChannels = proc->getMainBusNumInputChannels(); | ||
|
||
auto rand = getRandom(); | ||
|
||
juce::AudioBuffer<float> buffer { numChannels, blockSize }; | ||
juce::MidiBuffer midi; | ||
|
||
for (int programIdx = 0; programIdx < proc->getNumPrograms(); ++programIdx) | ||
{ | ||
proc->setCurrentProgram (programIdx); | ||
logMessage ("Loading preset: " + proc->getProgramName (programIdx)); | ||
proc->prepareToPlay (sampleRate, blockSize); | ||
|
||
float maxMagnitudeDB = 0.0f; | ||
for (int i = 0; i < 10; ++i) | ||
{ | ||
for (int ch = 0; ch < numChannels; ++ch) | ||
{ | ||
for (int n = 0; n < blockSize; ++n) | ||
buffer.setSample (ch, n, rand.nextFloat() * 2.0f - 1.0f); | ||
} | ||
|
||
proc->processBlock (buffer, midi); | ||
|
||
const auto magnitudeDB = chowdsp::BufferMath::getMagnitude (buffer); | ||
expectGreaterThan (magnitudeDB, -60.0f); | ||
expectLessOrEqual (magnitudeDB, 3.0f); | ||
|
||
maxMagnitudeDB = juce::jmax (magnitudeDB, maxMagnitudeDB); | ||
} | ||
expectGreaterThan (maxMagnitudeDB, -3.0f); | ||
|
||
proc->releaseResources(); | ||
} | ||
} | ||
}; | ||
|
||
static PresetLevelTest presetLevelTest; | ||
|
||
// Sink / Chorus4 | ||
// Carter / Bass - 808 Maker | ||
// Carter / Guitar - Short Plucked | ||
// COolWAV / Drift with me |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.