J2K-Codec ™
J2K-Codec Overview

What is it?

J2K-Codec is a software component, developed to facilitate JPEG2000 usage.
It can save you 8,000 lines of code, replacing them with a single line.

 Download J2K-Codec

Who should be interested?

J2K-Codec should interest virtually any person involved in the development of a program that works with graphics one way or another.


What is JPEG2000?

JPEG2000 is a revolutionary image compression standard based on wavelet technology and is replacing the old JPEG format.

The advantages of the new standard can be described as follows:

 •  Better image quality at the same file size - see for yourself!
 •  25%–35% smaller file sizes at comparable image quality
 •  Good image quality even at very high compression ratios, over 80:1
 •  Lossless compression mode (identical to original image)
 •  Transparency and translucency (alpha-channel) support
 •  Easy way to get 1/4, 1/8, 1/16, etc., of original image



Why do I need JPEG2000?

Assuming you are a developer, here are several reasons why you may want to add JPEG2000 support to your applications:

1. You are developing an image viewing program.

As JPEG2000 becomes more and more popular, more people will start using it. Eventually the new standard will supersede the old JPEG, which is so widespread now. So you may want to add JPEG2000 support to be up-to-date and to broaden your target audience. And this, of course, will give you a little advantage over your competition :-)

This applies to not only image viewers, but to any program that displays images—slide-show creation utilities, live-video software, photo-to-DVD converters, browsers, e-mail clients, image morphing programs, print programs, organizing programs, etc.

2. You are a game developer.

2.1 Program size and image quality

The Internet is the main (if not the only) distribution channel for small teams and independent software developers. With Valve's Steam technology, it is apparent that the Internet will become the major distribution channel even for the big players.

But not everyone has a T1 connection yet, and Web traffic is not free. So keeping your installation package size to the minimum is very important.

"CNET recently performed an analysis of their downloads, looking at a sample of files on their servers to determine what effect file size has on completed downloads. They discovered that file sizes under 10MB weren't a major factor in completion rate, ranking anywhere from 60 to 80 percent. When the files were more than 10MB, the completion rate degraded noticeably to well under 50 percent.

In order to maximize the chances of getting your software completely downloaded and installed by a prospective customer, you should aim to keep your file size under 10MB. Otherwise, it's difficult to get a sale unless your customers completely download the trial version of your product."
— eSellerate Newsletter

In games, graphics usually take a significant part of the overall program size, and JPEG2000 allows you to reduce the amount and achieve better image quality. Artifacts in images look very unprofessional.

2.2 JPEG2000 features

Game developers might be also interested in some unique features of JPEG2000, not available in the old JPEG format:

 •  Alpha-channel. Now you can compress your pictures with the state-of-the-art compression technology and yet have the full translucency information preserved.

 •  Resolution levels. JPEG2000 images contain several reduced resolutions without duplicating any information. It is "built-in" as part of the structure of the new compression scheme. Imagine—you don't need to store several textures with various resolutions anymore! Now you can have only one picture of, say, 512 × 512 and then decode only 256 × 256 resolution if a user should prefer speed to quality, or a 64 × 64 thumbnail for mipmapping.

2.3 Novice game developers

If you're only starting out in the game development industry, you will probably need a file format to store your graphics anyway. Why not use the modern technology with its rich feature set and very good compression ratios? The main feature of J2K-Codec is simplicity of API and ease of implementation—so you may want to use it just as an image library. See J2K-Codec features below.

3. You are developing a screensaver.

In essence, modern screensavers are similar to games, except they are not interactive. All that was said about games applies equally to screensavers. Maybe even more, because people would rather tolerate a huge game than a huge screensaver.


Why should I go with J2K-Codec?

1. It's easy.

J2K-Codec is probably the easiest JPEG2000 decoder to use. With the special 1-Call shortcut functions and C++ wrapper classes, you don't need to read 20+ pages and figure out mysterious function parameters to start using it. And if you think that something is still not very clear or easy in J2K-Codec—please let us know! We do want to provide the most convenient way of working with JPEG2000 images.

      Code snippet of J2K-Codec usage

Can it be easier? ;-)

2. It's fast.

J2K-Codec is much faster than the free software libraries such as JasPer and OpenJPEG (to give you some clue—up to 54 times faster!) and has the same speed as many other commercial decoders.

      Performance comparison of J2K-Codec vs JasPer and OpenJPEG

3. It's reliable.

We tried hard to achieve good code quality and eliminate as many bugs as possible. All exceptions raised inside J2K-Codec are intercepted in API functions, so it won't crash your application, but instead will exit gracefully with the proper error code.

4. It's usable. :-)

Here are some J2K-Codec features:

 •  .j2k and .jp2 files support
 •  Lossy or lossless compression
 •  Particular resolution level decoding (even for tiled images)
 •  Alpha-channel support
 •  Up to 16 bits per component
 •  File, memory, exe-file resource or any custom data sources
 •  ActiveX control
 •  Static linking (purchasable add-on — buy now!)
 •  Video hardware support (ADV202, ADV212 and Matrox Morphis)
 •  Selective tiles decoding
 •  EasyDecode() 1-Call shortcut
 •  Region of Interest (ROI)
 •  Up to 65,535 × 65,535 images
 •  GeoJP2 (embedded GeoTIFF) and other metadata extraction
 •  SSE code optimizations
 •  Lots of samples in C++, C#, VB.NET and other languages
 •  Simple yet powerful API with C++ wrapper classes
 •  Your feature:

5. It's not unreasonably expensive.

J2K-Codec's $49 seems like the lowest price on the market for a commercial JPEG2000 decoder (notify us, please, if this is not correct).

For this price you'll get both Dynamic-Linked Library and ActiveX control; detailed and easy-to-read documentation; several samples in C, C++, C#, VisualBasic, VB.NET and Delphi; and a collection of test images. There are no royalty fees. And you can use J2K-Codec in as many of your own projects as you want.

6. It has a demo version.

You do not need to buy something you haven't tried. In the case of J2K-Codec, you won't buy marketing department promises; you will buy the same real product you have already tried to use, because J2K-Codec has a fully functional demo version. You buy only after you see that it suits you, not before. If something isn't good for you—then you lose nothing, you just leave and start looking for another vendor. :-)


OK, I am interested; what's next?

 Download the demo version of J2K-Codec, please, and see if it suits your needs. You can also visit our More info and Links pages for more information about J2K-Codec, JPEG2000 and related products.

If you have any questions—do not hesitate to ask them via our on-line Support form.

news | overview | download | order | f.a.q. | more info | support | links 2004-2008 © Alex Saveliev