audio_webrtc.h 2.0 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647
  1. /* Copyright (C) 2012 Doubango Telecom <http://www.doubango.org>
  2. *
  3. * This file is part of Open Source Doubango Framework.
  4. *
  5. * DOUBANGO is free software: you can redistribute it and/or modify
  6. * it under the terms of the GNU General Public License as published by
  7. * the Free Software Foundation, either version 3 of the License, or
  8. * (at your option) any later version.
  9. *
  10. * DOUBANGO is distributed in the hope that it will be useful,
  11. * but WITHOUT ANY WARRANTY; without even the implied warranty of
  12. * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
  13. * GNU General Public License for more details.
  14. *
  15. * You should have received a copy of the GNU General Public License
  16. * along with DOUBANGO.
  17. */
  18. #ifndef DOUBANGO_AUDIO_WEBRTC_H
  19. #define DOUBANGO_AUDIO_WEBRTC_H
  20. #include "audio_webrtc_config.h"
  21. #include "tsk_plugin.h"
  22. DOUBANGO_AUDIO_WEBRTC_BEGIN_DECLS
  23. typedef void audio_webrtc_instance_handle_t;
  24. DOUBANGO_AUDIO_WEBRTC_API int __plugin_get_def_count();
  25. DOUBANGO_AUDIO_WEBRTC_API tsk_plugin_def_type_t __plugin_get_def_type_at(int index);
  26. DOUBANGO_AUDIO_WEBRTC_API tsk_plugin_def_media_type_t __plugin_get_def_media_type_at(int index);
  27. DOUBANGO_AUDIO_WEBRTC_API tsk_plugin_def_ptr_const_t __plugin_get_def_at(int index);
  28. audio_webrtc_instance_handle_t* audio_webrtc_instance_create(uint64_t session_id);
  29. int audio_webrtc_instance_prepare_consumer(audio_webrtc_instance_handle_t* self, struct tmedia_consumer_s** consumer);
  30. int audio_webrtc_instance_prepare_producer(audio_webrtc_instance_handle_t* _self, struct tmedia_producer_s** producer);
  31. int audio_webrtc_instance_start_consumer(audio_webrtc_instance_handle_t* self);
  32. int audio_webrtc_instance_start_producer(audio_webrtc_instance_handle_t* self);
  33. int audio_webrtc_instance_stop_consumer(audio_webrtc_instance_handle_t* self);
  34. int audio_webrtc_instance_stop_producer(audio_webrtc_instance_handle_t* self);
  35. int audio_webrtc_instance_destroy(audio_webrtc_instance_handle_t** self);
  36. DOUBANGO_AUDIO_WEBRTC_END_DECLS
  37. #endif /* DOUBANGO_AUDIO_WEBRTC_H */