uDocumentViewer
Images.jxr · .wdp · .hdp

JPEG XR viewer

ready
About JPEG XR

Microsoft JPEG XR / HD Photo — structural preview.

JPEG XR is Microsoft's wavelet-based image codec — originally shipped as HD Photo in Windows Vista, then standardised as JPEG XR (ITU-T T.832 / ISO 29199-2). It supports HDR, wide colour gamuts, and lossless modes. No working browser-side decoder exists for it today: libjxr is a C reference implementation that's never been ported to WebAssembly with usable bindings, and browser vendors abandoned native JXR support in favour of AVIF and JPEG XL. We sniff the container (HD Photo vs JXR via the codec version byte), show the header bytes, and point you at a conversion tool.

FAQ
Why can't you decode JPEG XR in the browser?
The only mature JPEG XR decoder is libjxr, Microsoft's C reference implementation. It compiles to WebAssembly but doesn't expose clean Emscripten bindings, and no actively-maintained npm package wraps it. Until someone ships a working JXR-WASM module the only options are server-side conversion or a structural preview — we go with the latter to keep everything in your browser.
What's the difference between .jxr and .wdp / .hdp?
Same codec, different names from different eras. .wdp (Windows Digital Photo) and .hdp (HD Photo) were Microsoft's original extensions while the format was still proprietary. After the format was standardised as JPEG XR around 2009, the .jxr extension was adopted. We detect both via the same magic bytes II<BC>; the codec-version byte after the magic distinguishes pre-standard HD Photo (0x00) from full JPEG XR (0x01).
How do I convert JPEG XR to something I can view?
Best options today: cjxl (libjxl) accepts JPEG XR input and produces JPEG XL, which Chrome and Firefox can view via polyfills. avifenc converts via an intermediate format. ImageMagick handles JPEG XR if compiled with the libjxr delegate. On Windows, Microsoft's own JxrDecApp produces TIFF/BMP.
Is the format dead?
Effectively yes. Microsoft pushed JPEG XR for a few years (Windows 7, Internet Explorer 9-11 had native decode) but Chrome and Firefox never shipped support, and AVIF and JPEG XL ate its lunch on the modern web. You mostly encounter JXR files now as legacy Windows imaging output or in DICOM-adjacent scientific workflows.
More Images