mirror of
https://github.com/bluekitchen/btstack.git
synced 2025-03-04 01:13:40 +00:00
le_audio: add mapping function for frame duration and sampling frequency
This commit is contained in:
parent
597c9a4ee9
commit
09d23cbe75
@ -382,8 +382,8 @@ uint16_t le_audio_util_metadata_serialize_using_mask(le_audio_metadata_t * metad
|
||||
return pos;
|
||||
}
|
||||
|
||||
btstack_lc3_frame_duration_t le_audio_util_get_btstack_lc3_frame_duration(le_audio_codec_frame_duration_index_t le_audio_codec_frame_duration_index){
|
||||
switch (le_audio_codec_frame_duration_index){
|
||||
btstack_lc3_frame_duration_t le_audio_util_get_btstack_lc3_frame_duration(le_audio_codec_frame_duration_index_t frame_duration_index){
|
||||
switch (frame_duration_index){
|
||||
case LE_AUDIO_CODEC_FRAME_DURATION_INDEX_7500US:
|
||||
return BTSTACK_LC3_FRAME_DURATION_7500US;
|
||||
case LE_AUDIO_CODEC_FRAME_DURATION_INDEX_10000US:
|
||||
@ -395,8 +395,8 @@ btstack_lc3_frame_duration_t le_audio_util_get_btstack_lc3_frame_duration(le_aud
|
||||
return 0;
|
||||
}
|
||||
|
||||
uint16_t le_audio_get_frame_duration_us(le_audio_codec_frame_duration_index_t le_audio_codec_frame_duration_index){
|
||||
switch (le_audio_codec_frame_duration_index){
|
||||
uint16_t le_audio_get_frame_duration_us(le_audio_codec_frame_duration_index_t frame_duration_index){
|
||||
switch (frame_duration_index){
|
||||
case LE_AUDIO_CODEC_FRAME_DURATION_INDEX_7500US:
|
||||
return 7500;
|
||||
case LE_AUDIO_CODEC_FRAME_DURATION_INDEX_10000US:
|
||||
@ -405,3 +405,85 @@ uint16_t le_audio_get_frame_duration_us(le_audio_codec_frame_duration_index_t le
|
||||
return 0;
|
||||
}
|
||||
}
|
||||
|
||||
le_audio_codec_frame_duration_index_t le_audio_get_frame_duration_index(uint16_t frame_duration_us){
|
||||
switch (frame_duration_us){
|
||||
case 0:
|
||||
return LE_AUDIO_CODEC_FRAME_DURATION_INDEX_INVALID;
|
||||
case 7500:
|
||||
return LE_AUDIO_CODEC_FRAME_DURATION_INDEX_7500US;
|
||||
case 10000:
|
||||
return LE_AUDIO_CODEC_FRAME_DURATION_INDEX_10000US;
|
||||
default:
|
||||
return LE_AUDIO_CODEC_FRAME_DURATION_INDEX_RFU;
|
||||
}
|
||||
}
|
||||
|
||||
uint32_t le_audio_get_sampling_frequency_hz(le_audio_codec_sampling_frequency_index_t sampling_frequency_index){
|
||||
switch (sampling_frequency_index){
|
||||
case LE_AUDIO_CODEC_SAMPLING_FREQUENCY_INDEX_8000_HZ:
|
||||
return 8000;
|
||||
case LE_AUDIO_CODEC_SAMPLING_FREQUENCY_INDEX_11025_HZ:
|
||||
return 11025;
|
||||
case LE_AUDIO_CODEC_SAMPLING_FREQUENCY_INDEX_16000_HZ:
|
||||
return 16000;
|
||||
case LE_AUDIO_CODEC_SAMPLING_FREQUENCY_INDEX_22050_HZ:
|
||||
return 22050;
|
||||
case LE_AUDIO_CODEC_SAMPLING_FREQUENCY_INDEX_24000_HZ:
|
||||
return 24000;
|
||||
case LE_AUDIO_CODEC_SAMPLING_FREQUENCY_INDEX_32000_HZ:
|
||||
return 32000;
|
||||
case LE_AUDIO_CODEC_SAMPLING_FREQUENCY_INDEX_44100_HZ:
|
||||
return 44100;
|
||||
case LE_AUDIO_CODEC_SAMPLING_FREQUENCY_INDEX_48000_HZ:
|
||||
return 48000;
|
||||
case LE_AUDIO_CODEC_SAMPLING_FREQUENCY_INDEX_88200_HZ:
|
||||
return 88200;
|
||||
case LE_AUDIO_CODEC_SAMPLING_FREQUENCY_INDEX_96000_HZ:
|
||||
return 96000;
|
||||
case LE_AUDIO_CODEC_SAMPLING_FREQUENCY_INDEX_176400_HZ:
|
||||
return 176400;
|
||||
case LE_AUDIO_CODEC_SAMPLING_FREQUENCY_INDEX_192000_HZ:
|
||||
return 192000;
|
||||
case LE_AUDIO_CODEC_SAMPLING_FREQUENCY_INDEX_384000_HZ:
|
||||
return 384000;
|
||||
default:
|
||||
return 0;
|
||||
}
|
||||
}
|
||||
|
||||
le_audio_codec_sampling_frequency_index_t le_audio_get_sampling_frequency_index(uint32_t sampling_frequency_hz){
|
||||
switch (sampling_frequency_hz){
|
||||
case 0:
|
||||
return LE_AUDIO_CODEC_SAMPLING_FREQUENCY_INDEX_INVALID;
|
||||
case 8000:
|
||||
return LE_AUDIO_CODEC_SAMPLING_FREQUENCY_INDEX_8000_HZ;
|
||||
case 11025:
|
||||
return LE_AUDIO_CODEC_SAMPLING_FREQUENCY_INDEX_11025_HZ;
|
||||
case 16000:
|
||||
return LE_AUDIO_CODEC_SAMPLING_FREQUENCY_INDEX_16000_HZ;
|
||||
case 22050:
|
||||
return LE_AUDIO_CODEC_SAMPLING_FREQUENCY_INDEX_22050_HZ;
|
||||
case 24000:
|
||||
return LE_AUDIO_CODEC_SAMPLING_FREQUENCY_INDEX_24000_HZ;
|
||||
case 32000:
|
||||
return LE_AUDIO_CODEC_SAMPLING_FREQUENCY_INDEX_32000_HZ;
|
||||
case 44100:
|
||||
return LE_AUDIO_CODEC_SAMPLING_FREQUENCY_INDEX_44100_HZ;
|
||||
case 48000:
|
||||
return LE_AUDIO_CODEC_SAMPLING_FREQUENCY_INDEX_48000_HZ;
|
||||
case 88200:
|
||||
return LE_AUDIO_CODEC_SAMPLING_FREQUENCY_INDEX_88200_HZ;
|
||||
case 96000:
|
||||
return LE_AUDIO_CODEC_SAMPLING_FREQUENCY_INDEX_96000_HZ;
|
||||
case 176400:
|
||||
return LE_AUDIO_CODEC_SAMPLING_FREQUENCY_INDEX_176400_HZ;
|
||||
case 192000:
|
||||
return LE_AUDIO_CODEC_SAMPLING_FREQUENCY_INDEX_192000_HZ;
|
||||
case 384000:
|
||||
return LE_AUDIO_CODEC_SAMPLING_FREQUENCY_INDEX_384000_HZ;
|
||||
default:
|
||||
return LE_AUDIO_CODEC_SAMPLING_FREQUENCY_INDEX_RFU;
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -63,9 +63,15 @@ uint16_t le_audio_util_metadata_serialize(le_audio_metadata_t * metadata, uint8_
|
||||
|
||||
uint16_t le_audio_util_metadata_serialize_using_mask(le_audio_metadata_t * metadata, uint8_t * tlv_buffer, uint16_t tlv_buffer_size);
|
||||
|
||||
btstack_lc3_frame_duration_t le_audio_util_get_btstack_lc3_frame_duration(le_audio_codec_frame_duration_index_t le_audio_codec_frame_duration_index);
|
||||
|
||||
uint16_t le_audio_get_frame_duration_us(le_audio_codec_frame_duration_index_t le_audio_codec_frame_duration_index);
|
||||
btstack_lc3_frame_duration_t le_audio_util_get_btstack_lc3_frame_duration(le_audio_codec_frame_duration_index_t frame_duration_index);
|
||||
|
||||
uint16_t le_audio_get_frame_duration_us(le_audio_codec_frame_duration_index_t frame_duration_index);
|
||||
le_audio_codec_frame_duration_index_t le_audio_get_frame_duration_index(uint16_t frame_duration_us);
|
||||
|
||||
|
||||
uint32_t le_audio_get_sampling_frequency_hz(le_audio_codec_sampling_frequency_index_t sampling_frequency_index);
|
||||
le_audio_codec_sampling_frequency_index_t le_audio_get_sampling_frequency_index(uint32_t sampling_frequency_hz);
|
||||
|
||||
#if defined __cplusplus
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user