mirror of
https://gitlab.freedesktop.org/pipewire/pipewire.git
synced 2025-11-01 22:58:50 -04:00
bluez5: bap: allow configuring server locations/context
Add configuration options for the BAP/PACS sink and source endpoint location (= channel positions) and context settings. Although BlueZ associates these with individual endpoints, in the PACS spec they are actually device-global, so configure directly in monitor settings.
This commit is contained in:
parent
a4148c80b4
commit
081116906d
4 changed files with 138 additions and 53 deletions
|
|
@ -5,6 +5,8 @@
|
|||
#ifndef SPA_BLUEZ5_BAP_CODEC_CAPS_H_
|
||||
#define SPA_BLUEZ5_BAP_CODEC_CAPS_H_
|
||||
|
||||
#include <spa/param/audio/format.h>
|
||||
|
||||
#define BAP_CODEC_LC3 0x06
|
||||
|
||||
#define LC3_TYPE_FREQ 0x01
|
||||
|
|
@ -175,4 +177,39 @@ struct bap_codec_qos_full {
|
|||
struct bap_codec_qos qos;
|
||||
};
|
||||
|
||||
static const struct {
|
||||
uint32_t bit;
|
||||
enum spa_audio_channel channel;
|
||||
} bap_channel_bits[] = {
|
||||
{ BAP_CHANNEL_MONO, SPA_AUDIO_CHANNEL_MONO },
|
||||
{ BAP_CHANNEL_FL, SPA_AUDIO_CHANNEL_FL },
|
||||
{ BAP_CHANNEL_FR, SPA_AUDIO_CHANNEL_FR },
|
||||
{ BAP_CHANNEL_FC, SPA_AUDIO_CHANNEL_FC },
|
||||
{ BAP_CHANNEL_LFE, SPA_AUDIO_CHANNEL_LFE },
|
||||
{ BAP_CHANNEL_BL, SPA_AUDIO_CHANNEL_RL },
|
||||
{ BAP_CHANNEL_BR, SPA_AUDIO_CHANNEL_RR },
|
||||
{ BAP_CHANNEL_FLC, SPA_AUDIO_CHANNEL_FLC },
|
||||
{ BAP_CHANNEL_FRC, SPA_AUDIO_CHANNEL_FRC },
|
||||
{ BAP_CHANNEL_BC, SPA_AUDIO_CHANNEL_BC },
|
||||
{ BAP_CHANNEL_LFE2, SPA_AUDIO_CHANNEL_LFE2 },
|
||||
{ BAP_CHANNEL_SL, SPA_AUDIO_CHANNEL_SL },
|
||||
{ BAP_CHANNEL_SR, SPA_AUDIO_CHANNEL_SR },
|
||||
{ BAP_CHANNEL_TFL, SPA_AUDIO_CHANNEL_TFL },
|
||||
{ BAP_CHANNEL_TFR, SPA_AUDIO_CHANNEL_TFR },
|
||||
{ BAP_CHANNEL_TFC, SPA_AUDIO_CHANNEL_TFC },
|
||||
{ BAP_CHANNEL_TC, SPA_AUDIO_CHANNEL_TC },
|
||||
{ BAP_CHANNEL_TBL, SPA_AUDIO_CHANNEL_TRL },
|
||||
{ BAP_CHANNEL_TBR, SPA_AUDIO_CHANNEL_TRR },
|
||||
{ BAP_CHANNEL_TSL, SPA_AUDIO_CHANNEL_TSL },
|
||||
{ BAP_CHANNEL_TSR, SPA_AUDIO_CHANNEL_TSR },
|
||||
{ BAP_CHANNEL_TBC, SPA_AUDIO_CHANNEL_TRC },
|
||||
{ BAP_CHANNEL_BFC, SPA_AUDIO_CHANNEL_BC },
|
||||
{ BAP_CHANNEL_BFL, SPA_AUDIO_CHANNEL_BLC },
|
||||
{ BAP_CHANNEL_BFR, SPA_AUDIO_CHANNEL_BRC },
|
||||
{ BAP_CHANNEL_FLW, SPA_AUDIO_CHANNEL_FLW },
|
||||
{ BAP_CHANNEL_FRW, SPA_AUDIO_CHANNEL_FRW },
|
||||
{ BAP_CHANNEL_LS, SPA_AUDIO_CHANNEL_SL }, /* is it the right mapping? */
|
||||
{ BAP_CHANNEL_RS, SPA_AUDIO_CHANNEL_SR }, /* is it the right mapping? */
|
||||
};
|
||||
|
||||
#endif
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue