Using pjsua for android

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi,

Just some ideas, (I never had this issue) but ... :

It could be something with unix rights : on android, applications get
permissions from their manifest and when android os creates the user of the
sandbox for the app it adds this users to relevant groups.
Because could also be something with the media server of android os that
doesn't allow to use audio for not real android apps. So rather than
command line launch you should probably try to use the sample application
apk and install it properly. With "adb install your_apk_name.apk" .

Another possible root cause is that the emulator doesn't always play well
with the audio layer. First it's absolutely not performant, and second
sometimes it doesn't detects at all the host audio hardware. I would advise
you to use a real device if you have one. It's way better to develop for
the call / audio purpose. (However emulator is a solution to develop for
the user interface part).

Best regards.

2012/7/25 Monty Python <pythonexperiment at gmail.com>

> I've also obtained the strace of the pjsua process, hoping that it
> could expound my problem. Thanks again.
> >
>
> stat64("/vendor/lib/libstagefright_amrnb_common.so", 0xbea8f138) = -1
> ENOENT (No such file or directory)
> stat64("/system/lib/libstagefright_amrnb_common.so",
> {st_mode=S_IFREG|0644, st_size=50760, ...}) = 0
> open("/system/lib/libstagefright_amrnb_common.so", O_RDONLY|O_LARGEFILE) =
> 3
> lseek(3, 0, SEEK_SET)                   = 0
> read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0(\0\1\0\0\0\0\0\0\000"...,
> 4096) = 4096
> lseek(3, -8, SEEK_END)                  = 50752
> read(3, "\1\0\0\0\0\0\0\0", 8)          = 8
> mmap2(NULL, 53248, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_ANONYMOUS, -1,
> 0) = 0x40b0e000
> mmap2(0x40b0e000, 46908, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED,
> 3, 0) = 0x40b0e000
> mprotect(0x40b0e000, 49152, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
> mmap2(0x40b1a000, 444, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED, 3,
> 0xc) = 0x40b1a000
> close(3)                                = 0
> mprotect(0x40b0e000, 49152, PROT_READ|PROT_EXEC) = 0
> stat64("/vendor/lib/libstagefright_enc_common.so", 0xbea8f138) = -1
> ENOENT (No such file or directory)
> stat64("/system/lib/libstagefright_enc_common.so",
> {st_mode=S_IFREG|0644, st_size=5420, ...}) = 0
> open("/system/lib/libstagefright_enc_common.so", O_RDONLY|O_LARGEFILE) = 3
> lseek(3, 0, SEEK_SET)                   = 0
> read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0(\0\1\0\0\0\0\0\0\000"...,
> 4096) = 4096
> lseek(3, -8, SEEK_END)                  = 5412
> read(3, "\1\0\0\0\0\0\0\0", 8)          = 8
> mmap2(NULL, 8192, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_ANONYMOUS, -1,
> 0) = 0x40b1b000
> mmap2(0x40b1b000, 1700, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED, 3,
> 0) = 0x40b1b000
> mprotect(0x40b1b000, 4096, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
> mmap2(0x40b1c000, 260, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED, 3,
> 0x1) = 0x40b1c000
> close(3)                                = 0
> mprotect(0x40b1b000, 4096, PROT_READ|PROT_EXEC) = 0
> stat64("/vendor/lib/libstagefright_avc_common.so", 0xbea8f138) = -1
> ENOENT (No such file or directory)
> stat64("/system/lib/libstagefright_avc_common.so",
> {st_mode=S_IFREG|0644, st_size=21848, ...}) = 0
> open("/system/lib/libstagefright_avc_common.so", O_RDONLY|O_LARGEFILE) = 3
> lseek(3, 0, SEEK_SET)                   = 0
> read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0(\0\1\0\0\0\0\0\0\000"...,
> 4096) = 4096
> lseek(3, -8, SEEK_END)                  = 21840
> read(3, "\1\0\0\0\0\0\0\0", 8)          = 8
> mmap2(NULL, 24576, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_ANONYMOUS, -1,
> 0) = 0x40b1d000
> mmap2(0x40b1d000, 19024, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED,
> 3, 0) = 0x40b1d000
> mprotect(0x40b1d000, 20480, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
> mmap2(0x40b22000, 256, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED, 3,
> 0x5) = 0x40b22000
> close(3)                                = 0
> mprotect(0x40b1d000, 20480, PROT_READ|PROT_EXEC) = 0
> mprotect(0x40574000, 1159168, PROT_READ|PROT_EXEC) = 0
> mprotect(0x40106000, 4096, PROT_READ|PROT_WRITE) = 0
> mprotect(0x40106000, 4096, PROT_READ)   = 0
> mprotect(0x40106000, 4096, PROT_READ|PROT_WRITE) = 0
> mprotect(0x40106000, 4096, PROT_READ)   = 0
> mprotect(0x40106000, 4096, PROT_READ|PROT_WRITE) = 0
> mprotect(0x40106000, 4096, PROT_READ)   = 0
> mprotect(0x40106000, 4096, PROT_READ|PROT_WRITE) = 0
> mprotect(0x40106000, 4096, PROT_READ)   = 0
> mprotect(0x40106000, 4096, PROT_READ|PROT_WRITE) = 0
> mprotect(0x40106000, 4096, PROT_READ)   = 0
> mprotect(0x40106000, 4096, PROT_READ|PROT_WRITE) = 0
> mprotect(0x40106000, 4096, PROT_READ)   = 0
> mprotect(0x40071000, 155648, PROT_READ|PROT_EXEC) = 0
> mprotect(0x40106000, 4096, PROT_READ|PROT_WRITE) = 0
> mprotect(0x40106000, 4096, PROT_READ)   = 0
> mprotect(0x40106000, 4096, PROT_READ|PROT_WRITE) = 0
> mprotect(0x40106000, 4096, PROT_READ)   = 0
> mprotect(0x4006e000, 8192, PROT_READ|PROT_EXEC) = 0
> mprotect(0x8000, 1933312, PROT_READ|PROT_EXEC) = 0
> sigaction(49264, {0xb00144c4, [], SA_RESTART}, {0xb00144c4, [],
> SA_RESTART}, 0) = -1 EINVAL (Invalid argument)
> --- SIGSEGV (Segmentation fault) @ 0 (f0) ---
> open("/dev/log/main", O_WRONLY|O_LARGEFILE) = 3
> writev(3, [{"\7", 1}, {"libc\0", 5}, {"Fatal signal 11 (SIGSEGV) at
> 0x0"..., 49}], 3) = 55
> SYS_224(0x37, 0xbea8f850, 0x3, 0x38)    = 465
> socket(PF_UNIX, SOCK_STREAM, 0)         = 4
> connect(4, {sa_family=AF_UNIX, path=@android:debuggerd}, 20) = 0
> write(4, "?\1\0\0", 4)                  = 4
> read(4, 0xbea8f888, 1)                  = ? ERESTARTSYS (To be restarted)
> --- SIGCONT (Continue) @ 0 (0) ---
> read(4, "?", 1)                         = 1
> close(4)                                = 0
> sigaction(SIGSEGV, {SIG_DFL}, {0xb0005b29, [], SA_RESTART|SA_SIGINFO}, 0)
> = 0
> rt_sigreturn(0)                         = -1 EPERM (Operation not
> permitted)
> --- SIGSEGV (Segmentation fault) @ 0 (f0) ---
> +++ killed by SIGSEGV +++
>
> On Tue, Jul 24, 2012 at 8:53 PM, Monty Python
> <pythonexperiment at gmail.com> wrote:
> > Greetings to everyone!
> >
> > I'm trying to compile pjsua using the following branch:
> > http://svn.pjsip.org/repos/pjproject/branches/projects/android/. I've
> > tried to do a push (adb push pjsua /data/local/) to my android-sdk
> > emulator but, when I've tried to execute it via adb shell, the android
> > logcat gave me the following SIGFAULT error: where am I wrong? Thanks
> > in advance.
> >
> > F/libc    (  464): Fatal signal 11 (SIGSEGV) at 0x000000f0 (code=1)
> > I/DEBUG   (   33): *** *** *** *** *** *** *** *** *** *** *** *** ***
> > *** *** ***
> > I/DEBUG   (   33): Build fingerprint:
> > 'generic/sdk/generic:4.0.3/MR1/237985:eng/test-keys'
> > I/DEBUG   (   33): pid: 464, tid: 464  >>>
> > ./pjsua-arm-unknown-linux-androideabi <<<
> > I/DEBUG   (   33): signal 11 (SIGSEGV), code 1 (SEGV_MAPERR), fault
> > addr 000000f0
> > I/DEBUG   (   33):  r0 ffffffff  r1 beef7c30  r2 beef7c30  r3 ffffffff
> > I/DEBUG   (   33):  r4 00000000  r5 00000000  r6 00000000  r7 00000000
> > I/DEBUG   (   33):  r8 00000000  r9 00000000  10 00000000  fp 00000000
> > I/DEBUG   (   33):  ip 4003c4b9  sp beef7c60  lr 4003c4b1  pc b000469a
> >  cpsr 00000030
> > I/DEBUG   (   33):  d0  00000000bd6bc8e3  d1  0000000000000000
> > I/DEBUG   (   33):  d2  0000000000000000  d3  0000000000000000
> > I/DEBUG   (   33):  d4  0000000000000000  d5  41c8f0a46e800000
> > I/DEBUG   (   33):  d6  3f50624dd2f1a9fc  d7  c18af9670cce266f
> > I/DEBUG   (   33):  d8  0000000000000000  d9  0000000000000000
> > I/DEBUG   (   33):  d10 0000000000000000  d11 0000000000000000
> > I/DEBUG   (   33):  d12 0000000000000000  d13 0000000000000000
> > I/DEBUG   (   33):  d14 0000000000000000  d15 0000000000000000
> > I/DEBUG   (   33):  scr 00000010
> > I/DEBUG   (   33):
> > I/DEBUG   (   33):          #00  pc b000469a  /system/bin/linker
> > I/DEBUG   (   33):          #01  pc 000264ac  /system/lib/libc.so
> (__set_errno)
> > I/DEBUG   (   33):
> > I/DEBUG   (   33): code around pc:
> > I/DEBUG   (   33): b0004678 95004840 44784a40 4d414b40 447b447a
> > @H.. at JxD@KAMzD{D
> > I/DEBUG   (   33): b0004688 682d447d f44f9103 95017140 f0009402
> > }D-h..O. at q......
> > I/DEBUG   (   33): b0004698 f8d4ff67 b10330f0 f8d44798 b17000e0
> > g....0...G....p.
> > I/DEBUG   (   33): b00046a8 10e4f8d4 f7ff2200 2000f9b5 f8d4e007
> > ....."..... ....
> > I/DEBUG   (   33): b00046b8 f04f20a8 f04230ff f8c40102 b00710a8  .
> > O..0B.........
> > I/DEBUG   (   33):
> > I/DEBUG   (   33): code around lr:
> > I/DEBUG   (   33): 4003c490 f240b507 9300736c 33fff04f 466b9301
> > .. at .ls..O..3..kF
> > I/DEBUG   (   33): 4003c4a0 fd80f7ff bf00bd0e 4604b510 fe90f7ec
> > ...........F....
> > I/DEBUG   (   33): 4003c4b0 f04f6004 bd1030ff 0ffff110 db02b510
> > .`O..0..........
> > I/DEBUG   (   33): 4003c4c0 f7ff4240 bd10fff1 48214603 4478b5f0
> > @B.......F!H..xD
> > I/DEBUG   (   33): 4003c4d0 b0976800 68022150 4620ac01 92154e1d
> > .h..P!.h.. F.N..
> > I/DEBUG   (   33):
> > I/DEBUG   (   33): stack:
> > I/DEBUG   (   33):     beef7c20  00000000
> > I/DEBUG   (   33):     beef7c24  4003c4c7  /system/lib/libc.so
> > I/DEBUG   (   33):     beef7c28  00000000
> > I/DEBUG   (   33):     beef7c2c  4002f477  /system/lib/libc.so
> > I/DEBUG   (   33):     beef7c30  b00144c4
> > I/DEBUG   (   33):     beef7c34  00000000
> > I/DEBUG   (   33):     beef7c38  10000000
> > I/DEBUG   (   33):     beef7c3c  00000000
> > I/DEBUG   (   33):     beef7c40  00000000
> > I/DEBUG   (   33):     beef7c44  4002f49b  /system/lib/libc.so
> > I/DEBUG   (   33):     beef7c48  00000000
> > I/DEBUG   (   33):     beef7c4c  0000c090
> > /data/local/pjsua-arm-unknown-linux-androideabi
> > I/DEBUG   (   33):     beef7c50  b00144c4
> > I/DEBUG   (   33):     beef7c54  0000c070
> > /data/local/pjsua-arm-unknown-linux-androideabi
> > I/DEBUG   (   33):     beef7c58  df0027ad
> > I/DEBUG   (   33):     beef7c5c  00000000
> > I/DEBUG   (   33): #01 beef7c60  00000001
> > I/DEBUG   (   33):     beef7c64  beef7d47  [stack]
> > I/DEBUG   (   33):     beef7c68  00000000
> > I/DEBUG   (   33):     beef7c6c  beef7d6d  [stack]
> > I/DEBUG   (   33):     beef7c70  beef7d82  [stack]
> > I/DEBUG   (   33):     beef7c74  beef7d92  [stack]
> > I/DEBUG   (   33):     beef7c78  beef7dba  [stack]
> > I/DEBUG   (   33):     beef7c7c  beef7df7  [stack]
> > I/DEBUG   (   33):     beef7c80  beef7e10  [stack]
> > I/DEBUG   (   33):     beef7c84  beef7e2a  [stack]
> > I/DEBUG   (   33):     beef7c88  beef7f55  [stack]
> > I/DEBUG   (   33):     beef7c8c  beef7f68  [stack]
> > I/DEBUG   (   33):     beef7c90  beef7f83  [stack]
> > I/DEBUG   (   33):     beef7c94  beef7fa0  [stack]
> > I/DEBUG   (   33):     beef7c98  beef7fb3  [stack]
> > I/DEBUG   (   33):     beef7c9c  00000000
> > I/DEBUG   (   33):     beef7ca0  00000010
> > I/DEBUG   (   33):     beef7ca4  000030d7
> >
> >    M.P.
>
> _______________________________________________
> Visit our blog: http://blog.pjsip.org
>
> pjsip mailing list
> pjsip at lists.pjsip.org
> http://lists.pjsip.org/mailman/listinfo/pjsip_lists.pjsip.org
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.pjsip.org/pipermail/pjsip_lists.pjsip.org/attachments/20120725/7ddf46b9/attachment-0001.html>


[Index of Archives]     [Asterisk Users]     [Asterisk App Development]     [Linux ARM Kernel]     [Linux ARM]     [Linux Omap]     [Fedora ARM]     [IETF Annouce]     [Security]     [Bugtraq]     [Linux]     [Linux OMAP]     [Linux MIPS]     [Linux API]
  Powered by Linux