Skip to content

Tracking issue for audio engine rewrite #901

Description

@yara-blue

This tracks landing the changes from https://github.com/RustAudio/rodio-experiments into Rodio. This involves integrating the new rubato resampler and specializing it where possible.

We'll do it in phases as to not overload the review capacity. (Goal is to limit PR size to 500 lines, let's see if that is doable).

Phase one

  • land const source
  • remove experimental from fixed source
  • land try-into adaptors/convertors between sources (others in phase two)
  • note overhaul in Readme
  • land most basic generators

Phase two

  • channel conversions
  • resampler and integrate with rubato

Phase three

  • land basic effects defined through macro
  • deprecation warning on effects in DynamicSource that are not sound

Phase four

  • add new combinators [a, b, c].mixed() etc.
  • add all generators (noise etc, function gen. etc)

Phase five

  • rename current source to dynamic source
  • add Source = DynamicSource type alias with deprecation warning

Phase six

  • port all examples
  • rewrite Rodio main docs
  • update porting guide (needs to be really nice this time :3 )
  • prepare and make announcements

Open Questions

  • Do we deprecate Source in favor of DynamicSource?

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Fields

    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions