Skip to content

[ALSA] Custom virtual devices no longer enumerable since v0.16 (regression from PR #916) #991

@roderickvd

Description

@roderickvd

CPAL v0.16 changes to ALSA device enumeration (PR #916) broke discovery of custom virtual ALSA devices. The card-based enumeration approach only finds devices associated with physical sound cards, plus some explicitly injected virtual devices. Custom virtual devices like _audioout, camilladsp, and arbitrary ALSA PCM plugins are no longer enumerable.

Expected Behavior

Virtual devices should be discoverable just like in v0.15, allowing applications to select specific virtual audio routing devices without workarounds in /etc/asound.conf or similar:

// Should enumerate custom virtual devices like "_audioout", "camilladsp"
let devices: Vec<_> = cpal::default_host().devices().unwrap().collect();

Proposed Solution

Supplement card-based enumeration with hints-based enumeration for virtual devices, filtering appropriately to avoid duplicates while maintaining PR #916's benefits.

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions