Skip to content

Non-blocking volume ramping #64

Description

@roderickvd

Feature Description

pleezer should quickly ramp the volume down, then up again, when seeking, skipping tracks, and stopping or starting playback.

Implementation Ideas

Rodio offers a periodic_access callback, not on the Sink but on each Source, although in our case only one source is active at any time. We could probably set the desired volume in an atomic variable or Arc and share it amongst the sources.

Alternatives Considered

The current Player::ramp_volume implementation in pleezer prevents the worst of popping and clicking sounds, but is very basic and blocking. It should be non-blocking.

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions