终极方法,pjsip发起多方对讲出错Too many objects of the specified type (PJ_ETOOMANY)
http://blog.csdn.net/zhangjm_123/article/details/26727221
——————————————————————————————————————————————————————————————————————————————
Pjsip提供发起多方对讲功能,允许开发者通过setMaxCalls(int calls)方法设定要发起多少方对讲,最多不能超过32方。但也许很多人发现最多只能设置4方对讲,即使设置了10方对讲 setMaxCalls(10)也不起作用。原因是在我们编译pjsip的时候,pjsip官方在提供给我们的pjproject源代码中做了限制(可能 是其它原因吧),其中一个很重要的常量PJSUA_MAX_CALLS被设成了4,即最大呼叫数量为4.
我们只要修改一下pjproject\pjlib\include\pj\config_site_sample.h和pjproject\pjsip\src\pjsua-lib\pjsua_core.c源文件中的几行代码即可。
- #define PJSUA_MAX_CALLS 4
另外,还需要修改一下pjsua_core.c文件:
- cfg->max_calls = ((PJSUA_MAX_CALLS) < 4) ? (PJSUA_MAX_CALLS) : 4;
改完这两个文件之后,保存,重新编译一次pjsip。编译完成之后,setMaxCalls(int calls)方法就起作用了,但int calls传过去的参数不能大于你设定的最大值。
郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。