UnknownSuperficialNight
68e1bd21c0
Pass min_attack_coeff directly
2024-09-30 20:09:05 +13:00
UnknownSuperficialNight
a8a443ba51
Enhance AGC stability and flexibility
...
- Increase RMS_WINDOW_SIZE for more stable measurements of very low frequencies
- Replace MIN_ATTACK_COEFF with release_coeff for improved customizability
These changes provide better handling of low-frequency content and allow
developers more control over AGC behavior, particularly in attack/release
time adjustments.
2024-09-30 19:46:46 +13:00
UnknownSuperficialNight
9bf97acfa6
Update benchmark to new default values
2024-09-30 12:44:55 +13:00
UnknownSuperficialNight
beeacf6e4a
Added agc to CHANGELOG.md
2024-09-29 19:07:30 +13:00
UnknownSuperficialNight
1d2a6fdc94
Removed bullet point from docs
2024-09-29 15:52:33 +13:00
UnknownSuperficialNight
f4bb729235
Added benchmark for agc and inlines
2024-09-29 15:03:58 +13:00
UnknownSuperficialNight
d4a09f3f0b
Merge branch 'master' into feature/automatic-gain-control
2024-09-29 13:40:12 +13:00
UnknownSuperficialNight
28b3c4b80c
Removed MAX_PEAK_LEVEL now uses target_level as intended and styled documentation
2024-09-29 13:36:55 +13:00
github-actions[bot]
2e5fc2e312
fmt
2024-09-29 02:00:59 +02:00
github-actions[bot]
97befac520
Adds benchmarks for effects and type conversions
...
Benchmarks use the music.wav file, we use *divan* as benchmark harnass.
The time needed to load the wav file is excluded from the benchmark
by preparing the data into a special test Source. That source also
enables converting between formats.
In the future *divan* will add support for structured (json) output.
Then we could integrate with the bencher service to generate benchmark
reports for all PR's and keep a timeseries of performance.
2024-09-29 01:58:31 +02:00
github-actions[bot]
a4e12d09b3
add section on features, decribe tracing feature
2024-09-28 13:59:15 +02:00
UnknownSuperficialNight
ce3d7e0bd2
Optimize AGC with CircularBuffer and enhance functionality
...
- Replace Vec-based RMS calculation with efficient CircularBuffer
- Add separate release_time for asymmetric gain control
- Implement MAX_PEAK_LEVEL constant to prevent clipping
- Revise gain calculation logic:
• Separate RMS and peak gain calculations
• Use RMS for general adjustments, peak for limiting
• Implement smoother transitions between gain levels
• Improve handling of edge cases (e.g., zero RMS)
- Improve code organization and documentation
2024-09-28 23:47:34 +12:00
UnknownSuperficialNight
d9f7967fd2
Better document comments for docs.rs
2024-09-28 17:19:13 +12:00
UnknownSuperficialNight
1b27bcd335
Add debug logging for AGC current gain value
2024-09-28 13:52:42 +12:00
UnknownSuperficialNight
9497f5c9c2
Merge branch 'master' into feature/automatic-gain-control
2024-09-28 13:23:52 +12:00
github-actions[bot]
95a466e03a
use tracing (if enabled) for stream error + sink fmt
2024-09-28 02:44:58 +02:00
github-actions[bot]
1a7b8e5e8f
adds optional tracing
2024-09-28 02:41:44 +02:00
UnknownSuperficialNight
97636d163e
Add author credit to AGC implementation
2024-09-28 11:15:46 +12:00
UnknownSuperficialNight
611055c62d
Enhance AGC with asymmetric attack/release and safety limits
...
- Implement asymmetric attack/release
- Introduce MIN_ATTACK_TIME limit to prevent AGC instability
- Clamp attack_time to prevent instability
- Faster decrease, slower increase for smoother sound
- Safeguard against extreme gain fluctuations
2024-09-27 15:27:35 +12:00
UnknownSuperficialNight
6b62544cde
Added simple flag to enable the debug temporarily during development
2024-09-27 13:04:48 +12:00
UnknownSuperficialNight
625d0f27b5
Updated comments, refactored logic & added more member functions for simplicity
2024-09-27 10:35:44 +12:00
UnknownSuperficialNight
85bfcbd40c
Init commit for automatic_gain_control
2024-09-27 06:41:08 +12:00
github-actions[bot]
58b61f66ff
Doc/Api note that a returning None means the end of the sound
2024-09-24 23:35:06 +02:00
github-actions[bot]
e116660568
docs: add missing + fix docs in wrong place
2024-09-17 00:06:23 +02:00
github-actions[bot]
22d90e71d8
Docs: Added where missing corrected where wrong
...
Specifically the documentation for
- UniformSourceIterator was incomplete it did not mention that it can
change the sample type
2024-09-16 18:52:19 +02:00
github-actions[bot]
70c236c7ac
docs: fixes spatial source & sink description (was wrong & missing)
2024-09-16 12:23:17 +02:00
David Kleingeld
6bfd840de6
Merge pull request #608 from lautarodragan/master
...
Optimistic update to controls.position in try_seek
2024-09-05 17:58:19 +02:00
taro
7fc5bd05d1
Optimistic update to controls.position in try_seek:
...
- Add entry in CHANGELOG.md
- `cargo fmt`
2024-09-05 11:46:25 -03:00
taro
2c95f1a00e
Optimistic update to controls.position in try_seek
2024-09-05 02:53:47 -03:00
github-actions[bot]
4805661cd1
formatting
2024-08-09 12:04:06 +02:00
github-actions[bot]
7c39451138
refactor, move test dep use into test mod
2024-08-09 11:53:49 +02:00
David Kleingeld
3c18b53a47
Merge pull request #499 from iluvcapra/ramp-linear
...
Added linear gain filter
2024-08-09 11:50:24 +02:00
Jamie Hardt
c541f35211
Redid changelog
2024-08-05 10:09:19 -07:00
Jamie Hardt
97cf232798
Revert "Updated changelog"
...
This reverts commit 972147ae57
.
2024-08-05 10:08:02 -07:00
Jamie Hardt
972147ae57
Updated changelog
2024-08-05 09:55:44 -07:00
Jamie Hardt
cd52071273
Revert changes to this for now
2024-08-05 09:51:08 -07:00
Jamie Hardt
9351746e0b
Fixed comments
2024-08-04 18:10:45 -07:00
Jamie Hardt
52e7d4aaa8
Added a fadeout source
2024-08-04 17:07:50 -07:00
Jamie Hardt
f2f93e6947
Switched-out assert_float_eq for approx
...
Different macro library for testing float equality
2024-08-04 16:40:39 -07:00
Jamie Hardt
6ba19a649d
Rustfmt
2024-08-04 16:30:20 -07:00
Jamie Hardt
8f53addbde
Implemented a little fade envelope on the notes.
2024-08-04 16:28:37 -07:00
Jamie Hardt
0e3aaa9cea
Moved assert_float_eq to dev-dependencies
2024-08-04 16:15:38 -07:00
Jamie Hardt
98c008d7ea
Fixed try_seek() to seek from absolute start
...
and not the current position.
2024-08-04 14:43:39 -07:00
Jamie Hardt
5e73ffd4aa
Removed a typo (I think rustfmt did this!)
2024-08-04 13:57:49 -07:00
Jamie Hardt
5056a88b9f
Twiddles
2024-08-04 13:55:53 -07:00
Jamie Hardt
e581653578
Rustfmt
2024-08-04 13:46:54 -07:00
Jamie Hardt
e72de34a93
Implemented linear_ramp_seek tests
...
Also integratd assert_float_eq
2024-08-04 13:45:35 -07:00
Jamie Hardt
78fffb4ec6
Implementing seek test
2024-08-04 13:33:44 -07:00
Jamie Hardt
5f9c521a8b
Revert "Code review stuff..."
...
This reverts commit d5c9e0d62c
.
2024-08-04 13:33:09 -07:00
Jamie Hardt
9f9a1724d4
Added assert_float_eq package.
2024-08-04 13:31:47 -07:00