Compare commits

..

1 Commits

Author SHA1 Message Date
Claude Heiland-Allen 2cb064696d Merge branch 'parallel-synapse-generation' into 'main'
parallelize synapse generation using OpenMP

See merge request then-try-this/samplebrain!6
2022-10-05 12:12:54 +00:00
3 changed files with 109 additions and 108 deletions

131
README.md
View File

@ -14,7 +14,7 @@ tweakable parameters until it became slightly out of control.
![](docs/pics/screenshot.png) ![](docs/pics/screenshot.png)
# How do I use this thing? Quick start:
1. Load a bunch of short wav files into the brain 1. Load a bunch of short wav files into the brain
2. Click (re)generate brain 2. Click (re)generate brain
@ -23,17 +23,23 @@ tweakable parameters until it became slightly out of control.
5. Press play 5. Press play
6. Tweak brain 6. Tweak brain
Larger wav files like whole tracks can be used, but take a long time The default block size (3000) is really high to prevent CPU glitches -
to process, after which they can be saved as "brain" files and 500 to 1000 is a better range. Larger wav files like whole tracks can
instantly reloaded. be used, but take a long time to process, after which they can be
saved as "brain" files and instantly reloaded.
Check the [Manual](docs/manual.md) here for the details on all the # [Demo brain session](https://static.thentrythis.org/samplebrain/demo.samplebrain)
parameters and try out the [demo brain session](https://static.thentrythis.org/samplebrain/demo.samplebrain).
Load the demo using "load session" not "load brain" (sessions contain Load this file using "load session" not "load brain" (sessions contain
both the target and brain samples). The original samples used to both the target and brain samples). The original samples used to
create the demo session [can be found here for create the demo session [can be found here for
testing](https://static.thentrythis.org/samplebrain/samples/). testing](https://static.thentrythis.org/samplebrain/samples/).
# [Manual](docs/manual.md)
Full description of all the parameters and a bit of the thinking
behind it.
# Download # Download
As this is experimental non-commercial software (only originally As this is experimental non-commercial software (only originally
@ -41,24 +47,19 @@ written to run on a couple of computers!) you will have to bear with
us as we gradually stabilise things based on your feedback. There us as we gradually stabilise things based on your feedback. There
might currently be problems running it on 64bit Windows. might currently be problems running it on 64bit Windows.
* **Windows**: [samplebrain_0.18.4_win.zip](https://static.thentrythis.org/samplebrain/samplebrain_0.18.4_win.zip) * **Windows**: [samplebrain_0.18.3_win.zip](https://static.thentrythis.org/samplebrain/samplebrain_0.18.3_win.zip)
* **Mac (intel/m1)**: [samplebrain_0.18.4_macintel.zip](https://static.thentrythis.org/samplebrain/samplebrain_0.18.4_macintel.app.zip) * **Mac (intel/m1)**: [samplebrain_0.18.3_macintel.zip](https://static.thentrythis.org/samplebrain/samplebrain_0.18.3_macintel.app.zip)
Changes in 0.18.4: New audio device settings window and updated (New 0.18.3 release fixes loading samples from paths longer than 255 characters)
windows build. Better default block size, tool tip tweaks and fixes
for dark themes by [Claude Heiland-Allen](https://mathr.co.uk/).
For old versions see the [changelog](changelog.md)
Mac note: As this software is not on the apple store, to run the Mac note: As this software is not on the apple store, to run the
binary you need to tell your mac it's ok: Go to System Preferences > binary you need to tell your mac it's ok: Go to System Preferences >
Security & Privacy > General. At the bottom of the window, select Security & Privacy > General. At the bottom of the window, select
"Allow apps to be downloaded from Anywhere". "Allow apps to be downloaded from Anywhere".
Thank you to [Nik Gaffney](http://fo.am) for help with the Apple Thank you to [Nik Gaffney](http://fo.am) for help with the Apple builds
builds.
### Linux
# Linux install
<a href='https://flathub.org/apps/details/org.thentrythis.Samplebrain'><img width='200' alt='Download on Flathub' src='https://flathub.org/assets/badges/flathub-badge-en.png'/></a> <a href='https://flathub.org/apps/details/org.thentrythis.Samplebrain'><img width='200' alt='Download on Flathub' src='https://flathub.org/assets/badges/flathub-badge-en.png'/></a>
#### Ubuntu #### Ubuntu
@ -70,12 +71,98 @@ If you'd like the right font, optionally:
$ sudo apt install ttf-mscorefonts-installer $ sudo apt install ttf-mscorefonts-installer
# [Building from source](building.md) # Old/broken/spurious binaries
* **Windows**: [samplebrain_0.18.2_win.zip](https://static.thentrythis.org/samplebrain/samplebrain_0.18.2_win.zip)
* **Windows**: [samplebrain_0.18.1_win.zip](https://static.thentrythis.org/samplebrain/samplebrain_0.18.1_win.zip)
* **Windows**: [samplebrain_0.18_win.zip](https://static.thentrythis.org/samplebrain/samplebrain_0.18_win.zip)
* **Mac (intel/m1)**: [samplebrain_0.18.1_macintel.zip](https://static.thentrythis.org/samplebrain/samplebrain_0.18.1_macintel.app.zip)
* **Mac (intel)**: [samplebrain_0.18_macintel.zip](https://static.thentrythis.org/samplebrain/samplebrain_0.18_macintel.zip)
* **Mac (m1)**: [samplebrain_0.18_m1_v2.dmg](https://static.thentrythis.org/samplebrain/samplebrain_0.18_m1_v2.dmg)
# Building from source
## Linux (Ubuntu)
Install libraries for the sample engine (use brew on mac, MinGW on win):
$ sudo apt install libsndfile1-dev portaudio19-dev liblo-dev libfftw3-dev
Install dependencies for the interface:
$ sudo apt install build-essential qtcreator qt5-default
Build & run it:
$ mkdir build
$ cd build
$ qmake ..
$ make
$ sudo make install
$ samplebrain
## Mac
Install libraries for sample engine:
$ brew install fftw portaudio liblo libsndfile
Install dependencies for the interface:
$ brew install qt
$ brew link qt
Build & run it:
$ mkdir build
$ cd build
$ qmake ..
$ make
`samplebrain.app` should then be in the app folder for you to run.
# Mac build additions
To make a mac app bundle:
Run `macdeployqt` which copies all dependencies inside the app.
$ cd build
$ macdeployqt
If the icon is not visible, you might need to copy desktop/samplebrain.icns (the icon) to the Resources directory in the app bundle.
$ cp ../desktop/samplebrain.icns samplebrain.app/Contents/Resources
Then edit Info.plist to add samplebrain.icns to CFBundleIconFile. Key `CFBundleIconFile` should match:
<key>CFBundleIconFile</key>
<string>samplebrain.icns</string>
You might also need to resign the app bundle after making any changes
$ codesign --force --deep --sign - samplebrain.app
## What's here
1. brain:
* samplebrain engine code
2. app:
* code to build the Qt GUI app
3. gui:
* qt designer project files
4. desktop:
* various icon files etc
4. cooking:
* some sketches and ideas
* proof of concept written in python
* brief initial (abandoned) attempt at clojure version
MFCC algo courtesy of the Aquila library by Zbigniew Siciarz MIT/X11 MFCC algo courtesy of the Aquila library by Zbigniew Siciarz MIT/X11
licence 2007-2014 (see brain/src/aquila/LICENCE). This program is free licence 2007-2014 (see brain/src/aquila/LICENCE)
software licenced under GNU General Public License version 2 (see
LICENCE). Written by [Dave Griffiths at Then Try This](http://thentrythis.org). This program is free software licenced under GNU General Public
License version 2 (see LICENCE).
Written by [Dave Griffiths at Then Try This](http://thentrythis.org).
## Links ## Links

View File

@ -1,59 +0,0 @@
# Building from source
## Linux (Ubuntu)
Install libraries for the sample engine (use brew on mac, MinGW on win):
$ sudo apt install libsndfile1-dev portaudio19-dev liblo-dev libfftw3-dev
Install dependencies for the interface:
$ sudo apt install build-essential qtcreator qt5-default
Build & run it:
$ mkdir build
$ cd build
$ qmake ..
$ make
$ sudo make install
$ samplebrain
## Mac
Install libraries for sample engine:
$ brew install fftw portaudio liblo libsndfile
Install dependencies for the interface:
$ brew install qt
$ brew link qt
Build & run it:
$ mkdir build
$ cd build
$ qmake ..
$ make
`samplebrain.app` should then be in the app folder for you to run.
# Mac build additions
To make a mac app bundle:
Run `macdeployqt` which copies all dependencies inside the app.
$ cd build
$ macdeployqt
If the icon is not visible, you might need to copy desktop/samplebrain.icns (the icon) to the Resources directory in the app bundle.
$ cp ../desktop/samplebrain.icns samplebrain.app/Contents/Resources
Then edit Info.plist to add samplebrain.icns to CFBundleIconFile. Key `CFBundleIconFile` should match:
<key>CFBundleIconFile</key>
<string>samplebrain.icns</string>
You might also need to resign the app bundle after making any changes
$ codesign --force --deep --sign - samplebrain.app

View File

@ -1,27 +0,0 @@
# Changlog
0.18.3
* **Windows**: [samplebrain_0.18.3_win.zip](https://static.thentrythis.org/samplebrain/samplebrain_0.18.3_win.zip)
* **Mac (intel/m1)**: [samplebrain_0.18.3_macintel.zip](https://static.thentrythis.org/samplebrain/samplebrain_0.18.3_macintel.app.zip)
Changes: Release fixes loading samples from paths longer than 255 characters
0.18.2
* **Windows**: [samplebrain_0.18.2_win.zip](https://static.thentrythis.org/samplebrain/samplebrain_0.18.2_win.zip)
Changes: Crash fix when closing load session file dialog
0.18.1
* **Windows**: [samplebrain_0.18.1_win.zip](https://static.thentrythis.org/samplebrain/samplebrain_0.18.1_win.zip)
* **Mac (intel/m1)**: [samplebrain_0.18.1_macintel.zip](https://static.thentrythis.org/samplebrain/samplebrain_0.18.1_macintel.app.zip)
Changes: Turned off microphone input to prevent security problems
0.18 (initial release)
* **Windows**: [samplebrain_0.18_win.zip](https://static.thentrythis.org/samplebrain/samplebrain_0.18_win.zip)
* **Mac (intel)**: [samplebrain_0.18_macintel.zip](https://static.thentrythis.org/samplebrain/samplebrain_0.18_macintel.zip)
* **Mac (m1)**: [samplebrain_0.18_m1_v2.dmg](https://static.thentrythis.org/samplebrain/samplebrain_0.18_m1_v2.dmg)