CVS log for linuxsampler/src/Attic/gig.cpp |
|
Help |
Request diff between arbitrary revisions
* completely restructured source tree * implemented multi channel support * implemented instrument manager, which controls sharing of instruments between multiple sampler engines / sampler channels * created abstract classes 'AudioOutputDevice' and 'MidiInputDevice' for convenient implementation of further audio output driver and MIDI input driver for LinuxSampler * implemented following LSCP commands: 'SET CHANNEL MIDI INPUT TYPE', 'LOAD ENGINE', 'GET CHANNELS', 'ADD CHANNEL', 'REMOVE CHANNEL', 'SET CHANNEL AUDIO OUTPUT TYPE' * temporarily removed all command line options * LSCP server is now launched by default
* src/eg_vca.cpp: added following transitions to the envelope generator: 'Attack_Hold' -> 'Release', 'Decay_1' -> 'Release' in case of a release event * EG1 parameters 'Attack Time', 'Release Time' and 'Sustain Time' are now controllable by a MIDI controller defined in the .gig file * src/voice.cpp: fixed bug in pitch calculation which caused new triggered voices to be played back without honoring the current pitch bend value
* src/gig.cpp: fixed looping informations ('LoopStart', 'LoopEnd' and
'LoopSize')
* src/voice.cpp: pitch sample according to keyboard position only if
keyrange > 1 key, this was the reason that some gig files were horrible
detuned
* src/audioio.cpp: bigendian specific fix
* src/ringbuffer.h: removed kernel header dependency by adding own atomic.h
* implemented looping; RAM only loops (that is loops that end within the cached part of the sample) are handled in src/voice.cpp whereas disk stream looping is handled in src/stream.cpp and is mostly covered there by the new ReadAndLoop() method in class 'Sample' from src/gig.cpp
gig.cpp, gig.h: added method GetInstrument(uint index) to class 'File' which is needed for the new command line switch --instrument in linuxsampler.cpp (forgot this to commit with the recent commit batch)
* implemented velocity->volume mapping: samples are now played back with a volume appropriate to the velocity of the triggered key, the velocity curve transformation functions (in src/gig.h) used for this are so far only an approximation to the ones from Gigasampler
* src/gig.cpp: fixed bug in decompression algorithm which caused it not to detect the end of a stream and let the disk streams reload forever also resulting in strange sounds at the end of disk voices (concerned only playback of compressed gig files) * src/audiothread.cpp: deallocation of voices when they reached the end of playback (thus e.g. when sustain pedal is pressed and a disk stream reached it's end) * various endian corrections needed for non intel systems * introduced debug level, you can set the debug level and thus the verbosity of LinuxSampler in src/global.h
* transition from plain Makefile to autotools, source files moved to src/ * configure.in: added test for x86 architecture * src/voice.h: x86 specific asm optimization for double to int casts only if compiling for x86 architecture
| LinuxSampler Developers |
Powered by ViewCVS |