Releases: Lulu04/ALSound
Releases · Lulu04/ALSound
ALSound v3.0.3
What's Changed
- New property SampleCount to TALSSound in #59
- Fix: loop issue on streamed sounds in #60
in sound of particular length, the stream process don't allow loop. This is now fixed. - Warning this change breaks compatibility with previous release.
To be more explicit, type TVolumeCurve is renamed to TVolumeMode, ALS_VOLUME_CURVE_LINEAR to ALS_VOLUME_MODE_LINEAR and ALS_VOLUME_CURVE_SQUARED to ALS_VOLUME_MODE_SQUARED.
Also property ALSManager.VolumeCurve is renamed to ALSManager.VolumeMode. - Corrected some comments
- Fix: Added missing code to free the sound when calling TALSSound.PlayThenKill() in #63
Before the fix, PlayThenKill() play the sound but did not free it. - Added log warning for each sounds not freed by the app in #64
This is just for information, sounds are always freed automatically when the context is freed.
Full Changelog: v3.0.2...v3.0.3
ALSound v3.0.2
What's Changed
- Replaced OpenAL 64b binary by a new one compiled on Ubuntu 20.04 by @Lulu04 in #50
- Added the ability to update a playback context by the application instead of the internal thread by @Lulu04 in #51
- 'PlayFile' demo: fixed bug on dB mode and user can change audio position by clicking on progress bar by @Lulu04 in #52
- ALSManager have now a global volume mode property called VolumeMode. Its value can be:
- ALS_VOLUME_MODE_LINEAR: it's the normal mode.
- ALS_VOLUME_MODE_SQUARED: the volume values are squared before to be sent to OpenAL-Soft. This is usefull if you want the audio sliders in your application to better match human hearing. Warning: this feature affects the behavior of velocity curves.
- Some example demo are been updated with VolumeMode sets to ALS_VOLUME_MODE_SQUARED.
- Renamed type and variable to be more explicit by @Lulu04 in #54
- Modified comment to be more explicit by @Lulu04 in #55
- Reduced the capture to playback latency by @Lulu04 in #56
- Added new method TALSSound.FadeOutThenPause() by @Lulu04 in #57
ALSound v3.0.1
Merge pull request #49 from Lulu04/ALSound_dev Fixed a bug in function ALSOpenAudioFile() under Windows
v3.0.0
What's Changed
- Added the new feature for log messages callback from OpenAL-Soft
- Removed some compilation hints
- Improved error handling when libraries is not loaded
- Removed some potential bugs
- Added support for MacOS (x86-64)
- Better error handling when creating effect on TALSPlaybackContext
- Renamed some types and functions in respect of openalsoft
- updated example to run on MacOS platform
- removed the search of old libraries on MacOS
- Added an additional volume control in TALSSound
Full Changelog: v2.1.0...v3.0.0
ALSound v2.1.0
ALSound v2.0.0
Merge pull request #6 from Lulu04/ALSound_dev V2.0.0
ALSound v1.3.0
What's change:
- Modified the period update of TALSCaptureContext from 10ms to 2ms to avoid audio's artifacts with live playback.
- Channel's level: Moved Sqrt() function from dsp_ComputeLinearLevel_xxxx routines to TALSFrameBufferBase.
- Added callback OnCaptureBuffer to TALSCaptureContext.
- Update capture examples to use this callback.
- Increase the number of buffer from 8 to 32 for TALSPlaybackCapturedSound to avoid the playback to stall.
- Added a read only property EffectType to TALSEffect.
- Added some code to unchain an effect when it is deleted.
- Added OnCustomDSP property for TALSSound. This property allow to define a callback to apply a custom user DSP effects on an audio buffer before sending it to OpenAL-Soft.
- Rewrite TALSPlaybackCapturedSound.QueueBuffer(...): previously, OpenAL-Soft sometime return an error because an attempt to refill a queued buffer occurs. We changed the buffer's management strategy to avoid this problem.
- Removed unit LCLTranslator from ALSound unit.
- Removed some fixed string and added a method to rename a TALSPlaybackCapturedSound sound's instance.
- Rewrite TALSManager.DialogFileFilters: now you have to specify the string associated with Sound File filters and All File filter.
- Updated all examples that use TALSManager.DialogFileFilters function.
ALSound v1.2.1
What's new:
- Modified the period update of TALSCaptureContext from 10ms to 2ms to avoid audio's artifacts with live playback.
- Channel's level: Moved Sqrt() function from dsp_ComputeLinearLevel_xxxx routines to TALSFrameBufferBase.
- Added callback OnCaptureBuffer to TALSCaptureContext.
- Update capture examples to use this callback.
- Increase the number of buffer from 8 to 32 for TALSPlaybackCapturedSound to avoid the playback to stall.
- Added a read only property EffectType to TALSEffect.
- Added some code to unchain an effect when it is deleted.
- Added OnCustomDSP property for TALSSound. This property allow to define a callback to apply a custom user DSP effects on an audio buffer before sending it to OpenAL-Soft.
- Rewrite TALSPlaybackCapturedSound.QueueBuffer(...): previously, OpenAL-Soft sometime return an error because an attempt to refill a queued buffer occurs. We changed the buffer's management strategy to avoid this problem.
ALSound v1.2.0
What's change:
- Removed the unnecessary parameter to TALSCaptureFrameBuffer.RemoveDCBias.
- Modified ALS_DECIBEL_MAX_VALUE from 18 to 0 to reflects the range returned by ChannelLeveldB[] or ChannelPeakdB[].
- Renamed internal class name TALSStreamedFileSound to TALSStreamBufferSound.
- Added TALSStreamBufferSound.CreateFromFile(...).
- Added new TALSPlaybackCapturedSound class used internaly to playback captured audio in real time.
- Added method TALSPlaylist.Delete(Index: integer).
- Added the ability to TALSCaptureContext to playback captured audio in real time.
- Added property ChannelsPeakdB[Index:integer]: single to TALSCaptureContext.
- Added dsp amplifycation
- Added property PreAmp to TALSCaptureContext to apply an pre-amplification gain to the captured audio.
- Modified the way to checks if a capture error occurs.
- Bug fix: capture thread freeze when we activates/deactivates consecutively capture monitoring.
- Corrected some wrong values in Flanger's presets.
- Simplified the names of the effect's presets.
- Improvement of TALSEffect.InitEffect(...)-> Now the routine checks if the OpenAL effect object and OpenAL slot object have not been created yet before creates them.
- Added new example record_to_playback to show how to apply effects in real time on captured audio.
v1.1.1
What's Changed
- New property 'ALSManager.LibrariesSubFolder' allow to specify a sub-folder name in case of librarie's binaries images are located in a sub-folder of the executable.
- Because the libraries path is configurable, now application must call ALSManager.LoadLibraries at startup to load OpenAL-Soft and LibSndFile. All examples have been updated.