Skip to content

[feature request] 8-channel audio output #36

@struthiocamelus

Description

@struthiocamelus

Hi, I'm the author of https://github.com/struthiocamelus/lsdj-ripper

This project makes a custom AudioPlayer in order to run the emulator much faster than realtime so I can render songs written in LSDJ to WAV output.

Is it possible for Sound to be refactored to allow for each of the APU's R/L channels to be emitted independently? This would allow folks authoring on LSDJ to be able to output independent tracks for post-render mastering in a separate DAW.

This type of multi-channel sound output is supported by BGB.

My thinking here:

  • Add a typed Mixer<T> trait where T is the data the Mixer sends to the AudioPlayer<T>
  • Type Sound<T> so that all fit together
  • The default implementation is thus Sound<(f32, f32)>
  • A custom implementation I'm planning on might be Sound<[f32; 8]> or even better Sound<APUChannelBuffers> that contains the raw channels.

Is there an easier alternative?

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions