Posts Tagged ‘JAVA’

Saturday, August 21st, 2010

Here’s a look at another interesting flash player implementation by Joa Ebert using Java with OpenGL rendering support. It is at an early stage but has the right idea in hardware rendering to OpenGL which is easily cross platform and mobile capable with speed.

This project is pretty new but there is work to make it web browser capable either in a java applet or a plugin for IE/FF/WebKit/etc but there are also others that are out there using alternative renderers. Most of these are in early development with varying support and do not currently compare to Adobe’s Flash Player versions.  However the hardware rendering ones like JITB may beat it fairly quickly once all the other features are added.  Complete OpenGL based renderers like Unity or WebGL are fast and can run pretty heavy rendering because of hardware acceleration for all drawing and native support.

Other Flash Player implementations:

  • Lightspark
    • AS3 script via LLVM
    • Written in C++ (very portable for native)
    • OpenGL accelerated rendering
  • Smokescreen
    • runs in Javascript/Canvas/html5
    • limited support
  • Swfdec
    • Firefox plugin
    • Early development
  • Gnash
    • flash 7-9 support

Flash Players that use OpenGL as the renderer are nice because cross platform support is easier.  The reason why OpenGL is a great idea is it is so cross platform on desktop and on mobile, it is also coming soon in WebGL for the browser hopefully.

Versions of OpenGL and support

  • OpenGL ES
    • OpenGL ES 1.1 = OpenGL 1.5 and lower (fixed function)
      • Android
      • iOS devices 3rd gen and lessx
    • OpenGL ES 2.0 = OpenGL 2+ (current version 4.1 – shader capable).
      • iPhone (3GS or later), iPod Touch (3rd generation and later) and iPad
      • Android 2.2+
      • WebGL
  • OpenGL
    • Windows
    • OSX
    • Linux

There is still a clear open field for an open source player to match something like Moonlight for Silverlight or hardware rendered canvas. WebGL would be great to have in time if it gets support but it is also nice to have a compiled language in the content that works in the player faster than scripting but with the ease of scripting. Plugins are still very relevant if they can address that.

Thursday, June 26th, 2008

The red and blue, Red5 and BlazeDS are available for push mechanisms similar to what Comet is trying to accomplish with sockets essentially that use the AMF format and AMF3 format with Flash/Flex that is extremely optimized for size and thus network traffic is less bulky.

Welcome to BlazeDS! BlazeDS is the server-based Java remoting and web messaging technology that enables developers to easily connect to back-end distributed data and push data in real-time to Adobe® Flex™ and Adobe AIR™ applications for more responsive rich Internet application (RIA) experiences.

The evolution to more engaging RIAs has created the need for better data connectivity options. Remoting simplifies the reuse of existing server logic automatically marshalling calls between the Flash client and the Java methods on the server. In addition, the use of a AMF binary data transfer format increases performance, allowing applications to load data up to 10 times faster than with text-based formats such as XML or SOAP.

Previously available only as part of Adobe LiveCycle® Data Services ES, Adobe is contributing the proven BlazeDS technologies to the community under the LGPL v3. BlazeDS gives the rapidly growing Adobe developer community free access to the powerful remoting and messaging technologies developed by Adobe.

The odd thing about all this is both Red5 and BlazeDS are Java based. The AMF integration with Java is pretty solid with two major push capable servers using that (again with sockets behind the scenes but highly optmized with AMF/AMF3 and in multiuser case with remote shared objects – red5).

Push mechanisms are needed more and more and having this capabilty right into flash with AMF format remoting data proves to be very easy to integrate and if the backend is java then a pretty robust back end as well.

I use PyAMF for Python and Flourine for .NET as well as the usual AMFPHP but the need to push and have more optimization than a basic object socket connection might be in order.

Sunday, June 15th, 2008

If you ever were a fan of Rebirth and Rebirth 2, this was a music kit that had two 303s, a 909 and an 808 kick drum (beastie says mmmmmm-m-m drop!).  Well Andre Michelle has re-ignited that awesomeness and upped it with the Audio Tools from hobnox!.

This not only has the famed 808, 909 and 303 (conveniently covered with stickers of love) but also sorts of channel mixers, pedals and sweet interface that mimics the inputs and outputs as well as customization on nearly every aspect of the audio creation with these tools. Use your mouse to move things around, connect ins and outs and move the whole setup around.

This setup on about 80 bpm and a little tinkering is groovy.

I think I just found my new batcave evil genius code monkey theme music

Apparently Andre and Joa made some noise and now you can too.  Also I noticed that some of it is in java for the sound output.  I wonder if Adobe missed an opportunity here in audio with flash, which will change probably in Flash 10 due to the Make Some Noise Adobe campaign and Tinic Uro for listening.  But for now have some fun. It is hard to find something that doesn’t sound good in the 80-90 bpm range.