Skip to content

Add audio::context for enumerating audio devices #15

Description

@mrparmesan01

In miniaudio based on their specifications. There should ever only be one audio::engine instance.

Where each instance manages their own payload of audio effects and resources that are being utilized per `audio::engine.

About audio::context

In miniaudio's case. An audio context allows for multiple audio engine API's to effectively poll which audio devices to output to or select specific audio devices to take in inputs.

Before we can enable for intaking specific audio devices. We need to specify the configuration to the audio context beforehand.

Expected Behavior

Should be able to enumerate the number of audio devices and print out their names that are connected to your current platforms.

Example API:

audio::context test_context(/* set params */);

std::span<const audio::device> connected_devices = test_context.enumerate_devices();

std::optional<audio::device> device1 = connected_devices[0];

std::println("Name = {}", device1->name()); // prints the vendor for specific audio device.

Metadata

Metadata

Assignees

No one assigned

    Labels

    📐designTasks that involve the core systems. Highly involve in API design.🔋internalImplementing standalone tasks or perform code migration.

    Type

    Fields

    No fields configured for Task.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions