Licht. Schönheit. Mehr.
|back to summary|
|Source Code Size|
|Contact person||Guido Pannenbecker|
BlinkenApplet is a universal blinken player which displays various file types and works cross-platform. The project is under GPL.
To guarantee availibility and easy installation on many platforms, BlinkenApplet is built in Java. The application can both be run from console and be embedded as an applet. A version running on cellphones capable of MIDP2.0 is planned.
Current source code and a complete .jar file can be found over at Sourceforge.
The first historcial source code (unfinished!): BlinkenApplet.zip [6 KB]
If you have questions, suggestions, problems or just like to help out, don't hesitate to drop Guido Pannenbecker a line!
All 4 file formats and UDP streams using BLP protocol are already supported. Random and even undocumented frame sizes up to 3 channels are displayed with vector graphics (elipses). It's still lacking of enhanced network protocols and importing a config file (featuring a simple playlist).
This is a step-by-step manual describing how <nop>BlinkenApplet can be run as an application on a windows pc:
- To use BlinkenApplet, you have to install »<a target="_blank" href="http://java.sun.com/j2se/1.4.2/download.html">Java</a> on your PC. It can be downloaded at the given site for free.
- You then download the latest version of BlinkenApplet.jar from »<a target="_blank" href="http://sourceforge.net/projects/blinkenapplet/">Sourceforge</a>
- Save it to something like
- Download some »<a target="_blank" href="http://www.blinkenlights.de/gallery/index.de.html">BlinkenMovies</a> to that directory
- Open up a dos box by clicking "Start", "Run" run and entering
- Change to your blinken folder by typing
java -jar BlinkenApplet.jar -f movie.blm. You should now see a short intro followed by the specified <nop>BlinkenMovie file (here: movie.blm).
Should you experience any problems, please don't hesitate to drop Main.GuidoPannenbecker a line!
Command line parameters
The current command line parametes for application usage can be found out by typing "--help". $ java -jar BlinkenApplet.jar --help $ java blinkenapplet/BlinkenApplet --help
Valid commands could look something like this:</p> $ java -jar BlinkenApplet.jar -f movie.blm $ java -jar BlinkenApplet.jar --udp --lamp-on 250,250,0 \ --lamp-off 100,100,200 &
In UDP mode, BlinkenSend is the best way to to pipe data to BlinkenApplet. The first statement shows a call from bash playing all *.blm files from one directory three times in a row infinitely. The second statement shows how this could be done much easier.
$ for ((;;)); do for i in ~/path/to/movies/*.blm; \ do ~/path/to/BlinkenSend -i $i -l 3; done; done; $ ./BlinkenSend -i movie.blm
These parameters can already be used when running the program as applet:
|delayFaktor||<double> (0.1 = 10x faster, 10 = 10x slower)|
Here's an »<a target="_blank" href="http://www.sd-gp.de/?page_id=BlinkenApplet">online example</a> of the applet. BlinkenApplet.jar is located in the same folder as the HTML file which contains the following code in it's body.
<applet codebase = "." code=blinkenapplet.BlinkenApplet.class archive="BlinkenApplet.jar" width="150" height="110" >
<param name="showDemo1" value="no">
<param name="showDemo2" value="no">
<param name="loop_files" value="ON">
<param name="bgColor" value="60,60,80">
<param name="LampOffColor" value="0,0,50">
<param name="LampOnColor" value="0,50,255">
<param name="url_file_names" value="http://www.sd-gp.de/movies/blubb.blm">
The "BlinkenScreen" can display lots of different formats, even any undocumented framce sizes. The current version of BlinkenApplet can play-back two demo streams to show different frame sizes (demo: 5x5) and MultiColorLEDs which colors are determined by several channels.
Only vector graphics are used to draw the LEDs. Bitmaps aren't supported. BlinkenSimJava is a player which projects movies onto bitmap facades.
|The next version will support EBLP. MCUF with several channels will be implemented later for which the base data type already provide several channels. ISDN protocols such as BIP, EBIP will not be supported. Considering SBTP, we haven't made any plans about that yet. Succeeding versions of BlinkenApplet could possibly transfer streams via UDP to clients which would enable a simple proxy functionality.|
Supported file formats
All 4 file formats (blm, bmm, bml and bbm) can be read by BlinkenApplet. BlinkenApplet is not supposed to become a converter. There's excellent software to do that (c.f. file formats). In case BlinkenApplet will be able to write files in the future (i.e. recording a UDP stream), bml seems to be the appropriate format. It's most likely that BlinkenApplet will only export this filetype.
Playlist, GUI, command line parameters
First, BlinkenApplet is supposed to be an easy to use application. A playlist which will be editable during the program's runtime is not planned. However, there's a simple loop function which can contain several movies in a row. Further on, it's planned to have a config file read by BlinkenApplet which could contain a list of streams to play.
There's no GUI in the current version but the output window; that's not gonna change. Some command line and applet parameters will be evaluated to play a specific file or to listen on a specific port for an UDP stream.
Handling several channels in a stream
In case a stream contains several channels, channels 1-3 will be used for colors red, green, blue and will be displayed in one MultiColor-LED per pixel. Other channels will be ignored.
BlinkenApplet uses a base class BlinkenFrame which is mostly the same as the one used in blinken editor Blimp by 1stein. Furthermore, FileIO functions from class <nop>BlinkenMovie were adopted. In contrast to Blimp, BlinkenApplet is not using Swing but AWT without Swing to allow portability to MIDP2.0 cellphones and to simplify installing on some computers if necessary. Blimp is downloadable in a fully functional and well documented version incl. source code.
Another blinken player coded in Java is BlinkenSimJava by 1stein as well. This player uses bitmaps and displays the movies on the original buildings which makes it less universal concerning the supported stream formats. BlinkenSimJava is released as pre alpha version incl. source code.
BlinkenLib by 1stein is no java project but a useful extension to BlinkenApplet. First of all the application BlinkenSend included in BlinkenLib is very useful when using BlinkenApplet: you can send any UDP stream to BlinkenApplet.
BlinkenApplet can now be integrated into any MediaWiki using MediaWiki Extension