Commit Graph
95 Commits
Author SHA1 Message Date
Thomas Harte 2fdd3bda1d Improve constness. 2026-05-10 21:09:16 -04:00
Thomas Harte 186b911e8e Switch to get/as. 2026-03-06 15:44:22 -05:00
Thomas Harte 30b10f8593 Reduce usages of reinterpret_cast.
(And do some drive-by `const`ing)
2026-02-28 11:30:15 -05:00
Thomas Harte 9916ad3eed Separate being a filter from filter generation. 2026-01-12 22:40:43 -05:00
Thomas Harte 1c0b209e8c Further reduce reliance upon memcpy. 2025-12-15 17:19:00 -05:00
Thomas Harte 171b890f0d Eliminate memmove. 2025-12-06 10:44:54 -06:00
Thomas Harte 0d1fe03369 Further prefer static constexpr. 2025-09-12 21:40:08 -04:00
Thomas Harte d825c03372 Prefer references for delegate protocols. 2025-08-30 00:09:38 -04:00
Thomas Harte 2c2216afae Further eliminate file-relative includes. 2025-02-28 13:18:48 -05:00
Thomas Harte 9470775292 Avoid race condition on input/output frequencies. 2025-02-11 21:48:23 -05:00
Thomas Harte ce5aae3f7d Adjust more dangling indentation changes. 2024-12-04 22:29:08 -05:00
Thomas Harte 71d337c10e Avoid std::memory_order::. 2024-05-29 21:51:07 -04:00
Thomas Harte 140228a936 Mildly reduce heft of scale read. 2024-04-16 22:31:40 -04:00
Thomas Harte 30cca54e6c Diagnostically try for a square wave. 2024-04-13 22:10:34 -04:00
Thomas Harte 0b65aa39cd Add explicit assignment operator. 2024-03-04 14:09:53 -05:00
Thomas Harte bc5727af14 Switch to = default. 2024-02-16 21:50:15 -05:00
Thomas Harte 51de1892c0 With minor infrastructure fixes, switch Mockingboard to stereo. 2024-02-15 09:42:33 -05:00
Thomas Harte 6dcc13921f Make first sweep at converting AY to a SampleSource. 2024-02-13 10:51:33 -05:00
Thomas Harte 507c3da927 Sometimes avoid unnecessary zero-fills. 2024-02-12 14:33:55 -05:00
Thomas Harte 3d2d9ac45e Remove default set_sample_volume_range implementation too. 2024-02-12 14:00:08 -05:00
Thomas Harte 1895b4ee5d Remove empty implementation, the better for debugging. 2024-02-12 13:59:03 -05:00
Thomas Harte d49c07687c Unify [get_/skip_]samples, adding a third option for in-place mixing. 2024-02-12 10:55:52 -05:00
Thomas Harte 3a208460e2 Reintroduce mono to stereo conversion. 2024-02-10 21:53:12 -05:00
Thomas Harte 25085cb5af Require good ordering. 2024-02-09 14:34:59 -05:00
Thomas Harte 9909146c59 Fix typo. 2024-02-09 14:26:02 -05:00
Thomas Harte 609d81d75d Distinguish sources of samples and of whole buffers. 2024-02-09 14:25:40 -05:00
Thomas Harte c105acf1c7 Adopt a full type for stereo samples, gaining + and +=. 2024-02-09 10:48:42 -05:00
Thomas Harte f3d0827d14 Introduce [Mono/Stereo]Sample types. 2024-02-09 09:15:48 -05:00
Thomas Harte a4a983eb81 Promote stereo status to template parameter. 2024-02-08 15:21:47 -05:00
Thomas Harte 48be7c677e Avoid inheritance. 2024-02-08 12:07:12 -05:00
Thomas Harte 147d817977 Use fold expression for final-answer is_stereo. 2024-02-08 11:10:08 -05:00
Thomas Harte d481f335b8 Switch to another std::fill. 2024-02-08 10:47:05 -05:00
Thomas Harte f4d8c04f3c Without yet much exposition, draft sample-by-sample interface. 2024-02-01 21:56:33 -05:00
Thomas Harte c6c9be0b08 Adopt CRTP for SampleSource. 2024-02-01 21:47:44 -05:00
Thomas Harte ce0d53b277 Clean up SampleSource's getters. 2024-02-01 21:29:00 -05:00
Thomas Harte a3d37640aa Switch include guards to #pragma once. 2024-01-16 23:34:46 -05:00
Thomas Harte 2b56b7be0d Simplify namespace syntax. 2023-05-10 16:02:18 -05:00
Thomas Harte 8f2e94a1d8 Switch name back to emphasise _async_. 2022-07-16 14:41:04 -04:00
Thomas Harte 60f997a52c Fix stereo buffering, various audio asserts. 2022-07-14 21:59:40 -04:00
Thomas Harte bf03bda314 Generalise AsyncTaskQueue, DeferringAsyncTaskQueue and AsyncUpdater into a single template. 2022-07-14 16:39:26 -04:00
Thomas Harte 75f3f1a77f Avoid the whole thread hop for a zero-length run_for. 2022-07-13 15:05:34 -04:00
Thomas Harte 0270997acd Add insurance against calls before setup. 2022-07-12 16:03:09 -04:00
Thomas Harte 887ab705d1 Add missing <cassert>. 2021-12-02 13:00:25 -05:00
Thomas Harte ff6ddaed2e Full scale is 65536. 2021-12-02 12:55:11 -05:00
Thomas Harte 3a26f6b8bf Ensure full buffer provision. 2021-12-02 12:52:43 -05:00
Thomas Harte 6f6e09d200 Correct: load -> store. 2021-11-22 15:18:12 -05:00
Thomas Harte 24e2fd4184 Avoid implicit conversion. 2021-11-22 11:28:02 -05:00
Thomas Harte 1aada996dc Correct consting. 2021-11-22 11:18:17 -05:00
Thomas Harte f5d3d6bcea Splits the lowpass filter into push and pull variants. 2021-11-21 15:37:29 -05:00
Thomas Harte 8a805b6ba1 Ensures that get_average_output_peak() returns something sensible even before a set_relative_volumes. 2020-11-21 22:52:57 -05:00