mirror of
https://gitlab.freedesktop.org/pipewire/pipewire.git
synced 2025-11-01 22:58:50 -04:00
bluez5: add LHDC V5 A2DP decoder
This commit is contained in:
parent
a9ba34da23
commit
f2b3b63f21
6 changed files with 318 additions and 20 deletions
|
|
@ -218,6 +218,27 @@
|
|||
#define LHDC_CH_SPLIT_MODE_TWS 0x02
|
||||
#define LHDC_CH_SPLIT_MODE_TWS_PLUS 0x04
|
||||
|
||||
#define LHDCV5_SAMPLING_FREQ_44100 (1 << 5)
|
||||
#define LHDCV5_SAMPLING_FREQ_48000 (1 << 4)
|
||||
#define LHDCV5_SAMPLING_FREQ_96000 (1 << 2)
|
||||
#define LHDCV5_SAMPLING_FREQ_192000 (1 << 0)
|
||||
|
||||
#define LHDCV5_BIT_DEPTH_16 (1 << 2)
|
||||
#define LHDCV5_BIT_DEPTH_24 (1 << 1)
|
||||
#define LHDCV5_BIT_DEPTH_32 (1 << 0)
|
||||
|
||||
#define LHDCV5_MAX_BITRATE_900K (3)
|
||||
#define LHDCV5_MAX_BITRATE_500K (2)
|
||||
#define LHDCV5_MAX_BITRATE_400K (1)
|
||||
#define LHDCV5_MAX_BITRATE_1000K (0)
|
||||
|
||||
#define LHDCV5_MIN_BITRATE_400K (3)
|
||||
#define LHDCV5_MIN_BITRATE_256K (2)
|
||||
#define LHDCV5_MIN_BITRATE_160K (1)
|
||||
#define LHDCV5_MIN_BITRATE_64K (0)
|
||||
|
||||
#define LHDCV5_VER_1 (1 << 0)
|
||||
|
||||
#define FASTSTREAM_VENDOR_ID 0x0000000a
|
||||
#define FASTSTREAM_CODEC_ID 0x0001
|
||||
|
||||
|
|
@ -422,23 +443,25 @@ typedef struct {
|
|||
|
||||
typedef struct {
|
||||
a2dp_vendor_codec_t info;
|
||||
uint8_t frequency:5;
|
||||
uint8_t rfa1:3;
|
||||
uint8_t sampling_freq:6;
|
||||
uint8_t rfa1:2;
|
||||
uint8_t bit_depth:3;
|
||||
uint8_t rfa2:1;
|
||||
uint8_t max_bit_rate:2;
|
||||
uint8_t min_bit_rate:2;
|
||||
uint8_t max_bitrate:2;
|
||||
uint8_t min_bitrate:2;
|
||||
uint8_t version:4;
|
||||
uint8_t frame_len_5ms:1;
|
||||
uint8_t rfa3:3;
|
||||
uint8_t ar:1;
|
||||
uint8_t jas:1;
|
||||
uint8_t meta:1;
|
||||
uint8_t rfa4:3;
|
||||
uint8_t rfa4:1;
|
||||
uint8_t lossless_96k:1;
|
||||
uint8_t lossless_24b:1;
|
||||
uint8_t low_latency:1;
|
||||
uint8_t reserved:1; // lossless?
|
||||
uint8_t ar_on:1;
|
||||
uint8_t lossless_48k:1;
|
||||
uint8_t rfa5:7;
|
||||
uint8_t lossless_raw_48k:1;
|
||||
} __attribute__ ((packed)) a2dp_lhdc_v5_t;
|
||||
|
||||
#elif __BYTE_ORDER == __BIG_ENDIAN
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue