Vedvyas Rauniyar
2017-07-12 10:45:04 UTC
Hello ,
I am working on PJSIP. Audio and video call is working fine in foreground
but the issue is, When the app is in background, I am able to make call in
background but no video is displaying. Any help would be highly appreciated.
When I make a call and pick the call from background, I am getting the
errors -
*15:48:19.250 pjsua_vid.c ......Creating video window: type=stream,
cap_id=-1, rend_id=0*
*15:48:19.250 vid_port.c .......Opening device OpenGL renderer
[OpenGL] for render: format=I420, size=656x656 @22:1 fps*
*15:48:19.251 ios_opengl_dev .......Failed to initialize iOS OpenGL
because we are in background*
*15:48:19.251 vid_port.c .......Closing OpenGL renderer..*
*15:48:19.319 pjsua_vid.c .......Window 0: destroying..*
*15:48:19.319 pjsua_media.c ....pjsua_vid_channel_update() failed for
call_id 0 media 1: video subsystem not initialized (PJMEDIA_EVID_INIT)*
*15:48:19.319 pjsua_media.c ....Error updating media call00:1: video
subsystem not initialized (PJMEDIA_EVID_INIT)*
*15:48:19.319 pjsua_app.c ...Call 0 media 0 [type=audio], status is
Active*
*15:48:19.319 pjsua_aud.c ...Conf connect: 3 --> 0*
*15:48:19.319 pjsua_app.c ....Turning sound device ON*
*15:48:19.319 conference.c ....Port 3 (sip:***@192.168.1.7
<sip%***@192.168.1.7>) transmitting to port 0 (Master/sound)*
*15:48:19.319 pjsua_aud.c ...Conf connect: 0 --> 3*
*15:48:19.319 conference.c ....Port 0 (Master/sound) transmitting to
port 3 (sip:***@192.168.1.7 <sip%***@192.168.1.7>)*
*15:48:19.319 pjsua_app.c ...Call 0 media 1 [type=video], status is
Error*
*15:48:19.319 pjsua_app.c ...Just rejected incoming video offer on call
0, use "vid call enable 1" or "vid call add" to enable video!*
*15:48:19.319 pjsua_core.c ....TX 1321 bytes Response msg
200/INVITE/cseq=20 (tdta0x10494b000) to UDP 91.121.209.194:5060
<http://91.121.209.194:5060>:*
Code Snippet is -
#define KEEP_ALIVE_INTERVAL 600
- (void)keepAlive {
static pj_thread_desc a_thread_desc;
static pj_thread_t *a_thread;
int i;
if (!pj_thread_is_registered()) {
pj_thread_register("ipjsua", a_thread_desc, &a_thread);
}
/* Since iOS requires that the minimum keep alive interval is 600s,
* application needs to make sure that the account's registration
* timeout is long enough.
*/
for (i = 0; i < (int)pjsua_acc_get_count(); ++i) {
if (pjsua_acc_is_valid(i)) {
pjsua_acc_set_registration(i, PJ_TRUE);
}
}
}
I am working on PJSIP. Audio and video call is working fine in foreground
but the issue is, When the app is in background, I am able to make call in
background but no video is displaying. Any help would be highly appreciated.
When I make a call and pick the call from background, I am getting the
errors -
*15:48:19.250 pjsua_vid.c ......Creating video window: type=stream,
cap_id=-1, rend_id=0*
*15:48:19.250 vid_port.c .......Opening device OpenGL renderer
[OpenGL] for render: format=I420, size=656x656 @22:1 fps*
*15:48:19.251 ios_opengl_dev .......Failed to initialize iOS OpenGL
because we are in background*
*15:48:19.251 vid_port.c .......Closing OpenGL renderer..*
*15:48:19.319 pjsua_vid.c .......Window 0: destroying..*
*15:48:19.319 pjsua_media.c ....pjsua_vid_channel_update() failed for
call_id 0 media 1: video subsystem not initialized (PJMEDIA_EVID_INIT)*
*15:48:19.319 pjsua_media.c ....Error updating media call00:1: video
subsystem not initialized (PJMEDIA_EVID_INIT)*
*15:48:19.319 pjsua_app.c ...Call 0 media 0 [type=audio], status is
Active*
*15:48:19.319 pjsua_aud.c ...Conf connect: 3 --> 0*
*15:48:19.319 pjsua_app.c ....Turning sound device ON*
*15:48:19.319 conference.c ....Port 3 (sip:***@192.168.1.7
<sip%***@192.168.1.7>) transmitting to port 0 (Master/sound)*
*15:48:19.319 pjsua_aud.c ...Conf connect: 0 --> 3*
*15:48:19.319 conference.c ....Port 0 (Master/sound) transmitting to
port 3 (sip:***@192.168.1.7 <sip%***@192.168.1.7>)*
*15:48:19.319 pjsua_app.c ...Call 0 media 1 [type=video], status is
Error*
*15:48:19.319 pjsua_app.c ...Just rejected incoming video offer on call
0, use "vid call enable 1" or "vid call add" to enable video!*
*15:48:19.319 pjsua_core.c ....TX 1321 bytes Response msg
200/INVITE/cseq=20 (tdta0x10494b000) to UDP 91.121.209.194:5060
<http://91.121.209.194:5060>:*
Code Snippet is -
#define KEEP_ALIVE_INTERVAL 600
- (void)keepAlive {
static pj_thread_desc a_thread_desc;
static pj_thread_t *a_thread;
int i;
if (!pj_thread_is_registered()) {
pj_thread_register("ipjsua", a_thread_desc, &a_thread);
}
/* Since iOS requires that the minimum keep alive interval is 600s,
* application needs to make sure that the account's registration
* timeout is long enough.
*/
for (i = 0; i < (int)pjsua_acc_get_count(); ++i) {
if (pjsua_acc_is_valid(i)) {
pjsua_acc_set_registration(i, PJ_TRUE);
}
}
}