users@grizzly.java.net

Re: Java New I/O, Multiplexing and Mixing/Splitting of Channels

From: Miroslav Nachev <miro_at_space-comm.com>
Date: Wed, 05 Dec 2007 17:11:27 +0200
Hi Xasima,

In my case using of commercial or another type of Java is not suitable. That's why Sun's Real Time Java is not solution. I would like to use regular Java which is provided in regular way and which is available on each user computer.
Sailfin project is SIP oriented and is not related with Real Time operations like RTP, etc.
I don't want to be right but I think that for Voice and Video applications I will need of C code for our VoIP solution (Conferencing, Voice Recording, Echo Cancellation, Compression).

Thanks for the links.


Regards,
Miro.


Xasima Xirohata wrote:
Miro, If you need time-deterministic utility classes, but don't want to fully migrate to Sun's Real Time Java, then
you may try the http://javolution.org/ library.  If you want to find the other possible place to try out the NIO-related classes, than check http://mina.apache.org/ project. I suspect that you may have a look to https://sailfin.dev.java.net/ project as on one of the real project that uses grizzly, nio and that is dealt with 'work with voice, video, audio' conference topic (I think it worth to look although I don't know the nature of the project well) . Probably, you  have to investigate some issues related on architecture and algorithms (besides NIO) on http://www.highscalability.com/start-here if you are going to build some "useful Realtime application" mentioned by you earlier.

If I miss something in explanation I hope someone from the list makes some notices, fixes and add further explanations.

On Dec 5, 2007 2:52 PM, charlie hunt <charlie.hunt@sun.com> wrote:
Miro,

As you know, Project Grizzly is pure Java.  But, Project Grizzly's
emphasis is on performance.  Also, if you look at the JavaOne
presentation
( http://developers.sun.com/learning/javaoneonline/j1sessn.jsp?sessn=TS-2992&yr=2007&track=5),
you will see that Grizzly out performs both Java based applications and
native implementations.  That presentation also provides many of the
tips & tricks we applied to using Java NIO effectively to realize
performance and scalability.

If you have "true" real time requirements with deterministic pause
times, then Java SE itself may not be able to meet those  requirements.
In that case you will either need to look at real time Java solution
such Sun's Real Time Java or a native real time solution. Fwiw,
migrating Grizzly to run / work in a Sun's Real Time JVM would probably
not be too difficult.

hths,

charlie ...

Miroslav Nachev wrote:
> Hi,
>
> I am writing my question here because I can not find another suitable
> Mail list where are so familiar with Java NIO and in the same time
> Grizzly project is very close to my question.
>
> We try to realize in pure Java code Multiplexing and Mixing/Splitting
> of Channels but the delay is too big and that's why we are looking for
> some library or utility where this can be done faster using C language
> and JNI. Can we use for that purposes Java NIO and how? Are such
> capabilities provided in Grizzly project?
>
> Some useful Real-time applications where the above technics are need are:
> - Audio/Video Conferences;
> - Voice/Video Recording/Tapping;
> - Voice/Audio/Video Compression and Decompression;
> - Echo Cancellation (Line, Acoustic).
>
> Thank you in advance.
>
>
> Regards,
> Miro.
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: users-unsubscribe@grizzly.dev.java.net
> For additional commands, e-mail: users-help@grizzly.dev.java.net
>

---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@grizzly.dev.java.net
For additional commands, e-mail: users-help@grizzly.dev.java.net




--
Best regards,
    ~ Xasima Xirohata ~