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

Mixing Reform #11

Open
3 of 14 tasks
MineCake147E opened this issue Mar 15, 2020 · 0 comments
Open
3 of 14 tasks

Mixing Reform #11

MineCake147E opened this issue Mar 15, 2020 · 0 comments
Assignees
Labels
Feature: Signal Processing 🎛️ Something related to signal processing Kind: Enhancement 📈 New feature or request Priority: Moderate 🚃 Something that is moderately prioritized Status: Paused ⏸️ Previously been working but paused with some reasons.
Projects

Comments

@MineCake147E
Copy link
Owner

MineCake147E commented Mar 15, 2020

Backgrounds

  • SimpleMixer was not simple enough to be named after its features.
    • Supporting addition/removal of audio sources makes it complex

Idea and Progress

  • SimpleMixer Overhaul: Make SimpleMixer as fast and straightforward as possible
    • Mixes ONLY 2 SOURCES with 1:1 customizable ratio of volume
      • Scale & mix can be done quickly
    • Drop adding/removing/replacing support
  • Add net5.0 library project Shamisen.Game
    • Implement SFX System (on another Issue)
  • Implement a brand new Pipeline System #12
  • Implement AdvancedMixer
    • Implement Data flow Management to maximize the output performance for real-time audio mixing and playback.
      • Set the Buffering Strategy for every input to calculate output
        • Aggressive Pre-Buffering for BGM from storage or network stream
        • Realtime for input from Sound Effect mixer(like SFX system introduced above) for minimal latency
      • Make whole mixing process multi-threaded
        • Pre-Read() mixing for BGM using Pairwise Summation
        • On-Read() mixing for SE Mixers(which is also called in parallel)
@MineCake147E MineCake147E added Kind: Enhancement 📈 New feature or request Feature: Signal Processing 🎛️ Something related to signal processing Status: Working ▶️ Work in progress Priority: Moderate 🚃 Something that is moderately prioritized labels Mar 15, 2020
@MineCake147E MineCake147E added this to the Advanced Mixer milestone Mar 15, 2020
@MineCake147E MineCake147E self-assigned this Mar 15, 2020
@MineCake147E MineCake147E added this to To do in 1.0 Release via automation Mar 15, 2020
@MineCake147E MineCake147E moved this from To do to In progress in 1.0 Release Mar 15, 2020
@MineCake147E MineCake147E moved this from In progress to To do in 1.0 Release Mar 15, 2020
@MineCake147E MineCake147E added Status: Waiting ⏳ Waiting for updates of dependencies and removed Status: Working ▶️ Work in progress labels Nov 14, 2020
@MineCake147E MineCake147E added Status: Working ▶️ Work in progress and removed Status: Waiting ⏳ Waiting for updates of dependencies labels Jul 3, 2021
@MineCake147E MineCake147E added Status: Paused ⏸️ Previously been working but paused with some reasons. and removed Status: Working ▶️ Work in progress labels Nov 28, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Feature: Signal Processing 🎛️ Something related to signal processing Kind: Enhancement 📈 New feature or request Priority: Moderate 🚃 Something that is moderately prioritized Status: Paused ⏸️ Previously been working but paused with some reasons.
Projects
1.0 Release
  
To do
Development

No branches or pull requests

1 participant