Java videos

Difficulty level
Information for
                 
 
surfer
"John Doe"layman
expert
 
web-master

[ Language ] :: [ Main Index ] :: [ Site Navigation ] :: [ Tutorials ] :: [ Downloads ] :: [ Contact ]

 

I have noticed, that question about java-videos are still popular at forums. There is no problem with grabbing them from screen – there are a few very detailed tutorials how to do that with software only. But based on description at question, it seems not to be so straight. Usually there are problems with full-screen pop-up windows, or with server restrictions. So, people ask, if it is possible to get it work offline, so they can try so many attemps they need to.

Yes, usually it is possible to play java-video, even if you are not logged to source page, or after you finish your internet session. You will have probably everything on your computer. This tutorial has an ambition to show you, how you can create an “offline player”, as well as how you can convert that video into some standard format.


Content    
Background Working example Goodies
A little bit of history ... Example EV2 Player & Generator
Any future ..? How it works Downloads
  Components locations  
  Reconstruction off-line player JPEGPush videos (external)
  Troubles Conversion to AVI by screen-capture (external)

A little bit of history ...

Java videos have been popular back at 1999 and 2000. Later they have been pushed out from market by Microsoft Advanced System Format – the very first MPEG-4 codec with real-time ability for 56 kbps. Thanks to hackers of Circuit City (Jerome Rota, “Gej” and “Max Morice”) also a grand-papá of all non-commercial video-codecs. It is on the same position as id Software Wolfenstein (and later Doom) at 3D point-of-view game industry.

The reason, why Java videos has had their five-minutes of fame is trivial. Although internet has been an integral part of many lives, telecommunication capabilities just not follows the capabilities of the computer hardware. At least, not for public market. One, because there has been no reason to expand modem’s bitrate at USA, which has been the biggest market at that time. They mostly does not pay for local connection. Two, because telecommunications has monopoly at a lot of other countries. The situation does not change, by the way. I personally think, that even flat-rate DSL will become unacceptable for a lot of telecom’s companies, because they loose money, when they does not tarificate data-volume. In this way, small percent of the most active users will transfer the almost full amount through peer2peer. I hope, I am wrong and I believe, two-way satellite internet will be a real concurrent for ADSL.

And two more historic facts from Slovakia. First high-bandwidth wi-fi connection to internet has been realized at 1994 (!!!) – works perfectly until today. First DSL connection has been announced at 1998 (!!!). For foreigners: there has been no wi-fi, nor DSL permitted at Slovakia by Slovak Telecom, its strategic partner Deutsche Telecom and Slovak Ministry of Telecommunication for public market till summer 2003!

Back at 1999 there has been only one format suitable to transport video through 56k modem: Apple QuickTime. Amazing quality – it is true – however, no real-time. Downloading of one minute sequence will take more-less ten minutes. To be fair: there has been another format: Real Media. Unfortunately, RTSP transport protocol, which is used to deliver this media in real-time, is based on dropping frames. So, result video, even created for ISDN, is static images’ sequence with amazing three frames per second.

It is a fact, that acceptable quality can be achieved for 180 kbps and over. Lower than this limit, it is simply impossible using JPEG DCT&LSP compression. Even when you use dancing post-stamp size, like 160 x 120 pxls.

So, on one side: a high quality video from Apple, on the other side: a 19th century inventions’ quality resulted by RTSP principle of Real Media. Java from Sun with direct support of JPEG has been a way out from this semi blind street.

There has been another one reason: nothing special to download. A very good reason. Once you have downloaded and correctly configured Java on your system – and much more imported: cooperated with your browser – you have almost everything. There is no player installation pack of 10 MBy size to download, install and restart computer to get it work. There is no surprise later, when you suddenly discover during uninstall, that your player is integrated part of system and simply cannot be removed. As Microsoft Windows Media 9 Pack, for example. To explain, a few non-Microsoft applications with e.g. brute-force indexing capability suddenly not work.

By the way: there is a System Restore option at Microsoft Windows XP. The quickest way to get into is from Center for Professional Help and Assistance. Click Start, then that Help center and then you will see on the right side System Restore Task’s Wizard. Just lunch and follow the steps.

Decoders for java-video-streams has a few hundreds kilobytes at maximum. All java-applets can be easily removed from system. Even those evil traps, which are, in fact, mostly Microsoft Visual Basic scripts. Remember, that these traps are really kind of virus, developed only for some kind of parasite reason!

[ Content ]


Any future, or reason why to be wondering about?

Yes, definitely. Reason remains the same: someone (distributor) loose its money. Because, except single remained combination of linkage & format – this one exception sooner prove the rule, all of linkage camouflages, protocols in use, file formats used in real-time video transport and all digital-rights-management systems have been reverse engineered meanwhile and successfully cracked. In mean, that there are exist some verified data, which prove that crack is correct. True, asymetrical ciphers are unbreakable. Under one condition - without knowing the keys. And this is the problem, because it is also true, that user can as fool as only want to. So, the keys must be stored somewhere on local computer.

So, someone wise tries completely different approach: download that video, if you want to. Be my guest. But, program also a player if you want to watch it off-line. Or, capture it through video-card, or special software, when you are on-line. We can make it really fun: what about to pop-up a few full-screen windows, for example? We knows, there are professionals, which will able to handle this. But, we are not interesting to stop them. Our main interest is to stop self-educated-amateurs from steal our content.

This philosophy shows to be very successful. A lot of people are driven mad from helpless when they know, they have the video, that it works, but no player is accepting it. Because unsupported format. And getting to work java-applet again is task much-more harder than a couple of hours of research and a few tries.

Presently, the two most popular technology are JPEGPush and GEO Emblaze Video. I choose the second one as example, because it looks to me, that it is almost dominate. In fact, this detail is not imported, because probably all java videos will initiated in the way described here.

Another reason is that JPEGPush is elementary archive, even simplest that TAR (fully “Tape ARchive”). JPEGPush’s file consist from individual JPEGs joined together. All can be extracted as part between JFIF headers, all are correct JPEG images which can be viewed, and all can be converted to video files by RAD Video Tools, or Macromedia Flash, or – I suppose – also with some freeware applications, or packers. There should be even plug-in for Total Commander available, for now. Anyway, I am going to write a special article about this.

[ Content ]


Figuring out how ...

Click on the following link. A new window should be opened and after a few second a short video-sequence should be played. The sound in the clip is probably destroyed – sorry, I have not found better clip.

[ Click here to start a sample video file (sorry, you will have probably wrong sound) ]

Works? No? Have you installed Java engine – original distribution from Sun or Microsoft JVM? Have you accepted the applet? Have you permission to download and run applets – both by your firewall and your browser? Can your hardware display millions of colors (16-, 24-, 32-bit True Colors)? If still nothing, I have no more ideas. I recommend you to download an example and ask some friend or visit some pub where students usually drinks – it looks that problem is very concrete and exclusively specific.

Picture 1: Your screen should look like this. Please note a message "javascript ..." at status-bar.
It is quite possible, that you will have displayed also a dark-grey Sun Java console (its design is completely different than Microsoft Windows elements) as you can see here. [ Full picture ]

Works? OK. And now, how?

As you can notice, the new window is pop-up’ed. Or one frame can be refreshed – it depend on site design. Why? Because every video has its control panel for playing with standard buttons (play, stop, pause, rewind, etc.) sometimes accompanied with slider. To avoid mistakes during programming, solution with load video on window open is preferred. Other solutions – e.g. a special button to load video – are very rare.

That new video is opened with standard JavaScript function window.open. To show some real world solution, I have used an individual script named DemoPage where additionally is some (unnecessary) content for frames written. What is important is the name of the page – in this case “popup.HTML”. This name is in fact URL, but on your local hard disk will be stored at Temporary Internet Files directory only by file-name.

As far as inside this pop-up’ed window, the calling of applet can be found. It is located as parameter for applet.code function. Usually you can find there two archives: jar and cab file, which together defines whole applet interface. You can find there also a video-file-name. This video-file-name is also an URL. It is not rare situation, that this file name is parameter of JavaScript which pop-up window – see above – or that it is generated from web-page file-name.

That’s it. We will wait until whole video is download and we will play – or at least rewind to end – this video. Otherwise, we will probably have stored only a part which has been played.

[ Content ]


Where can they be found ...

These two pages – pop-up’ed / refreshed window and window which call it – we have to find on disk. As well as video-file, and both applet archives (jar, cab).

HTML pages are at Temporary Internet Files directory. In case of Microsoft Internet Explorer, the file-names will probably have parented (numeral) number at the end – e.g. popup[1].html. In case of Opera, you better search through cache for file which contains the string with your video-file file-name. The easiest way is, of course, to save windows – however it could not be possible.

Microsoft Internet Explorer users can use, e.g. PopUpCop application feature called View Source for All Frames. In this way, you will have a master window and you can find there a pop-up window name and probably also a hint for video-file name and applet name (they will be for sure at pop-up window’s HTML code). Then you can go to the Temporary Internet Files directory for surely.

Opera can always show a Frame content, even in cases that it is prohibited by Java Script.

Video-file is also at Temporary Internet Files directory. Unless there is really some complicated script to engage and configure applet parameters, you should be able to figure-out what is the video-file real URL, so you can try to download it independent and not wait until whole video is played.

If you are sure, that you already have a full clip – an applets’ Control Bar usually has a gauge showed not only a video frame position, but also an amount of clip cached already: so when it is full, you have full clip downloaded – and you still do not know its name, try to sort files according their descending sizes. Video files are far the biggest, so it will be probably on the top.

In case of concrete Emblaze Video, you can look for any file containing string ‘GEO INTERACTIVE MEDIA GROUP’ on the beginning.

And finally applet. Its name will be for sure at pop-up’ed window. If you are using Microsoft Windows98, applets will be downloaded and unpacked at Temporary Internet Files directory. The best way, is sort by file-names, and copy everything which has the same name. You should find at least .cab, and .jar file. Sometimes accompanied with .gif, or .png file with control bar image, as well as .bin file.

If you are using Microsoft Windows XP, or Java engine, you will probably found them nicely sorted in their own directory at Documents and Settings for current user, or Administrator. There are directories as .java, .java_ws, and .jpi_cache. Applets should be unpacked and stored there.

[ Content ]


Reconstructing a player ...

Copy all of these files to some new directory. Now, you have to rename them, so their names will fit to names defined inside HTML documents. In case of Microsoft Internet Explorer, just delete the brackets at the end of file names. In case of Opera, you have to probably rename everything handly.

If you have a .jar file you can simply unpack it. It is a valid PKZip archive and you will find inside a .class files. Or you can unpack .cab file. You can rename a video-file to something easy to remember, such as ‘a.ev2’, but it is not necessary.

And the last thing. As we remember, the video file name is in fact an URL. So we must change it inside of pop-up window HTML code. Because everything is in one directory, we just delete everything, so inside quotes of value parameters will be only file names. Correct file names!

Congratulations. You just made your own personal player.

You can download also this archive to get a view, how your destination should looks like. The player for EV2 files is at subdirectory \Player - it is a complete pack ready to work. Here is its listing:

File name

Ext

Size

Date

Time

 

ev

bin

7,606

30.11.2001

00:35.08

 

ev

cab

41,195

30.11.2001

00:35.28

 

ControlPanel

class

8,225

30.11.2001

00:34.48

 

CyclicDecoderStream

class

4,567

30.11.2001

00:34.48

 

EmblazeAudio

class

2,872

30.11.2001

00:34.50

 

EmblazeVideo

class

41,543

30.11.2001

00:35.00

 

exec

class

9,548

30.11.2001

00:35.38

 

GetData

class

4,311

30.11.2001

00:34.52

 

jsdec

class

7,391

30.11.2001

00:35.48

 

MyFrame

class

1,593

30.11.2001

00:34.58

 

MyStream

class

851

30.11.2001

00:34.58

 

a

ev2

35,264

9.6.2004

14:39.06

sample video file

EVControlPanel

gif

2,053

30.11.2001

00:34.48

Main

htm

5,105

13.7.2004

17:07.10

main page for launching

PopUp

HTML

618

30.11.2001

23:53.10

pop-up windows with video

ev

jar

42,588

30.11.2001

00:35.48

 
Total files:
16
215,330
by    

[ Content ]


What if your custom player does not operate ... ?

A lot of things can gone wrong. The best way is going to nearest pub where the students spend night and hire someone. However, here are a few hints ... I suppose, you have no mistyped at HTML code.

    1. Try to open a pop-up window directly. In most cases it should be possible and video should start.
    2. In very rare cases, a combination of PHP-script and JavaScript can occur. There is a very big difference between these two technologies. A JavaScript runs at your local machine, PHP runs only on server and its result is send to your local machine.
    3. That PHP script can be a part of master page. Pop-up window will be its result.
    4. Some files required by applet can miss. You should get an error during initialization with exact file name. Try to find it.

[ Content ]


GEO Interactive's Emblaze Video 2 files Player & Playlist Generator

For this most popular Java based video stream I wrote a simple application which will make one master page (index.htm) and a pack of pop-up pages for individual video-files. As every tool on this site, this one also need not to be installed. Just download, unpack and run.

First make a new catalog and copy all of EV2 files into it. Their real extension is not imported. I will not check if that files are really Emblaze Video ver. 2. Run generator and open desired files – multiple selection is allowed. Press Make HTMLs. All HTML files will be generated. It is possible to count frames, so we can calculate also a clip length, but all files must be scanned thoroughly which takes a lot of time. So, I decided to put there only a file size and you can estimate clip length. As the last, extract a player binary files into this directory.

This is one-time toy. It is true, that I wrote on the beginning, that almost all java-based-video are initialized in the same way. So, if you rename applets, it can be used also for other technologies. But video-size and its fps will be as written in source-code.

If you are programmer, you should has no problem with source code modification and recompilation. I have tried Borland Kylix, Borland Delphi and MinGW GNU Pascal – all of them works perfectly. I plan to extend this toy with page-template-like possibility.

Downloads

   
 
EVPlayer.zip
Fully functional player with original response and sample file.
161 kBy
 
EV2PG.zip
HTML pop-up files generator. All you need to do is just select desired EV2 files. Main (index) site and all pop-up sites with correct scripts will be generated. Copy player into the directory and you can play any video.
204 kBy
 
EV2PGSrc.zip
A source code (Object Pascal for Borland Delphi/Kylix) for player generator.
12 kBy
 
EV2Full.zip
Everything about this, including this tutorial, together with samples and sample listings (*.lst). All packed together.
516 kBy

[ Content ]


What about conversion to something “normal”

This is theme for a special article. In advance, I can tell you, that the safest way is the pure software capture-screen (not hardware-capturing by TV card!) with ability to capture a DirectX. There are a few traps, as I mentioned, but we have an off-line player now, so we can try ... and try ... and try ... until success or nerve-breakdown. Or you can try to look inside of file and see, if it is not easier to extract all frames. Also a theme for a special article.

[ Content ]


The clip has been sent to me around Christmass 2000. I have no slighting idea from where this clip comes from. The girls wear a police uniforms of Czech Republic. The girl on left is pornstar Monica Sweethearth, unless my eyes cheating me. So it will be for sure something "horny ...".

You can translate or link this tutorial under conditions written at this domain's "Legal Stuff" page and followed. If any doubts, please contact me.

Copyrights, trademarks and credits are collected here.

Marián Stach
Prešov, Slovakia Central Europe
2004-04-10

[ Content ]

[ Language ] :: [ Main Index ] :: [ Site Navigation ] :: [ Tutorials ] :: [ Downloads ] :: [ Contact ]