libaudions.h 1.0 KB

123456789101112131415161718192021222324252627282930313233343536
  1. #ifndef _LIB_AUDIO_NS_H_
  2. #define _LIB_AUDIO_NS_H_
  3. #include <stdio.h>
  4. #include "iaudionsinterface.h"
  5. #include "noise_suppression.h"
  6. class AudioNsImpl : public IAudioNs
  7. {
  8. public:
  9. AudioNsImpl(audions_callback_t* pCallback);
  10. ~AudioNsImpl();
  11. virtual int SetNsParams(uint32_t uSampleRate, uint32_t uAudioCapturePeroid, int iMode);
  12. virtual int NsProcess(char* pDst, uint32_t uDstLen, char* pSrc, uint32_t uSrcLen);
  13. virtual void ReleaseObj();
  14. private:
  15. int NsProcess8kAudioSampleRate(char* pDst, uint32_t uDstLen, char* pSrc, uint32_t uSrcLen);
  16. int NsProcess16kAudioSampleRate(char* pDst, uint32_t uDstLen, char* pSrc, uint32_t uSrcLen);
  17. int NsProcess32kAudioSampleRate(char* pDst, uint32_t uDstLen, char* pSrc, uint32_t uSrcLen);
  18. int NsProcess48kAudioSampleRate(char* pDst, uint32_t uDstLen, char* pSrc, uint32_t uSrcLen);
  19. void NsLog(const char* fmt, ...);
  20. private:
  21. NsHandle *m_NsHandle;
  22. uint32_t m_audio_sample_rate; //单位HZ
  23. uint32_t m_audio_capture_peroid; //单位ms
  24. int m_ns_policy;
  25. audions_callback_t m_nscallback;
  26. };
  27. #endif