Fast J2K Player on GPU

Fast J2K/JP2 Player is a high performance software to decode and to preview still images or video frames with JPEG2000 compression (or file series with .jp2, .jpx, .j2k extensions). It uses GPU-based Fastvideo J2K codec for fast decompression. JPEG2000 codec from Fastvideo is based on NVIDIA CUDA technology. This is full, performance-oriented implementation of J2K compression standard. We've got fast J2K encoding and decoding on the GPU due to parallel processing and thorough optimization of JPEG2000 algorithm. Here you can see benchmarks for J2K encoding and decoding on GPU.

System requirements

  • Microsoft Windows 10 x64 (or newer)
  • NVIDIA GPU with CUDA-11.7 or CUDA-12.1 support (GPU Compute Capability 5.0 or more)
  • NVIDIA driver 531.79 (or better)

Hardware requirements

  • For the best performance we recommend NVIDIA GeForce RTX 4080/4090 GPU or Quadro A5000/6000
  • Multicore CPU and motherboard with support of PCIe 4.0 bus
  • Fast M2 disk to decrease read/write time
  • Fast network if necessary

Usage

Any any image series from the same folder in jp2 format could be opened in Fast J2K Player by creating a new project for processing/viewing or just via drag&drop to the main window. User can zoom in/out of an image use mouse wheel or keys ‘+’ and ‘–‘. To scroll zoomed image drag it using left mouse button or use cursor keys.

Apart from fast J2K decoding the software is capable of image series encoding to J2K. Input image formats could also be PPM, BMP, TIFF, DPX, etc. J2K encoding performance on GPU is much faster than OpenJPEG codec on CPU.

fast j2k player

Key Features of Fast J2K Player on CUDA

  • Input formats for decoding: jp2, j2k, jpx
  • J2K encoding and decoding for grayscale and color images with arbitrary width and height
  • Lossy (wavelet CDF 9/7) and lossless (wavelet CDF 5/3) image decoding
  • Bit depth: 8-16 bits per channel
  • Number of decomposition levels: 1–12
  • Codeblock size 16×16, 32×32 or 64×64
  • Chroma subsampling for color images: 4:4:4, 4:2:2, 4:2:0
  • Tile support
  • Realtime jp2 encoding, decoding and preview
  • Data input: images from HDD/RAID/SSD/M2
  • Data output: uncompressed images on the screen or processed image on a disk
  • Optimized for the latest NVIDIA GPUs
  • Time measurements for jp2/j2k/jpx encoding and decoding

Processing Pipeline at Fast J2K Player for JP2 frames

  • Input image acquisition and parsing
  • J2K decoding
  • Additional image processing (crop/resize, color space, brightness, gamma, histogram, parade, etc.)
  • Frame preview
  • Optional image storage to SSD/M2 or via network
  • Optional transcoding to jp2/j2k, ppm, bmp, dpx, tiff, etc.

Test images and software for J2K encoding and decoding

How to play video files with internal J2K compression?

J2K algorithm is utilized not only for still image compression and decompression. It could also be utilized for video tasks and such cases could be very complicated for CPU-based video players like VLC, etc. If we try to play MXF or MPEG-TS video files with J2K internal encoding on VLC, we just can't see the result on the monitor, this is because J2K decoding on CPU is so slow. Even for 2K video the playback on both VLC and Windows Media Player is not possible at all, even on a powerful PC. Moreover, conventional MXF/MPEG-TS workflow for movie preview, implies that video files have to be converted to MP4/MOV/AVI with H.264/H.265 encoding to watch smooth video in any media player.

We can offer a way to play MXF and MPEG-TS video files and streams smoothly on Windows or Linux directly, without doing any preliminary conversion. As an example, we can process and preview in real-time streams like 2K/60fps/10-bit/4:2:2 for MXF or MPEG-TS video files (4K support will be released soon).

It means that our software will be able to play not only j2k/jp2 image series from SSD, but also MXF/MPEG-TS video files with internal J2K encoding. That solution is also could be utilized for MXF and MPEG-TS transcoding to MP4 with H.264/H.265 encoding.

Roadmap for Fast J2K Player

  • Performance optimization for Fast J2K Player on GPU - in progress
  • MXF and MPEG-TS support - in progress
  • Linux and L4T support - in progress

Contact Form

This form collects your name and email. Check out our Privacy Policy on how we protect and manage your personal data.