* rewrite PCM interface
use public methods, hide internal implementation
use ifft for smoothing
* AutoLeveler
* remove slow std::transform()
* faster smooth algorithm
* perf - quick check for no equations
* adjustments for wavecode.bspectrum=1
* cleanup use of BeatDetect.beatSensitivity
* comments
* more comments
* enum CHANNEL
* fix windows build
* fix windows build
* wip
* macOS installer signing works finally
* version bump
Co-authored-by: Matthew Bellew <matthewb@labkey.com>
* Mac installer now contains both the app and Music plugin
* Major xcode projects cleanup
* Working universal binary build with xcode and installer (needs universal sdl2 to link against)
* Fix#460 - texture2D is renamed texture (#462)
* test all wavemodes
* fix wavemode=7 DoubleLine
* don't install test presets
* and don't create test directory
Co-authored-by: Matthew Bellew <matthewb@labkey.com>
Scanning textures/presets dirs for textures and scanning preset dir for presets.
Scanning is now done recursively, so presets and textures can be organized into subdirectories instead of needing to be flattened into a single directory.
On POSIX systems makes use of [ftw](https://linux.die.net/man/3/ftw) which should be relatively efficient. Otherwise falls back to recursing with `dirent` (for windows).
Probably should have made an autoconf check for `ftw` instead of doing `#ifdef WIN32`.
* Scan subdirectories in presets directory
* remove preset subdir config
* Recursively scan for textures too, add c++-17 compatibility
* Refactor directory scanning code so it's reused by texture loader and preset loader. Make cross-platform (maybe)
* filescanner in makefile
* extension filter for file loader
* make extensions match up'
* need string.h
* Add FileScanner.cpp to win build (maybe)
* scan all dirs
* #ifndef #ifdef is def fun
* bogus comment
* bleh
* bleh
* itunes plugin with c++17
* EyeTunes needs to know about the FileScanner
Co-authored-by: milkdropper.com <milkdropper.com@gmail.com>
Co-authored-by: milkdropper <59471060+milkdropper@users.noreply.github.com>
Before was a `install -D ...` used but `-D` not supported on OSX.
With this change becomes it removed and on a separate call before all
required directories created.
This is intended to install the folders as deposited at the source. If the backend is used then the desired folder will be selected.
This allows a better overlay of the available presets and avoids overwriting the same filenames in different folders during installation.
New configure value "--enable-preset-subdirs"
so that projectM builds in a reproducible way
in spite of indeterministic filesystem readdir order.
See https://reproducible-builds.org/ for why this is good.
Without this patch, multiple .milk files varied between builds
in interesting ways:
--- "old//usr/share/projectM/presets/Geiss - All-Spark Polar.milk"
+++ "new//usr/share/projectM/presets/Geiss - All-Spark Polar.milk"
@@ -3,7 +3,7 @@
PSVERSION_WARP=2^M
PSVERSION_COMP=2^M
[preset00]^M
-fRating=4.000000^M
+fRating=2.0^M
Major updates to Makefiles, please report any build time issues!
Adding/updating makefiles for Qt, Jack, and Pulseadio implementations
* detect if we have libpulseaudio, libsdl2, and qt5 and if so just enable them automatically without the user having to.
* jack support, travis build with pa/jack/qt
* pass config opts
* test
* test
* test
* don't always enable sdl
* better libsdl2 detection
* hopefully fixed qt/pulse/jack makefiles
* oops
* travis
* fix jack subdir
* jack fixup
* jack makefile
* libsdl 1 for jack
* jack builds yay (qt version)
* testqt
* readme
* let's always build test
* let's always build test
* sdl2 for travis build test
* qt is required for jack/pulse
* install wip
* fix data dir
* test install in travis
* install presets
* fix local install path
* adding header files to SOURCES for dist
* ignore dist pkg
* dist headers, test dist build
* travis test stuff
* include test
* build status
* formatting
* tar fix for long file names from @abramhindle
* remove c3d/build
* autotools start
* ignore
* autoreconf? idk
* linux/osx gcc/clang
* no glut, need glew tho
* fix test matrix
* fix linux conditional includes?
* sdl makefile am
* SDL2 m4/autoconf
* idk more m4 crap
* ignore more junk
* ug
* go away idk
* renderer makefile
* fixing SDL's broken-ass sdl2.m4 lol
* progress
* cmake go away
* full autotools build working yay
* autogen script, readme update
* fix linux ifdefs
* stuff
* fix linux -ldl
* mac sdl dep for travis
* whoops
* brewwww
* no osx gcc
* no test
* kinda working linux library build
* travis apt packages
* ignore old SDL2 for travis
* typo
* autogen for osx build readme