Skip to content

Commit

Permalink
Printable fx in InstrumentView (#155)
Browse files Browse the repository at this point in the history
* Printable fx in InstrumentView

    Uses ffmpeg to print reverb to currently selected sample and swap for sample with reverb
    
    Bump build tag
    Update check and build jobs to include IR-s
    
    On-screen notifications
  • Loading branch information
djdiskmachine authored Oct 22, 2024
1 parent 8d4cc59 commit b5b658b
Show file tree
Hide file tree
Showing 17 changed files with 414 additions and 117 deletions.
44 changes: 22 additions & 22 deletions .github/workflows/build.yml
Original file line number Diff line number Diff line change
Expand Up @@ -47,9 +47,9 @@ jobs:
shell: bash
working-directory: projects
run: |
curl -L -o lgpt-resources.zip https://github.com/djdiskmachine/lgpt-resources/archive/refs/tags/1.0.zip
curl -L -o lgpt-resources.zip https://github.com/djdiskmachine/lgpt-resources/archive/refs/tags/1.1.zip
unzip lgpt-resources.zip
mv lgpt-resources-1.0/*/ ./resources/packaging
mv lgpt-resources-1.1/*/ ./resources/packaging
rm -rf lgpt-resources*
./resources/packaging/lgpt_package.sh
Expand Down Expand Up @@ -85,9 +85,9 @@ jobs:
- name: Package build
working-directory: projects
run: |
curl -L -o lgpt-resources.zip https://github.com/djdiskmachine/lgpt-resources/archive/refs/tags/1.0.zip
curl -L -o lgpt-resources.zip https://github.com/djdiskmachine/lgpt-resources/archive/refs/tags/1.1.zip
unzip lgpt-resources.zip
mv lgpt-resources-1.0/*/ ./resources/packaging
mv lgpt-resources-1.1/*/ ./resources/packaging
rm -rf lgpt-resources*
./resources/packaging/lgpt_package.sh
Expand Down Expand Up @@ -123,9 +123,9 @@ jobs:
- name: Package build
working-directory: projects
run: |
curl -L -o lgpt-resources.zip https://github.com/djdiskmachine/lgpt-resources/archive/refs/tags/1.0.zip
curl -L -o lgpt-resources.zip https://github.com/djdiskmachine/lgpt-resources/archive/refs/tags/1.1.zip
unzip lgpt-resources.zip
mv lgpt-resources-1.0/*/ ./resources/packaging
mv lgpt-resources-1.1/*/ ./resources/packaging
rm -rf lgpt-resources*
./resources/packaging/lgpt_package.sh
Expand Down Expand Up @@ -160,9 +160,9 @@ jobs:
- name: Package build
working-directory: projects
run: |
curl -L -o lgpt-resources.zip https://github.com/djdiskmachine/lgpt-resources/archive/refs/tags/1.0.zip
curl -L -o lgpt-resources.zip https://github.com/djdiskmachine/lgpt-resources/archive/refs/tags/1.1.zip
unzip lgpt-resources.zip
mv lgpt-resources-1.0/*/ ./resources/packaging
mv lgpt-resources-1.1/*/ ./resources/packaging
rm -rf lgpt-resources*
./resources/packaging/lgpt_package.sh
Expand Down Expand Up @@ -204,9 +204,9 @@ jobs:
- name: Package build
working-directory: projects
run: |
curl -L -o lgpt-resources.zip https://github.com/djdiskmachine/lgpt-resources/archive/refs/tags/1.0.zip
curl -L -o lgpt-resources.zip https://github.com/djdiskmachine/lgpt-resources/archive/refs/tags/1.1.zip
unzip lgpt-resources.zip
mv lgpt-resources-1.0/*/ ./resources/packaging
mv lgpt-resources-1.1/*/ ./resources/packaging
rm -rf lgpt-resources*
./resources/packaging/lgpt_package.sh
Expand Down Expand Up @@ -243,9 +243,9 @@ jobs:
- name: Package build
working-directory: projects
run: |
curl -L -o lgpt-resources.zip https://github.com/djdiskmachine/lgpt-resources/archive/refs/tags/1.0.zip
curl -L -o lgpt-resources.zip https://github.com/djdiskmachine/lgpt-resources/archive/refs/tags/1.1.zip
unzip lgpt-resources.zip
mv lgpt-resources-1.0/*/ ./resources/packaging
mv lgpt-resources-1.1/*/ ./resources/packaging
rm -rf lgpt-resources*
./resources/packaging/lgpt_package.sh
Expand Down Expand Up @@ -282,9 +282,9 @@ jobs:
- name: Package build
working-directory: projects
run: |
curl -L -o lgpt-resources.zip https://github.com/djdiskmachine/lgpt-resources/archive/refs/tags/1.0.zip
curl -L -o lgpt-resources.zip https://github.com/djdiskmachine/lgpt-resources/archive/refs/tags/1.1.zip
unzip lgpt-resources.zip
mv lgpt-resources-1.0/*/ ./resources/packaging
mv lgpt-resources-1.1/*/ ./resources/packaging
rm -rf lgpt-resources*
./resources/packaging/lgpt_package.sh
Expand Down Expand Up @@ -323,9 +323,9 @@ jobs:
- name: Package build
working-directory: ./workspace/projects
run: |
curl -L -o lgpt-resources.zip https://github.com/djdiskmachine/lgpt-resources/archive/refs/tags/1.0.zip
curl -L -o lgpt-resources.zip https://github.com/djdiskmachine/lgpt-resources/archive/refs/tags/1.1.zip
unzip lgpt-resources.zip
mv lgpt-resources-1.0/*/ ./resources/packaging
mv lgpt-resources-1.1/*/ ./resources/packaging
rm -rf lgpt-resources*
./resources/packaging/lgpt_package.sh
Expand Down Expand Up @@ -363,9 +363,9 @@ jobs:
- name: Package build
working-directory: projects
run: |
curl -L -o lgpt-resources.zip https://github.com/djdiskmachine/lgpt-resources/archive/refs/tags/1.0.zip
curl -L -o lgpt-resources.zip https://github.com/djdiskmachine/lgpt-resources/archive/refs/tags/1.1.zip
unzip lgpt-resources.zip
mv lgpt-resources-1.0/*/ ./resources/packaging
mv lgpt-resources-1.1/*/ ./resources/packaging
rm -rf lgpt-resources*
./resources/packaging/lgpt_package.sh
Expand Down Expand Up @@ -403,9 +403,9 @@ jobs:
- name: Package build
working-directory: projects
run: |
curl -L -o lgpt-resources.zip https://github.com/djdiskmachine/lgpt-resources/archive/refs/tags/1.0.zip
curl -L -o lgpt-resources.zip https://github.com/djdiskmachine/lgpt-resources/archive/refs/tags/1.1.zip
unzip lgpt-resources.zip
mv lgpt-resources-1.0/*/ ./resources/packaging
mv lgpt-resources-1.1/*/ ./resources/packaging
rm -rf lgpt-resources*
./resources/packaging/lgpt_package.sh
Expand Down Expand Up @@ -442,9 +442,9 @@ jobs:
- name: Package build
working-directory: projects
run: |
curl -L -o lgpt-resources.zip https://github.com/djdiskmachine/lgpt-resources/archive/refs/tags/1.0.zip
curl -L -o lgpt-resources.zip https://github.com/djdiskmachine/lgpt-resources/archive/refs/tags/1.1.zip
unzip lgpt-resources.zip
mv lgpt-resources-1.0/*/ ./resources/packaging
mv lgpt-resources-1.1/*/ ./resources/packaging
rm -rf lgpt-resources*
./resources/packaging/lgpt_package.sh
Expand Down
44 changes: 22 additions & 22 deletions .github/workflows/check.yml
Original file line number Diff line number Diff line change
Expand Up @@ -93,9 +93,9 @@ jobs:
shell: bash
working-directory: projects
run: |
curl -L -o lgpt-resources.zip https://github.com/djdiskmachine/lgpt-resources/archive/refs/tags/1.0.zip
curl -L -o lgpt-resources.zip https://github.com/djdiskmachine/lgpt-resources/archive/refs/tags/1.1.zip
unzip lgpt-resources.zip
mv lgpt-resources-1.0/*/ ./resources/packaging
mv lgpt-resources-1.1/*/ ./resources/packaging
rm -rf lgpt-resources*
./resources/packaging/lgpt_package.sh
Expand Down Expand Up @@ -125,9 +125,9 @@ jobs:
- name: Package build
working-directory: projects
run: |
curl -L -o lgpt-resources.zip https://github.com/djdiskmachine/lgpt-resources/archive/refs/tags/1.0.zip
curl -L -o lgpt-resources.zip https://github.com/djdiskmachine/lgpt-resources/archive/refs/tags/1.1.zip
unzip lgpt-resources.zip
mv lgpt-resources-1.0/*/ ./resources/packaging
mv lgpt-resources-1.1/*/ ./resources/packaging
rm -rf lgpt-resources*
./resources/packaging/lgpt_package.sh
Expand Down Expand Up @@ -157,9 +157,9 @@ jobs:
- name: Package build
working-directory: projects
run: |
curl -L -o lgpt-resources.zip https://github.com/djdiskmachine/lgpt-resources/archive/refs/tags/1.0.zip
curl -L -o lgpt-resources.zip https://github.com/djdiskmachine/lgpt-resources/archive/refs/tags/1.1.zip
unzip lgpt-resources.zip
mv lgpt-resources-1.0/*/ ./resources/packaging
mv lgpt-resources-1.1/*/ ./resources/packaging
rm -rf lgpt-resources*
./resources/packaging/lgpt_package.sh
Expand Down Expand Up @@ -195,9 +195,9 @@ jobs:
- name: Package build
working-directory: projects
run: |
curl -L -o lgpt-resources.zip https://github.com/djdiskmachine/lgpt-resources/archive/refs/tags/1.0.zip
curl -L -o lgpt-resources.zip https://github.com/djdiskmachine/lgpt-resources/archive/refs/tags/1.1.zip
unzip lgpt-resources.zip
mv lgpt-resources-1.0/*/ ./resources/packaging
mv lgpt-resources-1.1/*/ ./resources/packaging
rm -rf lgpt-resources*
./resources/packaging/lgpt_package.sh
Expand Down Expand Up @@ -228,9 +228,9 @@ jobs:
- name: Package build
working-directory: projects
run: |
curl -L -o lgpt-resources.zip https://github.com/djdiskmachine/lgpt-resources/archive/refs/tags/1.0.zip
curl -L -o lgpt-resources.zip https://github.com/djdiskmachine/lgpt-resources/archive/refs/tags/1.1.zip
unzip lgpt-resources.zip
mv lgpt-resources-1.0/*/ ./resources/packaging
mv lgpt-resources-1.1/*/ ./resources/packaging
rm -rf lgpt-resources*
./resources/packaging/lgpt_package.sh
Expand Down Expand Up @@ -263,9 +263,9 @@ jobs:
- name: Package build
working-directory: ./workspace/projects
run: |
curl -L -o lgpt-resources.zip https://github.com/djdiskmachine/lgpt-resources/archive/refs/tags/1.0.zip
curl -L -o lgpt-resources.zip https://github.com/djdiskmachine/lgpt-resources/archive/refs/tags/1.1.zip
unzip lgpt-resources.zip
mv lgpt-resources-1.0/*/ ./resources/packaging
mv lgpt-resources-1.1/*/ ./resources/packaging
rm -rf lgpt-resources*
./resources/packaging/lgpt_package.sh
Expand Down Expand Up @@ -297,9 +297,9 @@ jobs:
- name: Package build
working-directory: projects
run: |
curl -L -o lgpt-resources.zip https://github.com/djdiskmachine/lgpt-resources/archive/refs/tags/1.0.zip
curl -L -o lgpt-resources.zip https://github.com/djdiskmachine/lgpt-resources/archive/refs/tags/1.1.zip
unzip lgpt-resources.zip
mv lgpt-resources-1.0/*/ ./resources/packaging
mv lgpt-resources-1.1/*/ ./resources/packaging
rm -rf lgpt-resources*
./resources/packaging/lgpt_package.sh
Expand Down Expand Up @@ -331,9 +331,9 @@ jobs:
- name: Package build
working-directory: projects
run: |
curl -L -o lgpt-resources.zip https://github.com/djdiskmachine/lgpt-resources/archive/refs/tags/1.0.zip
curl -L -o lgpt-resources.zip https://github.com/djdiskmachine/lgpt-resources/archive/refs/tags/1.1.zip
unzip lgpt-resources.zip
mv lgpt-resources-1.0/*/ ./resources/packaging
mv lgpt-resources-1.1/*/ ./resources/packaging
rm -rf lgpt-resources*
./resources/packaging/lgpt_package.sh
Expand Down Expand Up @@ -366,9 +366,9 @@ jobs:
- name: Package build
working-directory: projects
run: |
curl -L -o lgpt-resources.zip https://github.com/djdiskmachine/lgpt-resources/archive/refs/tags/1.0.zip
curl -L -o lgpt-resources.zip https://github.com/djdiskmachine/lgpt-resources/archive/refs/tags/1.1.zip
unzip lgpt-resources.zip
mv lgpt-resources-1.0/*/ ./resources/packaging
mv lgpt-resources-1.1/*/ ./resources/packaging
rm -rf lgpt-resources*
./resources/packaging/lgpt_package.sh
Expand Down Expand Up @@ -399,9 +399,9 @@ jobs:
- name: Package build
working-directory: projects
run: |
curl -L -o lgpt-resources.zip https://github.com/djdiskmachine/lgpt-resources/archive/refs/tags/1.0.zip
curl -L -o lgpt-resources.zip https://github.com/djdiskmachine/lgpt-resources/archive/refs/tags/1.1.zip
unzip lgpt-resources.zip
mv lgpt-resources-1.0/*/ ./resources/packaging
mv lgpt-resources-1.1/*/ ./resources/packaging
rm -rf lgpt-resources*
./resources/packaging/lgpt_package.sh
Expand Down Expand Up @@ -432,9 +432,9 @@ jobs:
- name: Package build
working-directory: projects
run: |
curl -L -o lgpt-resources.zip https://github.com/djdiskmachine/lgpt-resources/archive/refs/tags/1.0.zip
curl -L -o lgpt-resources.zip https://github.com/djdiskmachine/lgpt-resources/archive/refs/tags/1.1.zip
unzip lgpt-resources.zip
mv lgpt-resources-1.0/*/ ./resources/packaging
mv lgpt-resources-1.1/*/ ./resources/packaging
rm -rf lgpt-resources*
./resources/packaging/lgpt_package.sh
Expand Down
15 changes: 15 additions & 0 deletions docs/wiki/What-is-LittlePiggyTracker.md
Original file line number Diff line number Diff line change
Expand Up @@ -318,6 +318,21 @@ To move from one screen to the other, press the RTrigger combined with the direc
![](https://d2mxuefqeaa7sj.cloudfront.net/s_B9C92C3440E8671360862F10CAB0FE70873BFE49CFB51CA246C781C17506C258_1522140478226_instrument_1.1f.png)

- **sample:** selects the .wav file to associate with the instrument. you can select the same sample in more than one instrument. if you tap A,A here it will take you to the Sample Import Screen (which lets you load new .WAV into your project).
- **FX selector:** Select between 4 impulse responses to print to the currently selected sample
- **Wet:** How much of the effect to print 0 = nothing, 10 = probably too much
- **Pad** For short samples, add up to 5000 ms silence to the end of the sample to let the reverb tail ring out.
FX section uses ffmpeg to process audio
Select which reverb you want by holding A+Left/Right. Apply it by double-tapping A
Reverbs created by using ffmpegs convolution filter [Impulse response](https://en.wikipedia.org/wiki/Convolution)
Convolution wraps the audio file from start to end. If the sample is very short, you can get
a longer reverb tail by setting the pad parameter.
If applied to the sample Kick.wav the audio file with reverb applied will be called Kick_.wav
IR credits:
Room by [Uzbanur](https://freesound.org/people/Uzbazur/sounds/382907/)
Hall by [NoiseCollector](https://freesound.org/people/NoiseCollector/sounds/184127/)
Spring by [recordinghopkins](https://freesound.org/people/recordinghopkins/sounds/175302/)
Church by [jotarrl](https://freesound.org/people/jotarrl/sounds/725443/)

- **volume:**
- **pan:** pans the instrument left or right (0x7F is center)
- **root note**
Expand Down
3 changes: 2 additions & 1 deletion projects/Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -38,6 +38,7 @@ COMMONDIRS := \
../sources/Application/Controllers \
../sources/Application/Commands \
../sources/Application/Audio \
../sources/Application/FX \
../sources/Application/Views \
../sources/Application/Views/ModalDialogs \
../sources/Application/Views/BaseClasses \
Expand Down Expand Up @@ -258,7 +259,7 @@ COMMONFILES := \
char.o n_assert.o fixed.o wildcard.o \
SyncMaster.o TablePlayback.o Player.o \
Table.o TableView.o\
InstrumentBank.o WavFileWriter.o WavFile.o MidiInstrument.o Filters.o SampleVariable.o SampleInstrument.o SamplePool.o CommandList.o \
InstrumentBank.o WavFileWriter.o WavFile.o MidiInstrument.o Filters.o SampleVariable.o SampleInstrument.o SamplePool.o CommandList.o FxPrinter.o\
PersistencyService.o Persistent.o \
Observable.o SingletonRegistry.o \
Audio.o AudioMixer.o AudioOutDriver.o AudioDriver.o \
Expand Down
12 changes: 12 additions & 0 deletions projects/lgpt.vcproj
Original file line number Diff line number Diff line change
Expand Up @@ -1073,6 +1073,18 @@
>
</File>
</Filter>
<Filter
Name="FX"
>
<File
RelativePath="..\sources\Application\FX\FxPrinter.cpp"
>
</File>
<File
RelativePath="..\sources\Application\FX\FxPrinter.h"
>
</File>
</Filter>
<Filter
Name="Player"
>
Expand Down
2 changes: 2 additions & 0 deletions projects/lgpt.vcxproj
Original file line number Diff line number Diff line change
Expand Up @@ -333,6 +333,7 @@
<ClCompile Include="..\sources\Application\Controllers\ControlRoom.cpp" />
<ClCompile Include="..\sources\Application\Mixer\MixBus.cpp" />
<ClCompile Include="..\sources\Application\Mixer\MixerService.cpp" />
<ClCompile Include="..\sources\Application\FX\FxPrinter.cpp" />
<ClCompile Include="..\sources\UIFramework\BasicDatas\GUIEvent.cpp" />
<ClCompile Include="..\sources\UIFramework\BasicDatas\GUIRect.cpp" />
<ClCompile Include="..\sources\UIFramework\Interfaces\I_GUIWindowImp.cpp" />
Expand Down Expand Up @@ -469,6 +470,7 @@
<ClInclude Include="..\sources\Application\Controllers\ControlRoom.h" />
<ClInclude Include="..\sources\Application\Mixer\MixBus.h" />
<ClInclude Include="..\sources\Application\Mixer\MixerService.h" />
<ClInclude Include="..\sources\Application\FX\FxPrinter.h" />
<ClInclude Include="..\sources\UIFramework\Interfaces\I_GUIGraphics.h" />
<ClInclude Include="..\sources\UIFramework\SimpleBaseClasses\GUIWindow.h" />
<ClInclude Include="..\sources\Externals\RTAudio\RtAudio.h" />
Expand Down
Loading

0 comments on commit b5b658b

Please sign in to comment.