From f40f8caeca2fd6ccb4d3b96a2844b2268b068f8a Mon Sep 17 00:00:00 2001 From: Matthias Ringwald Date: Mon, 29 May 2017 12:51:46 +0200 Subject: [PATCH] example: new avdtp_source_demo example that plays 441 hz sine or small mod file --- example/Makefile.inc | 26 ++++++++++++++++++--- {test/avdtp => example}/avdtp_source_demo.c | 3 +-- test/avdtp/Makefile | 5 +--- 3 files changed, 25 insertions(+), 9 deletions(-) rename {test/avdtp => example}/avdtp_source_demo.c (99%) diff --git a/example/Makefile.inc b/example/Makefile.inc index 23428e099..102751b23 100644 --- a/example/Makefile.inc +++ b/example/Makefile.inc @@ -4,6 +4,7 @@ VPATH += ${BTSTACK_ROOT}/src/ble VPATH += ${BTSTACK_ROOT}/src/ble/gatt-service VPATH += ${BTSTACK_ROOT}/src/classic VPATH += ${BTSTACK_ROOT}/example +VPATH += ${BTSTACK_ROOT}/3rd-party/hxcmod-player VPATH += ${BTSTACK_ROOT}/3rd-party/mbedtls/library VPATH += ${BTSTACK_ROOT}/3rd-party/micro-ecc VPATH += ${BTSTACK_ROOT}/3rd-party/bluedroid/decoder/srce @@ -13,13 +14,11 @@ CFLAGS += -I. CFLAGS += -I${BTSTACK_ROOT}/src/ble CFLAGS += -I${BTSTACK_ROOT}/src/classic CFLAGS += -I${BTSTACK_ROOT}/src -CFLAGS += -I${BTSTACK_ROOT}/3rd-party/mbedtls/include +CFLAGS += -I${BTSTACK_ROOT}/3rd-party/hxcmod-player CFLAGS += -I${BTSTACK_ROOT}/3rd-party/micro-ecc CFLAGS += -I${BTSTACK_ROOT}/3rd-party/bluedroid/decoder/include CFLAGS += -I${BTSTACK_ROOT}/3rd-party/bluedroid/encoder/include -CFLAGS += -I${BTSTACK_ROOT}/test/security_manager - # for CVSD/SBC PLC LDFLAGS += -lm @@ -93,8 +92,23 @@ SBC_ENCODER += \ CVSD_PLC = \ btstack_cvsd_plc.c \ +AVDTP += \ + avdtp_util.c \ + avdtp.c \ + avdtp_initiator.c \ + avdtp_acceptor.c \ + avdtp_source.c \ + avdtp_sink.c \ + a2dp_source.c \ + a2dp_sink.c \ + btstack_ring_buffer.c \ + +HXCMOD_PLAYER = \ + ${BTSTACK_ROOT}/3rd-party/hxcmod-player/hxcmod.c \ + ${BTSTACK_ROOT}/3rd-party/hxcmod-player/mods/nao-deceased_by_disease.c \ EXAMPLES = \ + avdtp_source_demo \ ancs_client_demo \ gap_dedicated_bonding \ gap_inquiry \ @@ -146,6 +160,8 @@ PAN_OBJ = $(PAN:.c=.o) SBC_DECODER_OBJ = $(SBC_DECODER:.c=.o) SBC_ENCODER_OBJ = $(SBC_ENCODER:.c=.o) CVSD_PLC_OBJ = $(CVSD_PLC:.c=.o) +AVDTP_OBJ = $(AVDTP:.c=.o) +HXCMOD_PLAYER_OBJ = $(HXCMOD_PLAYER:.c=.o) default_target: all @@ -251,6 +267,10 @@ hfp_hf_demo: ${CORE_OBJ} ${COMMON_OBJ} ${CLASSIC_OBJ} ${SDP_CLIENT} ${SBC_DECODE hid_keyboard_demo: ${CORE_OBJ} ${COMMON_OBJ} ${CLASSIC_OBJ} ${SDP_CLIENT} btstack_ring_buffer.o hid_device.o hid_keyboard_demo.o ${CC} $^ ${CFLAGS} -I${BTSTACK_ROOT}/platform/posix ${LDFLAGS} -o $@ +avdtp_source_demo: ${CORE_OBJ} ${COMMON_OBJ} ${CLASSIC_OBJ} ${SDP_CLIENT} ${SBC_ENCODER_OBJ} ${SBC_DECODER_OBJ} ${AVDTP_OBJ} ${HXCMOD_PLAYER_OBJ} avdtp_source_demo.c + ${CC} $^ ${CFLAGS} -I${BTSTACK_ROOT}/platform/posix ${LDFLAGS} -o $@ + + clean: rm -f ${EXAMPLES} rm -f *.o *.out *.hex *.exe diff --git a/test/avdtp/avdtp_source_demo.c b/example/avdtp_source_demo.c similarity index 99% rename from test/avdtp/avdtp_source_demo.c rename to example/avdtp_source_demo.c index ce607551e..a64c1e09c 100644 --- a/test/avdtp/avdtp_source_demo.c +++ b/example/avdtp_source_demo.c @@ -285,7 +285,6 @@ static int fill_sbc_audio_buffer(a2dp_media_sending_context_t * context){ } static void avdtp_fill_audio_buffer_timeout_handler(btstack_timer_source_t * timer){ - log_info("timer"); a2dp_media_sending_context_t * context = (a2dp_media_sending_context_t *) btstack_run_loop_get_timer_context(timer); btstack_run_loop_set_timer(&context->fill_audio_buffer_timer, FILL_AUDIO_BUFFER_TIMEOUT_MS); btstack_run_loop_add_timer(&context->fill_audio_buffer_timer); @@ -306,7 +305,7 @@ static void avdtp_fill_audio_buffer_timeout_handler(btstack_timer_source_t * tim context->time_audio_data_sent = now; context->samples_ready += num_samples; - if (!context->sbc_ready_to_send) return; + if (context->sbc_ready_to_send) return; fill_sbc_audio_buffer(context); diff --git a/test/avdtp/Makefile b/test/avdtp/Makefile index ae232888e..7c8ab5bcc 100644 --- a/test/avdtp/Makefile +++ b/test/avdtp/Makefile @@ -84,7 +84,7 @@ HXCMOD_PLAYER = \ ${BTSTACK_ROOT}/3rd-party/hxcmod-player/hxcmod.c \ ${BTSTACK_ROOT}/3rd-party/hxcmod-player/mods/nao-deceased_by_disease.c \ -AVDTP_TESTS = avdtp_source_demo avdtp_sink_demo portaudio_test +AVDTP_TESTS = avdtp_sink_demo portaudio_test #sine_encode_decode_ring_buffer_test sine_encode_decode_test sine_encode_decode_performance_test CORE_OBJ = $(CORE:.c=.o) @@ -102,9 +102,6 @@ all: ${AVDTP_TESTS} avdtp_sink_demo: ${CORE_OBJ} ${COMMON_OBJ} ${SBC_DECODER_OBJ} ${SBC_ENCODER_OBJ} ${AVDTP_OBJ} avdtp_sink_demo.o ${CC} $^ ${CFLAGS} ${LDFLAGS} -o $@ -avdtp_source_demo: ${CORE_OBJ} ${COMMON_OBJ} ${SBC_DECODER_OBJ} ${SBC_ENCODER_OBJ} ${AVDTP_OBJ} ${HXCMOD_PLAYER_OBJ} avdtp_source_demo.o - ${CC} $^ ${CFLAGS} ${LDFLAGS} -o $@ - portaudio_test: btstack_util.o hci_dump.o wav_util.o btstack_ring_buffer.o portaudio_test.c ${CC} $^ ${CFLAGS} ${LDFLAGS} -o $@