3

I've used bigbluebutton in a recent project in order to build a web conferencing platform. I was unhappy with the quality of the service and noticed a delay between the voice and the video.

Technically bigbluebutton used Flex integrated with a red5 server that sends the voice to Asterisk for voice mixing (Konference) and treats the video locally by implementing a codec in java.

Bigbluebutton is very well done and the sources are really well written. As I understood that Flex it self limited to choice of media server implementation such as the impossibility to implement UDP sokets etc.

So my question is that,another way than Flex to implement video chat application in browser. Is JavaFX a good solution ?

Sergey Grinev
  • 32,585
  • 8
  • 125
  • 136
Houcem Berrayana
  • 2,951
  • 20
  • 37

3 Answers3

5

I am one of the developers of BigBlueButton. In the latest version of BigBlueButton (0.8) we replaced Asterisk with FreeSWITCH and moved to the speex protocol.

I'm not saying that BigBlueButton is good enough for your application, but I would suggest you try the latest version as you'll notice the delay in audio much less in 0.8 than in 0.71a.

See

http://code.google.com/p/bigbluebutton/wiki/ReleaseNotes

Regards,... Fred

BigBlueButton Developer

Fred Dixon
  • 383
  • 2
  • 5
  • Thank you very much Fred. I understood that the problem came also from Flex it self because it don't let the use of UDP packets which may cause problems at audio and video streaming. Am I wrong ? – Houcem Berrayana Jun 07 '12 at 07:18
  • Flash restricts an application to use TCP/IP, and doesn't make available a UDP connection. – Fred Dixon Jun 15 '12 at 13:03
3

Is JavaFX a good solution ?

No. Perhaps in the future (e.g. JavaFX 3.0 next year), but not now.

JavaFX currently has no in-built camera or microphone support.

To build such support yourself you would need to rely on a non-JavaFX library (such as lti-civil) and then interface it into a JavaFX application. As JavaFX is just Java and JavaFX apps controls can be embedded in Swing applets, this is all possible, so you could consider it. To get to the point of an end-to-end solution with all of the features of BigBlueButton would be a great deal of work.

jewelsea
  • 130,119
  • 12
  • 333
  • 365
  • So what is the added value of javaFx against Flex ? can javaFx show videos for example ? – Houcem Berrayana Jun 06 '12 at 09:31
  • 1
    Yes, JavaFX can show videos. For video chat specifically, it currently provides no added value over Flex (as JavaFX provides no video chat facilities whatsoever). – jewelsea Jun 06 '12 at 09:58
  • Video buffering can be done using UDP connection for example ? One of the problems of flex is that in case of non stable connection if behaves very bad – Houcem Berrayana Jun 06 '12 at 10:10
  • I think not - JavaFX only support FILE,HTTP,JAR protocols and support for HTTP live streaming is scheduled for a post JavaFX 2.1 release. If you could find a way to get the Java URLConnectionHandler to accept HTTP data over UDP, perhaps it would work, but you would probably need to implement your own server for such a strange protocol stack. To accept UDP with video buffering, again you would probably need to incorporate an alternate library to replace or supplement JavaFX. – jewelsea Jun 06 '12 at 17:24
2

You must see beyond JavaFX API and into Java API itself.

I think Pure Java Applets could do Microphone and Webcam things in 90's when Flash wasn't even in existence.

You just need to use Core Java Classes like JMF, JNI, JNDI

For e.g. http://blog.boehme.me/2011/05/jmf-video-chat-explained-local-webcam.html

http://www.oracle.com/technetwork/java/javase/tech/index-jsp-140239.html

C4ENGINE
  • 61
  • 4