diff --git a/src/libtf/cortex-m4/README b/src/libtf/cortex-m4/README index 00c4f3d30..188f3bbd9 100644 --- a/src/libtf/cortex-m4/README +++ b/src/libtf/cortex-m4/README @@ -1,5 +1,5 @@ You must link this library to your application with arm-none-eabi-gcc and have implemented putchar(). -C Compile Flags: -DGEMMLOWP_ALLOW_SLOW_SCALAR_FALLBACK -DNDEBUG -DTF_LITE_MCU_DEBUG_LOG -DTF_LITE_STATIC_MEMORY -MMD -O3 -Wall -Werror -Warray-bounds -Wextra -Wvla -Wno-missing-field-initializers -Wno-strict-aliasing -Wno-type-limits -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-unused-variable -fdata-sections -ffunction-sections -fmessage-length=0 -fomit-frame-pointer -funsigned-char -fshort-enums -fno-delete-null-pointer-checks -fno-exceptions -fno-unwind-tables -mabi=aapcs-linux -mfloat-abi=hard -mthumb -nostartfiles -nostdlib -std=c11 -DARM_MATH_CM4 -mcpu=cortex-m4 -mfpu=fpv4-sp-d16 -mtune=cortex-m4 +C Compile Flags: -DGEMMLOWP_ALLOW_SLOW_SCALAR_FALLBACK -DNDEBUG -DTF_LITE_MCU_DEBUG_LOG -DTF_LITE_STATIC_MEMORY -MMD -O3 -Wall -Werror -Warray-bounds -Wextra -Wvla -Wno-missing-field-initializers -Wno-strict-aliasing -Wno-type-limits -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-unused-variable -Wno-unused-value -Wno-error=sign-compare -Wno-error=nonnull -Wno-error=unused-value -fdata-sections -ffunction-sections -fmessage-length=0 -fomit-frame-pointer -funsigned-char -fshort-enums -fno-delete-null-pointer-checks -fno-exceptions -fno-unwind-tables -mabi=aapcs-linux -mfloat-abi=hard -mthumb -nostartfiles -nostdlib -std=c11 -DARM_MATH_CM4 -mcpu=cortex-m4 -mfpu=fpv4-sp-d16 -mtune=cortex-m4 -CXX Compile Flags: -DGEMMLOWP_ALLOW_SLOW_SCALAR_FALLBACK -DNDEBUG -DTF_LITE_MCU_DEBUG_LOG -DTF_LITE_STATIC_MEMORY -MMD -O3 -Wall -Werror -Warray-bounds -Wextra -Wvla -Wno-missing-field-initializers -Wno-strict-aliasing -Wno-type-limits -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-unused-variable -fdata-sections -ffunction-sections -fmessage-length=0 -fomit-frame-pointer -funsigned-char -fshort-enums -fno-delete-null-pointer-checks -fno-exceptions -fno-unwind-tables -mabi=aapcs-linux -mfloat-abi=hard -mthumb -nostartfiles -nostdlib -std=c++11 -fno-rtti -fno-threadsafe-statics -fno-use-cxa-atexit -DARM_MATH_CM4 -mcpu=cortex-m4 -mfpu=fpv4-sp-d16 -mtune=cortex-m4 +CXX Compile Flags: -DGEMMLOWP_ALLOW_SLOW_SCALAR_FALLBACK -DNDEBUG -DTF_LITE_MCU_DEBUG_LOG -DTF_LITE_STATIC_MEMORY -MMD -O3 -Wall -Werror -Warray-bounds -Wextra -Wvla -Wno-missing-field-initializers -Wno-strict-aliasing -Wno-type-limits -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-unused-variable -Wno-unused-value -Wno-error=sign-compare -Wno-error=nonnull -Wno-error=unused-value -fdata-sections -ffunction-sections -fmessage-length=0 -fomit-frame-pointer -funsigned-char -fshort-enums -fno-delete-null-pointer-checks -fno-exceptions -fno-unwind-tables -mabi=aapcs-linux -mfloat-abi=hard -mthumb -nostartfiles -nostdlib -std=c++11 -fno-rtti -fno-threadsafe-statics -fno-use-cxa-atexit -DARM_MATH_CM4 -mcpu=cortex-m4 -mfpu=fpv4-sp-d16 -mtune=cortex-m4 diff --git a/src/libtf/cortex-m4/libtf.a b/src/libtf/cortex-m4/libtf.a index 3b9363d95..86c8ad8db 100644 Binary files a/src/libtf/cortex-m4/libtf.a and b/src/libtf/cortex-m4/libtf.a differ diff --git a/src/libtf/cortex-m4/libtf.h b/src/libtf/cortex-m4/libtf.h index e4b2cd2e9..dac2e4651 100644 --- a/src/libtf/cortex-m4/libtf.h +++ b/src/libtf/cortex-m4/libtf.h @@ -62,6 +62,20 @@ int libtf_invoke(const unsigned char *model_data, // TensorFlow Lite binary mode libtf_output_data_callback_t output_callback, // Callback to use the model output data byte array. void *output_callback_data); // User data structure passed to output callback. +// Returns 0 on success and 1 on failure. +// Errors are printed to stdout. +int libtf_initialize_micro_features(); + +// Returns 0 on success and 1 on failure. +// Errors are printed to stdout. +// Converts audio sample data into a more compact form that's +// appropriate for feeding into a neural network. +int libtf_generate_micro_features(const int16_t* input, // Audio samples + int input_size, // Audio samples size + int output_size, // Slice size + int8_t* output, // Slice data + size_t* num_samples_read); // Number of samples used. + #ifdef __cplusplus } #endif diff --git a/src/libtf/cortex-m4/libtf_person_detect_model_data.a b/src/libtf/cortex-m4/libtf_person_detect_model_data.a index 33f44feec..57249b458 100644 Binary files a/src/libtf/cortex-m4/libtf_person_detect_model_data.a and b/src/libtf/cortex-m4/libtf_person_detect_model_data.a differ diff --git a/src/libtf/cortex-m7/README b/src/libtf/cortex-m7/README index c531c80b7..966e9090d 100644 --- a/src/libtf/cortex-m7/README +++ b/src/libtf/cortex-m7/README @@ -1,5 +1,5 @@ You must link this library to your application with arm-none-eabi-gcc and have implemented putchar(). -C Compile Flags: -DGEMMLOWP_ALLOW_SLOW_SCALAR_FALLBACK -DNDEBUG -DTF_LITE_MCU_DEBUG_LOG -DTF_LITE_STATIC_MEMORY -MMD -O3 -Wall -Werror -Warray-bounds -Wextra -Wvla -Wno-missing-field-initializers -Wno-strict-aliasing -Wno-type-limits -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-unused-variable -fdata-sections -ffunction-sections -fmessage-length=0 -fomit-frame-pointer -funsigned-char -fshort-enums -fno-delete-null-pointer-checks -fno-exceptions -fno-unwind-tables -mabi=aapcs-linux -mfloat-abi=hard -mthumb -nostartfiles -nostdlib -std=c11 -DARM_MATH_CM7 -mcpu=cortex-m7 -mfpu=fpv5-sp-d16 -mtune=cortex-m7 +C Compile Flags: -DGEMMLOWP_ALLOW_SLOW_SCALAR_FALLBACK -DNDEBUG -DTF_LITE_MCU_DEBUG_LOG -DTF_LITE_STATIC_MEMORY -MMD -O3 -Wall -Werror -Warray-bounds -Wextra -Wvla -Wno-missing-field-initializers -Wno-strict-aliasing -Wno-type-limits -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-unused-variable -Wno-unused-value -Wno-error=sign-compare -Wno-error=nonnull -Wno-error=unused-value -fdata-sections -ffunction-sections -fmessage-length=0 -fomit-frame-pointer -funsigned-char -fshort-enums -fno-delete-null-pointer-checks -fno-exceptions -fno-unwind-tables -mabi=aapcs-linux -mfloat-abi=hard -mthumb -nostartfiles -nostdlib -std=c11 -DARM_MATH_CM7 -mcpu=cortex-m7 -mfpu=fpv5-sp-d16 -mtune=cortex-m7 -CXX Compile Flags: -DGEMMLOWP_ALLOW_SLOW_SCALAR_FALLBACK -DNDEBUG -DTF_LITE_MCU_DEBUG_LOG -DTF_LITE_STATIC_MEMORY -MMD -O3 -Wall -Werror -Warray-bounds -Wextra -Wvla -Wno-missing-field-initializers -Wno-strict-aliasing -Wno-type-limits -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-unused-variable -fdata-sections -ffunction-sections -fmessage-length=0 -fomit-frame-pointer -funsigned-char -fshort-enums -fno-delete-null-pointer-checks -fno-exceptions -fno-unwind-tables -mabi=aapcs-linux -mfloat-abi=hard -mthumb -nostartfiles -nostdlib -std=c++11 -fno-rtti -fno-threadsafe-statics -fno-use-cxa-atexit -DARM_MATH_CM7 -mcpu=cortex-m7 -mfpu=fpv5-sp-d16 -mtune=cortex-m7 +CXX Compile Flags: -DGEMMLOWP_ALLOW_SLOW_SCALAR_FALLBACK -DNDEBUG -DTF_LITE_MCU_DEBUG_LOG -DTF_LITE_STATIC_MEMORY -MMD -O3 -Wall -Werror -Warray-bounds -Wextra -Wvla -Wno-missing-field-initializers -Wno-strict-aliasing -Wno-type-limits -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-unused-variable -Wno-unused-value -Wno-error=sign-compare -Wno-error=nonnull -Wno-error=unused-value -fdata-sections -ffunction-sections -fmessage-length=0 -fomit-frame-pointer -funsigned-char -fshort-enums -fno-delete-null-pointer-checks -fno-exceptions -fno-unwind-tables -mabi=aapcs-linux -mfloat-abi=hard -mthumb -nostartfiles -nostdlib -std=c++11 -fno-rtti -fno-threadsafe-statics -fno-use-cxa-atexit -DARM_MATH_CM7 -mcpu=cortex-m7 -mfpu=fpv5-sp-d16 -mtune=cortex-m7 diff --git a/src/libtf/cortex-m7/libtf.a b/src/libtf/cortex-m7/libtf.a index 4c836e2b6..a25f8bc58 100644 Binary files a/src/libtf/cortex-m7/libtf.a and b/src/libtf/cortex-m7/libtf.a differ diff --git a/src/libtf/cortex-m7/libtf.h b/src/libtf/cortex-m7/libtf.h index e4b2cd2e9..dac2e4651 100644 --- a/src/libtf/cortex-m7/libtf.h +++ b/src/libtf/cortex-m7/libtf.h @@ -62,6 +62,20 @@ int libtf_invoke(const unsigned char *model_data, // TensorFlow Lite binary mode libtf_output_data_callback_t output_callback, // Callback to use the model output data byte array. void *output_callback_data); // User data structure passed to output callback. +// Returns 0 on success and 1 on failure. +// Errors are printed to stdout. +int libtf_initialize_micro_features(); + +// Returns 0 on success and 1 on failure. +// Errors are printed to stdout. +// Converts audio sample data into a more compact form that's +// appropriate for feeding into a neural network. +int libtf_generate_micro_features(const int16_t* input, // Audio samples + int input_size, // Audio samples size + int output_size, // Slice size + int8_t* output, // Slice data + size_t* num_samples_read); // Number of samples used. + #ifdef __cplusplus } #endif diff --git a/src/libtf/cortex-m7/libtf_person_detect_model_data.a b/src/libtf/cortex-m7/libtf_person_detect_model_data.a index d0974d52f..edf87ad2d 100644 Binary files a/src/libtf/cortex-m7/libtf_person_detect_model_data.a and b/src/libtf/cortex-m7/libtf_person_detect_model_data.a differ