Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

CD audio optimizations and buffer zero-copy #36

Closed
wants to merge 7 commits into from

Commits on Nov 11, 2019

  1. Bump dr_mp3 codec to v0.5.2

    mackron authored and krcroft committed Nov 11, 2019
  2. Eliminate buffers, conversions, and unused code

    krcroft committed Nov 11, 2019
  3. Refactor and pass-through the decode buffer

    krcroft committed Nov 11, 2019
  4. Refactor CD-DA flow by removing intermediate buffers and loops

    Thanks to @ripsaw8080 for insight into CD-DA channel mapping,
    @hail-to-the-ryzen for testing and flagging a position-tracking bug,
    and @dreamer_ for guidance and code review.
    
    The CD-DA volume and channel mapping loops were moved to generic mixer
    calls and no longer require a pre-processing loop:
     - Application-controlled CD-DA volume adjustment is now applied using
       an existing mixer volume scalar that was previously unused by the
       CD-DA code.
     - Mapping of CD-DA left and right channels is now applied at the tail
       end of the mixer's sample ingest sequence.
    
    The following have been removed:
     - The CD-DA callback chunk-wise circular buffer
     - The decode buffers in the Opus and MP3 decoders
     - The decode buffer and conversion buffers in SDL_Sound
    These removals and API changes allow the image player's buffer
    to be passed-through ultimately to the audio codec, skipping multiple
    intermediate buffers.
    krcroft committed Nov 11, 2019
  5. Remove SpeexDSP from the auto-tools configuraiton

    krcroft committed Nov 11, 2019
  6. Remove SpeexDSP from the CI configuration

    krcroft committed Nov 11, 2019