Merge pull request #12 from winterheart/cmake-fixes
Add support to multilib linux enviroment and link to -lm
Revert default resampling quality to cubic, as it's a nice trade-off between speed and quality
Fixed compilation with -fPIC on x86 and x64
Fixed non-SIMD blep and blam handlers
Sanity fix for ARM NEON code: vmlaq always adds onto the first input parameter
Typo fix that I only caught by trying to build for ARM
Fixed a bug with resampler not clearing blep/blam state variables
Added a way to configure the load-time panning separation of hard panned channels, now defaulting to 25%
Overhauled resampler quite a bit, and implmented a new band-limited linear interpolation mode
Fixed STM trying to seek and read non-existing samples
Updated project file to MSVC 2015
Updated bit array source and enabled decoration on both bit array and resampler functions
Fix for MSVC 2013, which now provides its own log2
Updated project for MSVC 2013
Fixed dead note dropping when volume ramping is active
Merge pull request #10 from realistschuckle/master
Move the block for adding the Mac OS X specific properties to after the registration of the library.
Increased precision of resampler phase variable, greatly reducing the incidence of sample rate rounding errors
Merge pull request #9 from Vagabond/adt-valgrind-uninitialized-memory
Fix 2 places valgrind warns about unintialized memory being used
Merge pull request #8 from katajakasa/ttv-cmake-header-path
Change dumb.h install subdirectory in cmake script
Adjusted tempo timing a bit, now rounding samples per tick down instead of up
Updated license from the original project with clause 8
Merge pull request #6 from Vagabond/adt-unix-debug
Don't include the MSVC debug header if we aren't using MSVC
Attempt to fix issue #5 with compiling cpuid inline assembly on any platform using PIC
Updated sinc resampler with unscaled windowing, which fixes a lot of the previous aliasing
Merge pull request #4 from katajakasa/ttv-cmake-improvements
Resampler now adds input delay and subtracts output delay according to whichever quality is selected, rather than being fixed for sinc only. This fixes blep synthesis mode defeating note on and off volume ramping.
Add readme file for cmake building.
CMake improvements and cleanups
Changed volume ramping so normal transitions to or from zero volume are quicker
Removed blip_buf.c from remaining projects
Implemented blep synthesis into resampler.c, and removed blip_buf.c and code which referenced the old resamplers
Oops, I somehow seriously broke volume ramping prior to the previous release
Made disabling volume ramping actually work correctly
Forgot to re-add missing function
Made volume ramping configurable once again, now configurable between note on/off declicking only or full ramping
Oops, accidentally made DUMB twice as loud as it should be
Fixed resampler for large increments; fixes spx-troughtheinfinite.it
Reworked volume ramping a bit
Changed sinc window to Nuttal 3 term, and added pre-fill of silence to account for half the window size minus one
Removed a stale file from project
Forgot to remove last vestiges of now unused linear and cubic code
Replaced built-in linear and cubic resamplers with new routines
Renamed lanczos_resampler to sinc_resampler, changed to Blackman window
Remove comments which are no longer correct
Optimized SSE with optional SSE convolving loop, and doubled the kernel size
Overhauled volume ramping and note start/end declicking, now volume ramping is mandatory
Work around two possible issues in XM reader; Fixes dark_lighthouse.xm.
Fixed offset effect limiting edge case due to samples being 64 points longer due to LPC processing
Revert last change as file was actually broken
Merge branch 'master' of github.com:kode54/dumb
Added a workaround for pattern 255 in the order list
Merge pull request #3 from Vagabond/adt-cmake-install-name
Set the dylib install name on OSX
Fixed panning and sample loops
Fixed assertion checks in case of envelope loops on the last node
Added extra safety checking to aliased resampling mode
Merge branch 'ttv-cmake-v2' of https://github.com/omf2097/dumb
Remove unnecessary USE_SSE option from cmake file.
Add initial CMake script and directory
Added more architecture type guards to _USE_SSE blocks
Made the inline assembly cpuid function specific to GCC/Clang like it should have been in the first place.
Pan and pitch envelopes carry regardless of NNA being note cut
It is now possible to use both Gxx/Lxx and hx in the volume column in the same row
Fixed IT mixing Dxx regular volume slide with cx/dx volume column slide effect
Simplified pan law calculation a bit
Fixed Asylum Music Format panning effect
Fixed a C11 warning by adding a macro lock around blip_t declaration
Copied LONG_LONG definition inside of tarray header so it doesn't need to include the main dumb header
Made resampler and SSE filter setup functions public, in case anyone wants to call them early to prevent possible but harmless race conditions
Implemented automatic detection of SSE support
Renamed init_cubic function in preparation to make it public
Fixed compilation errors/warnings
Envelopes do not carry when New Note Action is Cut
Reworked declicker final volume propagation a bit
Fixed declicker handling cases where a declicking operation lasts longer than the current block
Removed start of note ramp when raising volume from zero on a running note, as normal volume ramping will already kick in
Fixed IT envelope loop pickup when the loop start is not on the first tick
Moved internal headers out of public dumb.h
Added documentation from the original project
Fixed 8xx effect for MODs, which have a range of 00...FF, not 00...7F or 80 or whatever
Fixed IT note cut and note off commands
Invalid notes correctly cause note fade, and range of valid notes increased to include 120/B-9
Normalized the indentation in the Lanczos resampler, and optimized the resampler a bit
IT NFx/NxF should not affect background voices
Merge branch 'master' of bitbucket.org:kode54/dumb
Channel volume effect should only apply to foreground voices
Fixed row played tracking and row timekeeping information for orders with skip commands