osxAcousticSL Software Library: D:/Documents/Repositories/DMIC/Private/Fw/OSX_Libraries/Workspace/Middlewares/ST/STM32_OSX_AcousticSL_Library/Inc/osx_acoustic_sl.h File Reference

osxAcousticSL

osx_acoustic_sl.h File Reference

This file contains OSX Sound Source Localization library definitions. More...

#include "stdint.h"

Go to the source code of this file.

Data Structures

struct  osx_AcousticSL_Handler_t
 Library handler. It keeps track of the static parameters and it handles the internal state of the algorithm. More...
 
struct  osx_AcousticSL_Config_t
 Library dynamic configuration handler. It contains dynamic parameters. More...
 

Macros

#define OSX_ACOUSTIC_SL_ALGORITHM_XCORR   0x00000001
 
#define OSX_ACOUSTIC_SL_ALGORITHM_GCCP   0x00000002
 
#define OSX_ACOUSTIC_SL_ALGORITHM_BMPH   0x00000004
 
#define OSX_ACOUSTIC_SL_ALGORITHM_ERROR   0x00000001
 
#define OSX_ACOUSTIC_SL_PTR_CHANNELS_ERROR   0x00000002
 
#define OSX_ACOUSTIC_SL_CHANNEL_NUMBER_ERROR   0x00000004
 
#define OSX_ACOUSTIC_SL_SAMPLING_FREQ_ERROR   0x00000008
 
#define OSX_ACOUSTIC_SL_RESOLUTION_ERROR   0x00000010
 
#define OSX_ACOUSTIC_SL_THRESHOLD_ERROR   0x00000020
 
#define OSX_ACOUSTIC_SL_DISTANCE_ERROR   0x00000040
 
#define OSX_ACOUSTIC_SL_NUM_OF_SAMPLES_ERROR   0x00000080
 
#define OSX_ACOUSTIC_SL_LOCK_ERROR   0x80000000
 
#define OSX_ACOUSTIC_SL_NO_AUDIO_DETECTED   -100
 

Functions

uint32_t osx_AcousticSL_getMemorySize (osx_AcousticSL_Handler_t *pHandler)
 Fills the "internal_memory_size" of the pHandler parameter passed as argument with a value representing the right amount of memory needed by the library, depending on the specific static parameters adopted. More...
 
uint32_t osx_AcousticSL_Init (osx_AcousticSL_Handler_t *pHandler)
 Library initialization. More...
 
uint32_t osx_AcousticSL_Data_Input (void *pM1, void *pM2, void *pM3, void *pM4, osx_AcousticSL_Handler_t *pHandler)
 Library data input. More...
 
uint32_t osx_AcousticSL_Process (int32_t *Estimated_Angle, osx_AcousticSL_Handler_t *pHandler)
 Library run function, performs audio analysis when all required data has been collected. More...
 
uint32_t osx_AcousticSL_setConfig (osx_AcousticSL_Handler_t *pHandler, osx_AcousticSL_Config_t *pConfig)
 Library setup function, it sets the values for threshold and resolution. It can be called at runtime to change dynamic parameters. More...
 
uint32_t osx_AcousticSL_getConfig (osx_AcousticSL_Handler_t *pHandler, osx_AcousticSL_Config_t *pConfig)
 Fills the pConfig structure with the actual dynamic parameters as they are currently used inside the library. More...
 
uint32_t osx_AcousticSL_GetLibVersion (char *version)
 To be used to retrieve version information. More...
 
uint32_t osx_AcousticSL_Initialize (void)
 Unlock the library. More...
 

Detailed Description

This file contains OSX Sound Source Localization library definitions.

Author
Central Labs
Version
V1.1.0
Date
01-Sep-2016
Attention

© COPYRIGHT 2015 STMicroelectronics

This code is ST proprietary and confidential. Any use of the code for whatever purpose is subject to specific written permission of STMicroelectronics International N.V.�.

Some of the library code is based on the CMSIS DSP software library by ARM, a suite of common signal processing functions for use on Cortex-M processor based devices. Licencing terms are available in the attached release_note.html file, in the libSoundSourceLoc100 application note, in the next lines of this document and it's available on the web at: http://www.keil.com/pack/doc/CMSIS/DSP/html/index.html

ARM licence note:

Copyright (C) 2009-2012 ARM Limited. All rights reserved.

Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:

  • Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.
  • Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.
  • Neither the name of ARM nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.

THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL COPYRIGHT HOLDERS AND CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.

Generated by   doxygen 1.8.11