Patch for building pjproject 1.8.10 for Android

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

 



Hi Dan that's a cool contrib.

I'd be interested to put parts of your contrib in csipsimple opensl-es 
driver (I don't know if you read my already existing code).
If so, as I release _*this*_ file under Apache it could mean to change 
your license (or dual license it).
(Just for info the rest of the csipsimple project is under GPL, I just 
do that for the pjsip port so that teluu can reuse my code with their 
dual license).

Besides, I've just a remark on your code :

+ // Set the audio route
+ if (stream->param.output_route == PJMEDIA_AUD_DEV_ROUTE_LOUDSPEAKER)
+ play_type = SL_ANDROID_STREAM_MEDIA;
+ else
+ play_type = SL_ANDROID_STREAM_VOICE;

I think this is not a good idea. In android stream type does not 
(normally) have anything to do with routing. Many manufacturer do so, 
but from my experience it is not the best way to do so.
I've read the stock SIP application of android 2.3 and stream they use 
is VOICE.
In previous android version it was very fuzzy, but now that's really 
more clear about what we should do. Stream should be VOICE, we should 
focus on this stream (as far as I know this can only be done on the java 
part -- it could be interesting to see if it's possible to add a 
callback just like the one there is in pjsip-2.0 to perform it a clean way).
Also we should set audioMode to IN_COMMUNICATION (this can also be done 
using java api, I'm not sure whether it's available in opensl android 
extension).
And to switch to speaker I think that the best solution would be to use 
pcm.channelMask.
Even if for now in CSipSimple project I do that using the java api since 
previous implementation already do that, I think that in opensl mask is 
correct way.

Just a final info, if you want to contribute CSipSimple, you'll be 
welcome :). I'm absolutely aware that for now the way I build is not 
clean at all. I did that just cause I miss time. The native part is just 
1% of my work time on the project thanks to teluu clean code ! :D
So if you want to join and contribute on pjsip_android part of 
csipsimple do not hesitate to tell me :).

Also last point, not really linked to your patch but could be 
interesting for you :

This week I successfully did a video call using pjsip-2.0 port on 
android !!!! :D
I have two devices : on for opengl-es and one for android camera 
capture. It works with the current pjsip-2.0 branch :) (I did successful 
real tests between my ubuntu running pjsip-2.0 and CSipSimple with 
pjsip2.0 :) ).

Also for others, if you are on iPhone and interested by the opengl-es 
device (could be interesting if you want to integrate 3D video calls 
(such as a 3D conference ;) )....
It's available here : 
http://code.google.com/p/csipsimple/source/browse/branches/video/pjsip_android-2.0/apps/pjsip/project/jni/src/opengl_video_dev.c
As usually contribution to that are welcome !!  Once again I did quick 
things just to have a proof of concept but could be done a cleaner way I 
think.


Regards,
R?gis

>
>
> _______________________________________________
> 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/20110325/ecb2d1ed/attachment.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