1. 17 Jan, 2021 4 commits
    • David Reid's avatar
      Fix a bug with the resource manager. · 13126b4d
      David Reid authored
      This was not setting the NON_BLOCKING flag correctly when NO_THREADING
      is set.
      13126b4d
    • David Reid's avatar
      Add support for running the resource manager without a job thread. · dc0ca707
      David Reid authored
      This is useful for platforms that do not have support for threading or
      programs that do not want to use an extra thread for resource
      management and would rather process jobs manually.
      
      When configuring the resource manager to not use threading, the
      MA_RESOURCE_MANAGER_FLAG_NO_THREADING flag must be set in the config.
      This implicitly enables the MA_RESOURCE_MANAGER_FLAG_NON_BLOCKING flag
      because it requires programs to manually call
      ma_resource_manager_process_next_job(), and since it's assumed that
      won't ever be called from another thread, you'd never want that to be
      blocking.
      
      This sets up a framework for getting the resource manager working with
      Emscripten.
      dc0ca707
    • David Reid's avatar
      Remove loop detection code for now. · 9e6042f6
      David Reid authored
      This needs a rethink. My test is no longer looping. Needs further
      investigation.
      9e6042f6
    • David Reid's avatar
      Start using the onGetRequiredInputFrameCount callback for nodes. · dd524565
      David Reid authored
      This is an optional callback and is used by miniaudio as a hint to help
      it determine how many input frames to read at a time. Without this,
      miniaudio needs to guess how many frames to read, and in certain
      situations may end up overestimating. This callback is only useful for
      nodes that process input and output frames at different rates, i.e.
      nodes that perform resampling.
      dd524565
  2. 16 Jan, 2021 12 commits
  3. 15 Jan, 2021 4 commits
    • David Reid's avatar
      Minor grammar fix. · 85580a4c
      David Reid authored
      85580a4c
    • David Reid's avatar
      Add a TODO. · 0c435ae8
      David Reid authored
      0c435ae8
    • David Reid's avatar
      Some improvements to the processing of nodes. · 13e03e41
      David Reid authored
      The following flags can now be associated with nodes via the vtable:
      
        * MA_NODE_FLAG_PASSTHROUGH
        * MA_NODE_FLAG_CONTINUOUS_PROCESSING
        * MA_NODE_FLAG_ALLOW_NULL_INPUT
        * MA_NODE_FLAG_DIFFERENT_PROCESSING_RATES
      
      See commit changes for a description of these flags.
      13e03e41
    • David Reid's avatar
      Changes to node processing callbacks. · 916c1b8a
      David Reid authored
        * The simplified callback has been removed.
        * The `globalTime` parameter has been removed from the callback.
        * The order of input and output frames and counts has been swapped to
          be consistent with ma_data_converter_process_pcm_frames(), etc.
      916c1b8a
  4. 14 Jan, 2021 7 commits
  5. 13 Jan, 2021 4 commits
  6. 12 Jan, 2021 9 commits