libcm is a C development framework with an emphasis on audio signal processing applications.
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

123456789101112131415161718192021222324252627282930313233343536373839
  1. #ifndef cmSaProc_h
  2. #define cmSaProc_h
  3. #ifdef __cplusplus
  4. extern "C" {
  5. #endif
  6. typedef struct
  7. {
  8. cmObj obj;
  9. void* h;
  10. unsigned mode;
  11. double srate;
  12. unsigned procSmpCnt;
  13. bool freeFl;
  14. double azimDegrees;
  15. double elevDegrees;
  16. double dist;
  17. } cmBinEnc;
  18. cmBinEnc* cmBinEncAlloc( cmCtx* c, cmBinEnc* p, double srate, unsigned procSmpCnt );
  19. cmRC_t cmBinEncFree( cmBinEnc** pp );
  20. cmRC_t cmBinEncInit( cmBinEnc* p, double srate, unsigned procSmpCnt );
  21. cmRC_t cmBinEncFinal( cmBinEnc* p );
  22. cmRC_t cmBinEncSetMode(cmBinEnc* p, unsigned mode );
  23. cmRC_t cmBinEncSetLoc( cmBinEnc* p, float azimDegrees, float elevDegrees, float dist );
  24. cmRC_t cmBinEncExec( cmBinEnc* p, const cmSample_t* x, cmSample_t* y0, cmSample_t* y1, unsigned xyN );
  25. #ifdef __cplusplus
  26. }
  27. #endif
  28. #endif