audiocommon.c 1.2 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768
  1. #include "precompile.h"
  2. #include "audiocommon.h"
  3. #include "audiolog.h"
  4. #include "codec/codecmgr.h"
  5. #include "codec/g711codec.h"
  6. //#include "codec\bvcodec.h"
  7. #include "codec/gsmcodec.h"
  8. #include "codec/adpcmcodec.h"
  9. #ifdef _WIN32
  10. #include <portaudio.h>
  11. #include "codec/g729acodec.h"
  12. #include <common/pa_debugprint.h>
  13. #endif // _WIN32
  14. static int g_initialized = 0;
  15. static void __PaUtilLogCallback (const char *log)
  16. {
  17. audio_log(AUDIO_LOG_LEVEL_INFO, log);
  18. }
  19. apr_status_t audioframework_init()
  20. {
  21. if (g_initialized ++ == 0) {
  22. apr_initialize();
  23. #ifdef _WIN32
  24. Pa_Initialize();
  25. PaUtil_SetDebugPrintFunction(&__PaUtilLogCallback);
  26. #endif // _WIN32
  27. codec_factory_factory_init();
  28. g711_codec_factory_init();
  29. //bv_codec_factory_init();
  30. gsm_codec_factory_init();
  31. adpcm_codec_factory_init();
  32. #ifdef _WIN32
  33. g729a_codec_factory_init();
  34. #endif // _WIN32
  35. }
  36. return APR_SUCCESS;
  37. }
  38. apr_status_t audioframework_term()
  39. {
  40. --g_initialized;
  41. if (g_initialized == 0) {
  42. #ifdef _WIN32
  43. Pa_Terminate();
  44. g729a_codec_factory_term();
  45. #endif // _WIN32
  46. adpcm_codec_factory_term();
  47. gsm_codec_factory_term();
  48. //bv_codec_factory_term();
  49. g711_codec_factory_term();
  50. apr_terminate();
  51. }
  52. return APR_SUCCESS;
  53. }