libcm is a C development framework with an emphasis on audio signal processing applications.
選択できるのは25トピックまでです。 トピックは、先頭が英数字で、英数字とダッシュ('-')を使用した35文字以内のものにしてください。

cmAudDsp.h 1.4KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859
  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. kAfpDevSysFailAdRC,
  26. kNetSysFailAdRC
  27. };
  28. typedef cmRC_t cmAdRC_t;
  29. typedef cmHandle_t cmAdH_t;
  30. extern cmAdH_t cmAdNullHandle;
  31. // Create a audio dsp engine and send device and program information to the
  32. // host application.
  33. // cbPtr provides a function used by cmAudDsp to send messages to the client.
  34. cmAdRC_t cmAudDspAlloc( cmCtx_t* ctx, cmAdH_t* hp, cmMsgSendFuncPtr_t cbPtr, void* cbDataPtr );
  35. cmAdRC_t cmAudDspFree( cmAdH_t* hp );
  36. // Send the setup to the UI (device list,system cfg list, DSP programs)
  37. cmAdRC_t cmAudDspSendSetup( cmAdH_t h );
  38. bool cmAudDspIsValid( cmAdH_t h );
  39. // This function provides the primary interface for communication from the
  40. // client program to the aud_dsp system.
  41. cmAdRC_t cmAudDspReceiveClientMsg( cmAdH_t h, unsigned msgBytecnt, const void* msg );
  42. #ifdef __cplusplus
  43. }
  44. #endif
  45. #endif