Releases: httpsworldview/openmeters
Releases · httpsworldview/openmeters
Release list
openmeters 1.15.1
What Changed?
- Fixes for the loudness meter were the main focus this time around.
- Rear weighting is now distinguished from side weighting, tests were expanded and refined.
- True-Peak accuracy has been greatly improved, see the body of 797be8a for more details and a brief comparison against other implementations.
Changelog
18e59c6 chore: update lockfile
4dcf937 chore: bump version, update deps
797be8a fix(loudness): improve true-peak accuracy and reduce error
b24823d fix(loudness): distinguish side and rear surround weights - weights of 1.41 to sides and 1.0 to 7.1 rears. resolve legacy quad surrounds to side channels while preserving negotiated mappings
96ca37c feat(spectrogram): improved piano roll
c4527f9 chore: Add GitHub funding link to FUNDING.yml
bc544e7 perf: waveform and loudness consolidation and speedup
openmeters 1.15.0
Changelog
2729e6e chore: update deps, bump version
d60f945 fix(spectrum): labels and knockouts should render behind the spectrum.
62466c4 perf(spectrogram): improve memory efficiency, WIP
42b18d4 perf: reduce DSP overhead and cache spectrogram accumulation - use compact loudness history with shared block sums, f64 fallback. I am aware that this will introduce some rounding error, approx 0.000006%/0.00000026 dB before considering summation error. *technically* a downgrade, but visually negligible. still passes all tests. - consolidate waveform band tracking and reuse spectrum fft storage - cache reassigned spectrogram accumulation - standardize visual defaults - expand loudness window tests
d424393 feat: overhaul all visual defaults and initial window state
a2a31d0 refactor: make macros easier to read and maintain
4099889 refactor: make visual settings typed internally/end-to-end
7b4b53e refactor: more dead code removal
4f2481d refactor: remove tautological assertions and redundant logic
d9af73a refactor(spectrum): reuse cutout pass to mask lines
ce31954 refactor(dsp): unify mono and stereo crossover filters
9821d1a chore: update funding model with Ko-fi username
72ce919 refactor: centralize update logic within SettingsHandle::set
05f5755 perf(spectrum): reuse inverse display range
24b203f perf(spectrogram): copy wrapped audio by contiguous slices
d9c131e perf(oscilloscope): reuse sliding correlation stats
97e6856 perf(audio): shorten wide mean accumulation cache
4b4d687 perf(dsp): specialize shared hot paths
f28d007 fix(tests): avoid relying on nan payload bits in stereo test (#25)
6922e19 chore: add licensing info to files that lacked it previously
38bc7ec refactor: minor consolidations, test to preserve current state
563a1b5 fix: improve cargo.toml
efc6f4e fix(ui): exactly three significant digits within tooltips
233beec chore: migrate from iced_layershell to iced_exwlshell
openmeters 1.14.0
What Changed?
This is another minor release consisting primarily of numerical improvements. Monitor selection and fallback behavior was improved, as noted in #24. Spectrum labels now displace grid lines where they overlap, which improves readability. Other internal improvements have taken place as well. Thank you for sticking around, and for 200 stars on GitHub!
Changelog
cb0caa3 chore: update deps, bump version
4e70222 fix(ui): stabilize bar monitor hotplug recovery
073158c feat: automatic monitor selection, default behavior changes
7521c15 feat(spectrum): improve grid label visibility with knockout boxes
16b0e1c refactor(spectrum): clarify rendering layout, cull magic numbers
4dd16f2 docs: removed dead link to nonexistent notes section
ea76406 fix: prevent unbounded allocation in dsp processors without impeding on the user's ability to hand write configs.
14da97a refactor: clean up.
40d507c fix: improve dsp precision and oscilloscope triggering
82f0ab6 feat: correctness and numerical-precision improvements
31bba56 refactor: minor config internal cleanup
fd35e74 refactor: make previous commit a bit nicer to read
34d183d refactor: remove iced_layershell patch as upstream now supports the old functionality provided by my fork
89604bf refactor: simplify internal invariants and processing paths
ac14379 refactor: housekeeping
openmeters 1.13.0
Changelog
13f64c8 chore: update deps
baee537 perf: track quiescence and processor state, eliminate idle CPU usage
1ed0da2 refactor: remove unused arbitrary indev handling
4718346 tests: refactor some old tests, remove redundant test that should not have existed
58e2b30 refactor: minor allocation fixes
0c6e679 perf: streamline dsp and rendering hot paths
c7e7bc8 refactor: simplifications and redundancy reductions
8f09203 docs: update readme with a FAQ section
openmeters 1.12.1
Changelog
ca454d8 chore: bump deps, version 1.12.1
8715154 fix(spectrum): large bar count could cause unbounded allocation and iteration
e2c7768 refactor: minor simplifications
58a013f refactor(spectrogram): compact CPU and GPU history handling
ced77b7 refactor(visuals): consolidate state and SDF rendering
1ed0af1 refactor(visuals): reuse CPU analysis buffers
1f11e12 refactor(ui): simplify window and visual pane state
b904a99 refactor(settings): flatten visual settings and theme persistence
ecc3dc0 refactor(pipewire): flatten graph, stream, and transport state
f9ffc31 refactor(routing): share serialized capture identities
cd24b69 refactor(util): consolidate audio and color helpers
a8dd489 perf: CPU time, PSS
bfe7c2b perf: spectrum optimizations
a856d2d docs: update readme
4aaa4c0 perf(spectrogram): build classic columns directly
b77a54b perf: micro optimization in pcm handling
965913e fix(spectrogram): avoid unnecessary allocation
d4a3517 perf(spectrogram): various improvements, 14-25% speedup
84e779e tests: remove redundant heartbeat wrapper
openmeters 1.12.0
What Changed?
- The entire backend was rewritten. Now when OpenMeters is closed, the stream of audio should never be interrupted or lost.
- Rendering cadence has been mostly decoupled from the flow of audio, and the batch size of incoming audio has been reduced. Everything should appear smoother and snappier, especially on high refresh rate displays.
- Many performance improvements.
- Added a frame rate picker within the global configuration page.
Changelog
28c64ed chore: version 1.12.0
0cc10dc chore: update deps
8adb030 fix(waveform): rendering could outpace audio snapshots
3706961 perf: decimation and other optimizations
b21ebce refactor: cleanup
def0660 perf: fat lto for release builds
9db8488 fix(waveform): advance scrolling from presentation clock
e322763 perf: various optimizations
70d7abf chore: update deps and lockfile
fd2ba07 docs: reword some things to be less confusing and verbose
1e1e9c7 feat(ui): minor restructuring of configuration page
b719ee6 fix: prevent precision poisoning in running means and avoid equal size buffer reuse if they are incompatible
4eba8aa fix: spectrum caching and proper updating when paused
0e98b78 feat: global frame rate target & selector
d3c28f1 perf: some performance improvements 4
eb6b7d0 perf: some performance improvements 3
ac94764 perf: some performance improvements
875d661 perf: some performance improvements
7a40730 fix: startup behavior
940ac44 refactor: redesign backend
openmeters 1.11.0-2
What Changed?
- Fixes a deprecated Wayland dependency on fedora. (#21)
- Redesign correlation meter.
- Various fixes and performance improvements.
Changelog
e23ef24 fix(packaging): correct Fedora Wayland dependency
3780e06 refactor: macrobating 2
c055e52 refactor: macrobating
47daa04 feat(stereometer): correlation meter visual overhaul
5695111 refactor: remove some unnecessary .collect() instances
7db2bc6 docs: formatting within contributing guidelines
acffbd7 perf(visuals): general performance improvements 2
a1d5b00 fix: `float-literal-f32-fallback` fcw, `useless_borrows_in_formatting` clippy warning
062e176 perf(visuals): general performance improvements
2a26685 refactor: no need to clone the runtime
34792e3 refactor: simplify palette normalization
9423c8e fix(ci): 1.95 clippy warning
f71dc39 refactor: centralize window means and filters
fb71862 fix(visuals): various correctness fixes and subtle mathematical issues
0a1fec9 refactor(ui): consolidate widgets and simplify
ecb2696 feat(ui): toast now overlays visuals
970684c refactor: macros and audio refactors
580af08 fix(audio): potential UB
2922b81 fix(visuals): retain newest audio across FFT rebuilds
openmeters 1.11.0
What Changed?
- Removed both the drag handle in the bottom right and the full-frame mouse area. Most (if not all) compositors/DEs/WMs expose controls to manipulate windows without decorations, so I've decided to favor those and avoid the complications associated with those bespoke controls.
- Add a "stacked" display mode to the oscilloscope (#17)
- Improve reassigned spectrogram power accumulation. Preserves detail at low DPIs.
Changelog
1ba392c chore: version 1.11.0
54d915f docs: reword some things in the readme
44444db refactor(spectrogram): isolate history ring state
86c13b0 feat(spectrogram): improve reassigned spectrogram power accumulation
3893f09 refactor: simplify pipewire direction and UI helpers
7bb2319 feat(oscilloscope): stacked display mode (#17)
8787abe fix(ui): button text should use button background color to determine light/dark status
b4b88dd feat(ui): remove drag handle when window decorations are disabled
faec9a6 feat(ui): remove mouse area as it could conflict with pane reordering
openmeters 1.10.0
What Changed?
- Breaking: Pre-1.0
rgbajson themes will no longer deserialize and will fall back to defaults. Please migrate to the current hex schema! - Fixed some color inaccuracies.
- Fixed a bug in the line decimation code that would result in the application hanging permanently when resizing the spectrum.
- Redesigned the configuration page and turned it into a regular XDG top level window. At small bar heights or window sizes this is preferable to the prior drawer. If you think otherwise, please open an issue.
Changelog
9b3e7ee chore: version 1.10.0
242a98f feat(ui): replace global configuration drawer with a regular xdg toplevel
28007ae refactor: reduce manual unfold(recv) to native stream impl
b5834b1 refactor: centralize parent directory creation
ddb38ea refactor: hoist channel match outside frame loop. remove per-frame helper
4788917 chore: update lockfile
fa28e60 refactor: minor pane simplification
d219e5e refactor: theme export using ui snapshots to find palettes
04f1ef8 docs: templates for issues and PRs.
858612a fix(color): various alpha rendering fixes not related to background transparency.
7231da5 fix(spectrum): decimation code could cause a hang. again.
61521ec refactor: simplify visual metadata in registry
12057de refactor: move impl to where it actuall belongs
4cd046d docs: update README with fft convention note
d4cf199 docs: update README
ca6e27c refactor: consolidate helpers, remove duplicate logic
4ce4c23 refactor: move sink name to better location, centralize things
openmeters 1.9.1
Changelog
5fda79e chore: hotfix 1.9.1
b23d355 fix(waveform): f32 residual error in running sums causing RMS lines to sit above the floor indefinitely