Commit Graph
1171 Commits
Author SHA1 Message Date
Vesa 40407f6ce6 LB302: Fix playback bugs (sticking pitch), add bandlimited waves 2014-06-07 14:39:45 +03:00
Tres Finocchiaro 922ab25217 Fast forward vesa's sample-accurate changes 2014-06-04 09:03:19 -04:00
Tres Finocchiaro e06759d0d8 Formatting fixes 2014-06-04 08:58:06 -04:00
tresf f42196315c SF2/VST title rename #462 w/ #774 recommendations 2014-06-04 08:52:12 -04:00
Vesa 06be5bba82 Make MIDI timing sample-accurate
- currently only affects Vestige
- no idea whether this can also be used for Zyn and OpulenZ, I'm not sure if Zyn has any kind of mechanism for communicating frame offset to the synth, as for OpulenZ, @softrabbit would know the answer better
- basically, I made it happen by simply adding an extra parameter in the processMidi{In|Out} functions, which is 0 by default, and made the necessary changes in instrumentTrack and nph to utilize it
- I based this against 1.1 because I didn't think it's a very big change, and I don't see much possibility for things going wrong here, since we're basically just using the existing functionality in Vestige (there already was a frame offset being communicated to the remote plugin, just that it was always set to 0). However, if @tobydox thinks this is better to bump up to 1.2, I can rebase it for master...
2014-06-04 04:23:16 +03:00
Vesa 8bb5733ee5 Nes: Fix previous - forgot to add new models to load/save funcs 2014-05-29 22:57:14 +03:00
Vesa 50c5b0db03 Nes: added pitch sweep for noise channel, freq.quantize mode (constrain frequencies to preset values when using note frequency)
Also added a handful of neat presets that mimick Nes sound effects
2014-05-29 22:48:13 +03:00
Vesa 19d105dc86 Nes: implement vibrato, also: make main pitch update at 60hz frequency regardless of period size or samplerate (guarantees consistency in sound for combined pitch sweep + pitch automation) 2014-05-29 19:32:22 +03:00
Vesa 6e516a358c NES: fix dc offset and distortion 2014-05-26 18:02:55 +03:00
Vesa 750be17b56 Nes: fix sweep 2014-05-26 05:46:53 +03:00
Vesa 8b51e29467 New NES instrument 2014-05-26 03:25:15 +03:00
Vesa 592b4aeb1a New NES instrument 2014-05-26 03:24:36 +03:00
Tobias Doerffel 00e7fe236c ZynAddSubFX: imported current head
Imported current head of LMMS-specific ZynAddSubFX source code.

HEAD: c38c705ea40914f6bd63f799ab8dad91411a93c0
2014-05-22 11:33:39 +02:00
Vesa 97ff5e99e0 Removal of the "sample-exact controllers" and "anti-aliasing oscillators" qualitysettings. 2014-05-18 21:36:49 +03:00
Tobias Doerffel 6b6bfa2666 Merge pull request #734 from diizy/bandlimit
Move the initialization of BandLimitedWaves into engine.cpp
2014-05-18 15:11:51 +02:00
Vesa bf54852062 Move the initialization of BandLimitedWaves into engine.cpp
Since we now provide the wavetables as pre-generated files, there's no delay caused by their initialization
so we can move it to the startup of the software. I thought engine.cpp is the best place for this, it makes
conceptually more sense than main.cpp IMO.
This way each instrument that wants to use them in the future won't have to call the initialization function
separately, making things a bit easier.
2014-05-17 23:32:34 +03:00
Vesa bbcb8635e2 Kicker: a bit of an additional GUI tweak 2014-05-16 20:33:53 +03:00
Vesa 2ff70e6aba Kicker: new UI / graphics, also some additions:
- Envelope length is now temposyncable and has higher maximum
- Distortion is divided to start/end knobs for a simple distortion envelope
- Everything backwards compatible
2014-05-16 15:48:36 +03:00
Umcaruje 05517aefc4 Tweaked the color of the organic logo 2014-05-13 22:02:43 +02:00
Tobias Doerffel 28cf4a5f8d Merge remote-tracking branch 'origin/stable-1.0'
Conflicts:
	CMakeLists.txt
	data/CMakeLists.txt
	include/SampleBuffer.h
	plugins/CMakeLists.txt
	plugins/zynaddsubfx/zynaddsubfx/src/Params/PADnoteParameters.cpp
	src/core/SampleBuffer.cpp
2014-05-12 21:57:10 +02:00
Tobias Doerffel 0e2451bd6e Watsyn: link against libsamplerate
Fixes Win32/Win64 build.
2014-05-12 21:44:26 +02:00
Tobias Doerffel 2edb5ed2c6 ZynAddSubFX: added update script
Added script to pull in latest ZynAddSubFX sources from LMMS-ZynAddSubFX
repository.
2014-05-12 19:58:25 +02:00
Tobias Doerffel e4beaf0074 ZynAddSubFX: imported current head
Imported current head of LMMS-specific ZynAddSubFX source code.

HEAD: c920930cce09b4f691f585d93a19eac85672e50e
2014-05-12 19:17:51 +02:00
Tobias Doerffel 66c2d620ef ZynAddSubFX: removed submodule 2014-05-12 19:15:30 +02:00
Tobias Doerffel 90496600f2 SWH: fixed Win32 compilation
The recent adaptions for OS X broke build for Win32.
2014-05-08 21:59:30 +02:00
Tobias Doerffel 25204abdab Merge remote-tracking branch 'tresf/stable-1.0' into stable-1.0
Conflicts:
	plugins/opl2/fmopl.c
2014-05-08 21:53:03 +02:00
Tres Finocchiaro 049a88fe8e Fix SWH contructors (Apple)
@tobydox, please advise as I cannot easily test the win32 impact of this
change.
2014-05-08 15:36:51 -04:00
Tres Finocchiaro 7fb434c26d #ifdef indent corrections 2014-05-08 11:05:54 -07:00
Tres Finocchiaro 72620542c0 OpulenZ/opl2 build fixes (Apple)
- Cleaned up many non-bracketed sections for stricter compilers.
- Remove custom `INLINE` keyword when building on clang.
- Renable opl2 via plugins\CMakeLists.txts

https://cloud.githubusercontent.com/assets/6345473/2919394/c474d668-d6da-11e3-82db-778a7ce6014d.png
2014-05-08 14:01:27 -04:00
Tobias Doerffel b9d51f0a40 Merge pull request #685 from tresf/stable-1.0
SWH Clang Fixes, Apple Installer Fixes
2014-05-06 09:39:22 +02:00
Tres Finocchiaro a80dbd67e4 Replace LMMS_BULD_APPLE with __clang__ 2014-05-03 11:46:02 -07:00
Tres Finocchiaro b987d3ed04 Replace LMMS_BULD_APPLE with __clang__ 2014-05-03 11:44:58 -07:00
Tres Finocchiaro b0ffa45011 Include lmmsconfig.h for OS #ifdef 2014-05-03 11:34:16 -07:00
Tres Finocchiaro ae67c792fe Remove inline function declaration for Apple
Typo :)
2014-05-03 09:30:15 -07:00
Tres Finocchiaro 19130e5fce Apple specific build path
Remove another offending inline function declaration for Apple compat.
2014-05-03 09:00:32 -07:00
Tres Finocchiaro 3d95f82f30 Remove inline function recursion for Apple
q_sort is an inline function which recurses upon itself.  Some compilers such as MSVC limit this which can be overridden with a parameter.  Since I could find no such parameter for clang, this #IFDEF allows the sifter plugin to compile successfully.

If this approach has negative side effects, it should only affect apple.  If there's a better approach to this, please reject the pull request and submit your own.
2014-05-02 14:01:59 -07:00
Vesa 8ea5222793 Monstro: remove useless cast 2014-05-02 22:55:16 +03:00
Vesa 7a4395aabb ... oops 2... 2014-05-02 21:40:07 +03:00
Vesa ca36fb141d oops.. 2014-05-02 21:37:49 +03:00
Vesa a218a033b5 Monstro: more bugfixes
Fixes a bug caused by fastPow which was causing hangups in very specific situations only
2014-05-02 21:33:55 +03:00
Tres Finocchiaro 96e41491ad Fix incorrect C99 loop declaration 2014-05-02 10:51:42 -07:00
Tres Finocchiaro e2c3e65767 Clang comp. fix unnecessary else 2014-05-01 22:13:14 -07:00
Vesa a2233edfa6 Monstro: envelope bugfixes 2014-05-02 03:57:09 +03:00
Tobias Doerffel 059ddc2875 CMake/FindWine: search for wineg++ executable
Instead of relying on wineg++ being in PATH search for it as it might
reside somewhere else.
2014-05-02 00:17:42 +02:00
Vesa 7da1c5e09f Another small monstro change 2014-05-02 00:57:31 +03:00
Tobias Doerffel 83c2019611 LadspaEffect/TAP: fix instantiation/destruction
Instead of relying on naming the init functions _init() and _fini()
declare them as constructors/destructors and use a different name so
there's no double destruction

Closes #668.
2014-05-01 23:33:40 +02:00
Vesa 787d4e9832 Monstro: very slight change to integrator code 2014-05-01 20:40:11 +03:00
Tobias Doerffel 9c27956414 ZynAddSubFX: allocate spectrum on heap instead of stack
When loading some presets the PADnoteParameters spectrum size is 524288
or even bigger resulting in a stack allocation of 2 MB or more.
This results in a stack overflow on Win32 and thus crashes LMMS. Fix this
by allocating the spectrum on the heap instead.

Closes #543.
2014-04-30 15:20:44 +02:00
Vesa 63747787e4 Organic: fix detuning
The detuning scale was incorrectly calculated: instead of measuring in cents as it claims to, it was actually
in 1/100th octaves, so I fixed it so that I set the units to actual cents (1/100 seminote). Then I set the
range to +/-1200 cents and added compat code so that old values get multiplied by 12, to maintain backwards compat.
2014-04-29 22:54:42 +03:00
Vesa dce6a26eb3 Organic: update artwork, add harmonic knobs to control harmonic of each oscillator 2014-04-29 20:13:05 +03:00