Skip to content

Supported File Formats

This page lists all file formats supported by OpenRV Web.

Image Formats

FormatExtensionsDecoderHDRNotes
PNG.pngBrowser nativeNoLossless, supports transparency
JPEG.jpg, .jpegBrowser nativeNoLossy compression
WebP.webpBrowser nativeNoModern format
GIF.gifBrowser nativeNoAnimated GIF support
BMP.bmpBrowser nativeNoUncompressed bitmap
AVIF.avifBrowser nativeNoAV1-based still image
HEIC/HEIF.heic, .heiflibheif WASMNoApple image format
EXR.exr, .sxrWASM decoderYesFloat32 HDR, multi-layer, AOV, multi-view stereo
DPX.dpxCustom decoderYesLog-to-linear conversion
Cineon.cinCustom decoderYesConfigurable film gamma
Radiance HDR.hdr, .picCustom decoderYesRGBE encoding
Float TIFF.tiff, .tifCustom decoderYes32-bit floating-point
JPEG XL.jxlWASM (libjxl) + browser native HDRYesModern HDR format
JPEG 2000.jp2, .j2k, .j2copenjph WASMNoWavelet compression
HTJ2K.jph, .jhcopenjph WASMNoHigh-throughput JPEG 2000
JPEG Gainmap.jpgMPF parserYesSDR base + gainmap for HDR
HEIC Gainmap.heicISOBMFF parserYesApple and ISO 21496-1 gainmap
AVIF Gainmap.avifISO 21496-1 parserYesAuxiliary gain map items
RAW PreviewVariousPreview extractorNoEmbedded JPEG preview from camera RAW

EXR Details

EXR decoding supports:

  • Compression: PIZ (wavelet), DWA (DCT), ZIP, ZIPS, RLE, uncompressed
  • Multi-layer: Named layers with AOV selection and channel remapping
  • Multi-view: Separate left/right eye views for stereo workflows
  • Data/Display windows: Separate data and display window regions
  • Float32 precision: Full HDR dynamic range

Gainmap HDR

JPEG, HEIC, and AVIF gainmap formats reconstruct HDR images from an SDR base image and a gain map. The reconstruction applies:

  • XMP headroom extraction (for JPEG)
  • sRGB-to-linear conversion
  • Gain formula application
  • ISO 21496-1 standard support (for HEIC and AVIF)

Video Formats

FormatExtensionsDecoderNotes
MP4.mp4, .m4vWebCodecs (mediabunny)H.264, H.265, AV1
3GP.3gp, .3g2WebCodecs (mediabunny)Mobile video
MOV.movWebCodecs (mediabunny)QuickTime container
MKV.mkvWebCodecs (mediabunny)Matroska container
WebM.webmWebCodecs (mediabunny)VP8, VP9, AV1
OGG.ogg, .ogv, .ogxWebCodecs (mediabunny)Theora, VP8
AVI.aviBrowser fallbackLegacy container
MXF.mxfMXF DemuxerContainer parsing; identifies codec, resolution, FPS

HDR Video

HDR video files with HLG or PQ transfer functions are supported through VideoFrame texturing. The renderer applies the appropriate EOTF (Electro-Optical Transfer Function) in the fragment shader.

ProRes and DNxHD

ProRes and DNxHD codecs are detected during MXF and MOV parsing. Since browsers lack native ProRes/DNxHD decoding, OpenRV Web provides FFmpeg transcoding guidance when these codecs are encountered.

Sequence Formats

PatternExampleDescription
Printfframe.%04d.exrC-style format notation
Hashframe.####.exrEach # = one digit
At-signframe.@@@@.exrEach @ = one digit
Numericframe_001.pngAuto-detected numbering

Procedural Test Patterns

OpenRV Web can generate procedural test patterns without loading any file. These patterns are useful for display calibration, pipeline testing, and scope verification.

PatternDescription
SMPTE BarsStandard SMPTE color bars
EBU BarsEBU color bar pattern
Color ChartColor reference chart
CheckerboardConfigurable cell-size checkerboard
GradientHorizontal or vertical gradient ramp
Grey RampStepped grey ramp with configurable step count
SolidSolid color fill (configurable RGBA)
Resolution ChartResolution test chart

Patterns are accessible via the API using openrv.media.loadProceduralSource('smpte_bars') or the OpenRV-compatible .movieproc URL format (e.g., checkerboard,cellSize=32.movieproc). Desktop OpenRV aliases (smpte.movieproc, checker.movieproc, ramp.movieproc) are also supported.


Session and Timeline Formats

FormatExtensionsDirectionNotes
OpenRV Web Project.orvprojectRead/WriteFull session state as JSON
RV Session.rvReadOpenRV GTO session files
GTO.gtoReadGraph Topology Object files
RV EDL.rvedlReadOpenRV edit decision list
OTIO.otioReadOpenTimelineIO editorial timelines
CMX 3600 EDL.edlWriteStandard edit decision list

LUT Formats

FormatExtensionTypeNotes
Cube.cube1D and 3DIndustry standard
CSP.csp1D and 3DCinespace format
3DL.3dl1D and 3DAutodesk/Lustre format
ITX.itx3DIRIDAS SpeedGrade format
Look.look3DXML-based IRIDAS format
Houdini LUT.lut1D and 3DHoudini channel and 3D types
Nuke Vectorfield.nk3DNuke exported vectorfield
Pandora MGA.mga3DPandora color corrector format
RV 3D LUT(native)3DOpenRV native 3D format
RV Channel LUT(native)1DOpenRV native 1D format

LUTs are loaded as float32 data and applied via hardware trilinear interpolation (for 3D LUTs) in the GPU fragment shader. A higher-accuracy tetrahedral interpolation path is available for CPU-side processing (TetrahedralInterp.ts).

CDL Formats

FormatExtensionDirectionNotes
ASC CDL.cdlRead/WriteSingle color decision in XML format
CC.ccReadSingle ColorCorrection element
CCC.cccReadColorCorrectionCollection with multiple entries

OCIO Configuration

FormatExtensionDirectionNotes
OpenColorIO Config.ocioReadColor management pipeline configuration

Released under the MIT License.