libcm is a C development framework with an emphasis on audio signal processing applications.
Du kannst nicht mehr als 25 Themen auswählen Themen müssen mit entweder einem Buchstaben oder einer Ziffer beginnen. Sie können Bindestriche („-“) enthalten und bis zu 35 Zeichen lang sein.

cmAudDsp.h 1.4KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758
  1. #ifndef cmAudDsp_h
  2. #define cmAudDsp_h
  3. #ifdef __cplusplus
  4. extern "C" {
  5. #endif
  6. // This API supports a serialized interface to an internal instance of
  7. // cmAudioSys and cmDspSys.
  8. enum
  9. {
  10. kOkAdRC = cmOkRC,
  11. kAudioPortFailAdRC,
  12. kAudioSysFailAdRC,
  13. kMidiSysFailAdRC,
  14. kDspSysFailAdRC,
  15. kFileSysFailAdRC,
  16. kJsonFailAdRC,
  17. kSendMsgFailAdRC,
  18. kInvalidCfgIdxAdRC,
  19. kNoPgmLoadedAdRC,
  20. kInvalidSubSysIdxAdRC,
  21. kUnknownMsgTypeAdRC,
  22. kAggDevSysFailAdRC,
  23. kAggDevCreateFailAdRC,
  24. kNrtDevSysFailAdRC,
  25. kNetSysFailAdRC
  26. };
  27. typedef cmRC_t cmAdRC_t;
  28. typedef cmHandle_t cmAdH_t;
  29. extern cmAdH_t cmAdNullHandle;
  30. // Create a audio dsp engine and send device and program information to the
  31. // host application.
  32. // cbPtr provides a function used by cmAudDsp to send messages to the client.
  33. cmAdRC_t cmAudDspAlloc( cmCtx_t* ctx, cmAdH_t* hp, cmMsgSendFuncPtr_t cbPtr, void* cbDataPtr );
  34. cmAdRC_t cmAudDspFree( cmAdH_t* hp );
  35. // Send the setup to the UI (device list,system cfg list, DSP programs)
  36. cmAdRC_t cmAudDspSendSetup( cmAdH_t h );
  37. bool cmAudDspIsValid( cmAdH_t h );
  38. // This function provides the primary interface for communication from the
  39. // client program to the aud_dsp system.
  40. cmAdRC_t cmAudDspReceiveClientMsg( cmAdH_t h, unsigned msgBytecnt, const void* msg );
  41. #ifdef __cplusplus
  42. }
  43. #endif
  44. #endif