Hi Антон,

thanks for this initiative! I think for an Android App we should first
concentrate on connecting Red5 with the Android App and enable the
Audio/Video component.

You might review for example the work that Paul Gregoire from the Red5 team
is doing:
http://gregoire.org/

The basics are all already existing, you could use the same RTMPClient.java
version as in OpenMeetings screensharing application to connect and send
Packets to the server.
The tricky part is to encode the video and send it in packets to the Red5
server.
And also to pIay the video in the client. I don't know what existing
libraries can be used here or if there is already an existing native
FLVPlayer component in Android.
I think there are already examples in the web about streaming video from
and to Red5 using Android.

The SIP clients basically concentrate on connecting via SIP, we are using
RTMP,
the simplest thing would be if the Android app would use that protocoll
too, that way it can subscribe to the same services and act just like any
other client that connects right now.

If the A/V part is working the central component is OK and we could discuss
the UI / layout of the client.

What do you think about that?

Sebastian

2012/3/16 Антон Смирнов <[email protected]>

> Hi everybody.
> I'd like to take part in OpenMeetings project as android-developer.
> Few words about myself: my name is Anton Smirnov and i am professional
> j2ee and now Android developer for last 4 years (10+ years overall).
> I am going to start my participation from java/android projects overview
> (both libraries and apps)
> that we can use or take part in order to provide android compatibility for
> OpenMeetings server-side.
> Since android platform is based on Java with native code support via JNI i
> will focus
> on pure Java/Android or native code (C, C++) products with Java bindings.
> SIP libs/api
> ============
>
> 1. Sun J2ME (November 2004)
> Since OpenMeetings server side is java-based and probably most of you are
> familiar with that, i will leave here just few links:
>  A very good article on "Sip for J2ME" can be found on
> http://developers.sun.com/mobility/apis/articles/sip/.
>  You can found brief history of sip in Java (JSP artifacts can be found on
> http://jcp.org/en/jsr/detail?id=180) there.
>  http://java.sun.com/products/jain/SIP-and-Java.html
>  http://developers.sun.com/mobility/apis/articles/sip/
>
> 2. jsip - sip implementation (RFC 3261) for java (started Aug 1999)
>  project page : http://jsip.java.net/
>  jcp events : http://jcp.org/en/jsr/detail?id=32
>  A goog article and usage example can be found here (with instant
> messaging example) :
> http://www.oracle.com/technetwork/articles/entarch/introduction-jain-sip-090386.html
>
>  Now the lib is build on CI server :
> http://hudson.jboss.org/hudson/view/Mobicents/job/jain-sip/
>
> 3. Android: (Dec 2010)
>  Since "Gingerbread" (API 10) Android release SIP API is available.
>
>  It provides SIP-related classes which let us opportunity to add basic SIP
> features in android application.
>
>  Audio streaming support, no video support in example (but video is said
> to be supported)
>
>  Dev guide: http://developer.android.com/guide/topics/network/sip.html
>  Demo app is available in android sdk examples
>
> SIP-clients
> ============
> Few SIP android clients can be found on Google Android Market (now Google
> Play), a brief overview.
> Each of them has both good and bad feedbacks and probably a big part of
> issues are hardware-specific
> as most of them have plugins and codecs written in native code with
> Java-bindings.
> Video/audio formats which are supported in Android out-of-box:
> http://developer.android.com/guide/appendix/media-formats.html
> 1. Sipdroid
>  --------
>  Open-source, GPL3
>  Android-only
>  High activity on project, 33 commiters
>  not based on android api
> 500k - 1m downloads, average rating (4.0/5)
>  project : http://sipdroid.org/
>  google play :
> https://play.google.com/store/apps/details?id=org.sipdroid.sipua
> 2. 3cxPhone
>  --------
>  Proprietary, free
>  Cross-platform
>
>  100k-500k downloads, high rating (3.9/5)
>
>  google play : ttps://play.google.com/store/apps/details?id=com.tcx.sip.ui
> 4. CSipSimple
>  ----------
>  Open-source, GPL
>  Android-only
>  high code rating, 3 commiters + 4 contributors
>
>  based on native(C) SIP implementation + Java bindings
>  (http://www.pjsip.org/, http://sourceforge.net/projects/pjsip-jni/)
>  Good users support and developers documentation (including android build
> instructions, both native and android)
>
>  100k-500k downloads, everage rating (4.4/5)
>
>  project : http://code.google.com/p/csipsimple/
>  goolge play :
> https://play.google.com/store/apps/details?id=com.csipsimple
>
> 5. MobileVoIP
>  ----------
>  Proprietary, free
>  Cross-platform
>
>  500k - 1m downloads, below average users rating (3.7/5)
>  google play :
> https://play.google.com/store/apps/details?id=finarea.MobileVoip
>
> 6. HQ Video SIP/IMS client
>  -----------------------
>  Proprietary, free
>
>  100k-500k downloads, low users rating (2.5/5)
>
>  google play :
> https://play.google.com/store/apps/details?id=org.doubango.imsdroid
>
> 7. Nimbuzz Messenger
>  ------------------
>  Proprietary, free
>
>  1m - 5m downloads, average users rating (4./5)
>  google play : https://play.google.com/store/apps/details?id=com.nimbuzz
>
> 8. Linphone
>  --------
>  Open-source, cross-platform
> 100k - 500k downloads, average users rating (3.9/5)
>
>  project : http://www.linphone.org/
>  sources : http://www.linphone.org/eng/download/git.html
>  google play : https://play.google.com/store/apps/details?id=org.linphone
>
>  Most clients have (audio,video) codecs (native code) + Java-bindings
>  as android support only few
> RTMP libs
> ==========
> The voice and video stream communications in SIP applications are carried
> over another application protocol, the Real-time Transport Protocol (RTP),
> f.e. RTMP.
> 1. https://github.com/mogo29/Android-RTMP
>  Open-source
>
>  small lib with no 3rd party dependencies
>  still in development, audio only
>
> 2. http://code.google.com/p/android-rtmp-client/
>  Open-source, Apache 2.0 license
> depends on Red5 sources:
>  Open-source, LGPL
>  project : http://code.google.com/p/red5/
>  sources : http://red5.googlecode.com/svn/java/server/trunk
>
>  usage example : http://code.google.com/p/android-recorder/
> 3. flazr
>  -----
>  Open-source, GPL3
>  Very good user developer feedbacks
>
>  project : http://www.flazr.com/, http://sourceforge.net/projects/flazr/
> 4. rtmpdump
>  --------
>  open-source, GPL2
>  native code + Android bindings
>
>  project : http://rtmpdump.mplayerhq.hu/
>
> 5. aftek
>  -----
>  Proprietary, commercial
>  evaluation version is available (but 'Service Temporarily Unavailable')
>
>  description : http://www.aftek.com/afteklab/aftek-RTMP-library.shtml
>  slides :
> http://www.slideshare.net/aftekandroid/android-rtmp-client-3464514
>
> 6. juv
>  ---
>  Proprietary, commercial
>  evaluation version is available
>
>  description : http://www.smaxe.com/juvclient.jsf
>
> I think that we should contribute to one of existing open-source projects
> (Sipdroid, Linphone, CSipSimple)
> in order to provide android client for OpenMeetings platform. For this we
> should specify required and appreciated client app features.
>
> What do you think about it?




-- 
Sebastian Wagner
http://www.openmeetings.de
http://incubator.apache.org/openmeetings/
http://www.webbase-design.de
http://www.wagner-sebastian.com
[email protected]

Reply via email to