1. 07 Apr, 2024 1 commit
  2. 01 Mar, 2024 3 commits
  3. 29 Feb, 2024 4 commits
  4. 28 Feb, 2024 5 commits
  5. 27 Feb, 2024 3 commits
    • David Reid's avatar
      Memory improvements to node processing. · 9aa6e035
      David Reid authored
      When processing a node, miniaudio will read into a temporary buffer
      before mixing input attachments. This commit removes the per-node heap
      allocation and replaces it with a per-graph stack. This should result
      in less memory usage at larger scales, but at the expense of slightly
      more usage at smaller scales.
      
      The size of the stack can be configured via ma_node_graph_config. If
      ma_engine is being used, it can be done via ma_engine_config.
      9aa6e035
    • David Reid's avatar
      Update to node processing. · 7a8ebd7f
      David Reid authored
      Previously, processing a node would involve a temporary buffer
      allocated on the stack. Because this was fixed size, it would result in
      processing being sub-divided into chunks in order to avoid overflowing
      that buffer. This becomes an issue when a node needs to have a known
      processing size. An example might be some kind of effect that requires
      processing be in powers of two.
      
      With this commit, the `processingSizeInFrames` variable in
      `ma_node_graph_config` can be used to make it so processing always
      happens in fixed sized chunks. In this situations, it's recommended you
      always call `ma_node_graph_read_pcm_frames()` with a frame count of a
      multiple of `processingSizeInFrames`.
      
      The allocation strategy used here is not optimal and will be improved
      in future commits. It currently allocates a buffer per-node, but since
      the data contained within it is transient in nature, it should be
      possible to use a global fixed sized stack that supports allocating a
      variable amount of space within the stack buffer.
      7a8ebd7f
    • David Reid's avatar
      Update dr_wav and dr_mp3. · e32cc9ff
      David Reid authored
      e32cc9ff
  6. 25 Feb, 2024 1 commit
  7. 08 Feb, 2024 2 commits
  8. 30 Jan, 2024 1 commit
  9. 28 Jan, 2024 1 commit
  10. 23 Jan, 2024 1 commit
  11. 22 Jan, 2024 1 commit
  12. 12 Jan, 2024 1 commit
  13. 10 Jan, 2024 1 commit
  14. 08 Jan, 2024 2 commits
  15. 23 Dec, 2023 2 commits
  16. 17 Dec, 2023 1 commit
    • David Reid's avatar
      Stop using MA_ASSERT in examples. · 766a155f
      David Reid authored
      This is useful because MA_ASSERT is only defined in the implementation
      section of miniaudio.h which can cause issues when people copy/paste
      the code and use it in a file that does not have visibility of the
      implementation.
      
      Note that there are still more references to implementation-defined
      macros, but these have been moved to the public section in the dev-0.12
      branch so I'm not bothering to change those just yet.
      
      Public issue https://github.com/mackron/miniaudio/issues/787
      766a155f
  17. 13 Dec, 2023 1 commit
  18. 10 Dec, 2023 1 commit
  19. 08 Dec, 2023 1 commit
  20. 06 Dec, 2023 3 commits
  21. 02 Dec, 2023 1 commit
  22. 30 Nov, 2023 1 commit
  23. 29 Nov, 2023 2 commits