feat(audio): add runtime backend selection #152

Merged
OragonEfreet merged 3 commits from feat/audio-backend-selection into main 2026-06-04 20:26:59 +02:00
Owner

Bring audio to parity with video: bj_audio_backends() enumerates the
backends compiled into the build, and bj_begin_system(BJ_AUDIO_SYSTEM,
name, ...) pins one by name at the subsystem's 0->1 transition (NULL
keeps auto-selecting). bj_begin_audio() gains a forced_backend argument
threaded through retain_audio().

Docs in audio.h/window.h/system.h describe the override path; banjo-info
now lists active audio backends; unit_audio_backends.c covers
enumeration and pinning against the always-present fake backend.

Bring audio to parity with video: bj_audio_backends() enumerates the backends compiled into the build, and bj_begin_system(BJ_AUDIO_SYSTEM, name, ...) pins one by name at the subsystem's 0->1 transition (NULL keeps auto-selecting). bj_begin_audio() gains a forced_backend argument threaded through retain_audio(). Docs in audio.h/window.h/system.h describe the override path; banjo-info now lists active audio backends; unit_audio_backends.c covers enumeration and pinning against the always-present fake backend.
feat(audio): add runtime backend selection
All checks were successful
Documentation / build-docs (pull_request) Successful in 10s
QA / cert (pull_request) Successful in 29s
Build and Test / linux-linux-gcc / shared (pull_request) Successful in 17s
Build and Test / linux-linux-gcc / static (pull_request) Successful in 17s
Build and Test / linux-windows-mingw / shared (pull_request) Successful in 26s
Build and Test / linux-windows-mingw / static (pull_request) Successful in 26s
4301becf47
Bring audio to parity with video: bj_audio_backends() enumerates the
backends compiled into the build, and bj_begin_system(BJ_AUDIO_SYSTEM,
name, ...) pins one by name at the subsystem's 0->1 transition (NULL
keeps auto-selecting). bj_begin_audio() gains a forced_backend argument
threaded through retain_audio().

Docs in audio.h/window.h/system.h describe the override path; banjo-info
now lists active audio backends; unit_audio_backends.c covers
enumeration and pinning against the always-present fake backend.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
OragonEfreet force-pushed feat/audio-backend-selection from 4301becf47
All checks were successful
Documentation / build-docs (pull_request) Successful in 10s
QA / cert (pull_request) Successful in 29s
Build and Test / linux-linux-gcc / shared (pull_request) Successful in 17s
Build and Test / linux-linux-gcc / static (pull_request) Successful in 17s
Build and Test / linux-windows-mingw / shared (pull_request) Successful in 26s
Build and Test / linux-windows-mingw / static (pull_request) Successful in 26s
to 5411660726
Some checks failed
Documentation / build-docs (pull_request) Successful in 8s
QA / cert (pull_request) Successful in 29s
Build and Test / linux-linux-gcc / shared (pull_request) Successful in 16s
Build and Test / linux-linux-gcc / static (pull_request) Successful in 17s
Build and Test / linux-windows-mingw / shared (pull_request) Successful in 25s
Build and Test / linux-windows-mingw / static (pull_request) Has been cancelled
2026-06-04 19:50:10 +02:00
Compare
Edit changelog
All checks were successful
Documentation / build-docs (pull_request) Successful in 8s
QA / cert (pull_request) Successful in 29s
Build and Test / linux-linux-gcc / shared (pull_request) Successful in 16s
Build and Test / linux-linux-gcc / static (pull_request) Successful in 17s
Build and Test / linux-windows-mingw / shared (pull_request) Successful in 25s
Build and Test / linux-windows-mingw / static (pull_request) Successful in 26s
4c21ac2721
OragonEfreet force-pushed feat/audio-backend-selection from 4c21ac2721
All checks were successful
Documentation / build-docs (pull_request) Successful in 8s
QA / cert (pull_request) Successful in 29s
Build and Test / linux-linux-gcc / shared (pull_request) Successful in 16s
Build and Test / linux-linux-gcc / static (pull_request) Successful in 17s
Build and Test / linux-windows-mingw / shared (pull_request) Successful in 25s
Build and Test / linux-windows-mingw / static (pull_request) Successful in 26s
to f0d78b5216
Some checks failed
Documentation / build-docs (pull_request) Successful in 8s
QA / cert (pull_request) Successful in 29s
Build and Test / linux-linux-gcc / static (pull_request) Has been cancelled
Build and Test / linux-windows-mingw / shared (pull_request) Has been cancelled
Build and Test / linux-windows-mingw / static (pull_request) Has been cancelled
Build and Test / linux-linux-gcc / shared (pull_request) Has been cancelled
2026-06-04 20:23:29 +02:00
Compare
OragonEfreet force-pushed feat/audio-backend-selection from f0d78b5216
Some checks failed
Documentation / build-docs (pull_request) Successful in 8s
QA / cert (pull_request) Successful in 29s
Build and Test / linux-linux-gcc / static (pull_request) Has been cancelled
Build and Test / linux-windows-mingw / shared (pull_request) Has been cancelled
Build and Test / linux-windows-mingw / static (pull_request) Has been cancelled
Build and Test / linux-linux-gcc / shared (pull_request) Has been cancelled
to b660b91506
All checks were successful
Documentation / build-docs (pull_request) Successful in 9s
QA / cert (pull_request) Successful in 29s
Build and Test / linux-linux-gcc / shared (pull_request) Successful in 19s
Build and Test / linux-linux-gcc / static (pull_request) Successful in 17s
Build and Test / linux-windows-mingw / shared (pull_request) Successful in 25s
Build and Test / linux-windows-mingw / static (pull_request) Successful in 26s
2026-06-04 20:24:39 +02:00
Compare
OragonEfreet deleted branch feat/audio-backend-selection 2026-06-04 20:26:59 +02:00
Sign in to join this conversation.
No reviewers
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
OragonEfreet/banjo!152
No description provided.