Skip to content

Commit 617fa6c

Browse files
Fixes to build with newer btstack v1.8 (#742)
Merging as the pico-examples build is broken by the btstack update
1 parent ee99a9e commit 617fa6c

2 files changed

Lines changed: 20 additions & 15 deletions

File tree

pico_w/bt/CMakeLists.txt

Lines changed: 17 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -5,14 +5,15 @@ set(BTSTACK_EXAMPLE_PATH ${BTSTACK_ROOT}/example)
55
set(BTSTACK_3RD_PARTY_PATH ${BTSTACK_ROOT}/3rd-party)
66
set(BT_EXAMPLE_COMMON_DIR "${CMAKE_CURRENT_LIST_DIR}")
77

8-
if (NOT PICO_EXTRAS_PATH)
9-
message("Skipping some Pico W BTstack examples that require pico-extras")
10-
else()
11-
add_library(pico_btstack_audio_example INTERFACE)
8+
add_library(pico_btstack_audio_example INTERFACE)
9+
target_sources(pico_btstack_audio_example INTERFACE
10+
${PICO_BTSTACK_PATH}/src/btstack_audio.c
11+
${PICO_BTSTACK_PATH}/src/btstack_audio_generator.c
12+
)
13+
if (PICO_EXTRAS_PATH)
1214
target_sources(pico_btstack_audio_example INTERFACE
13-
${PICO_BTSTACK_PATH}/src/btstack_audio.c
1415
${CMAKE_CURRENT_LIST_DIR}/btstack_audio_pico.c
15-
)
16+
)
1617
target_link_libraries(pico_btstack_audio_example INTERFACE
1718
pico_audio_i2s
1819
)
@@ -22,13 +23,17 @@ endif()
2223
add_library(pico_btstack_hxcmod_player INTERFACE)
2324
target_sources(pico_btstack_hxcmod_player INTERFACE
2425
${BTSTACK_3RD_PARTY_PATH}/hxcmod-player/hxcmod.c
25-
${BTSTACK_3RD_PARTY_PATH}/hxcmod-player/mods/nao-deceased_by_disease.c
26+
${BTSTACK_3RD_PARTY_PATH}/hxcmod-player/mods/mod.c
2627
)
2728
target_include_directories(pico_btstack_hxcmod_player INTERFACE
2829
${BTSTACK_3RD_PARTY_PATH}/hxcmod-player
2930
${BTSTACK_3RD_PARTY_PATH}/hxcmod-player/mods
3031
)
31-
32+
if (PICO_EXTRAS_PATH)
33+
target_compile_definitions(pico_btstack_hxcmod_player INTERFACE
34+
ENABLE_MODPLAYER=1
35+
)
36+
endif()
3237
add_library(pico_btstack_sco_demo_util INTERFACE)
3338
target_sources(pico_btstack_sco_demo_util INTERFACE
3439
# sco demo utils
@@ -53,10 +58,10 @@ target_compile_definitions(picow_bt_example_common INTERFACE
5358
#WANT_HCI_DUMP=1 # This enables btstack debug
5459
#ENABLE_SEGGER_RTT=1
5560
)
56-
if (TARGET pico_btstack_audio_example)
57-
target_link_libraries(picow_bt_example_common INTERFACE
58-
pico_btstack_audio_example
59-
)
61+
target_link_libraries(picow_bt_example_common INTERFACE
62+
pico_btstack_audio_example
63+
)
64+
if (PICO_EXTRAS_PATH)
6065
target_compile_definitions(picow_bt_example_common INTERFACE
6166
TEST_AUDIO=1
6267
)

pico_w/bt/btstack_audio_pico.c

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -59,7 +59,7 @@
5959
#define SAMPLES_PER_BUFFER 512
6060

6161
// client
62-
static void (*playback_callback)(int16_t * buffer, uint16_t num_samples);
62+
static void (*playback_callback)(int16_t * buffer, uint16_t num_samples, const btstack_audio_context_t * timeinfo);
6363

6464
// timer to fill output ring buffer
6565
static btstack_timer_source_t driver_timer_sink;
@@ -117,7 +117,7 @@ static void btstack_audio_pico_sink_fill_buffers(void){
117117
}
118118

119119
int16_t * buffer16 = (int16_t *) audio_buffer->buffer->bytes;
120-
(*playback_callback)(buffer16, audio_buffer->max_sample_count);
120+
(*playback_callback)(buffer16, audio_buffer->max_sample_count, 0);
121121

122122
// duplicate samples for mono
123123
if (btstack_audio_pico_channel_count == 1){
@@ -146,7 +146,7 @@ static void driver_timer_handler_sink(btstack_timer_source_t * ts){
146146
static int btstack_audio_pico_sink_init(
147147
uint8_t channels,
148148
uint32_t samplerate,
149-
void (*playback)(int16_t * buffer, uint16_t num_samples)
149+
void (*playback)(int16_t * buffer, uint16_t num_samples, const btstack_audio_context_t * timeinfo)
150150
){
151151
btstack_assert(playback != NULL);
152152
btstack_assert(channels != 0);

0 commit comments

Comments
 (0)