Video Format

fm

Initiates the Imgix Video feature and allows you to specify the video format. Most Imgix Video parameters require fm=mp4, fm=hls, or fm=dash.

Formats

Supported Formats

  • mp4: Outputs an MP4 file. The most widely supported video format, compatible with most browsers and devices.
  • json: Outputs the video metadata as JSON.
  • spritesheet: Returns the spritesheet image grid directly — a single image containing frame thumbnails arranged in a grid.

Beta Formats

  • hls: Outputs an adaptive HLS stream as an .m3u8 manifest.
  • dash: Outputs an adaptive DASH stream as an .mpd manifest.
  • vtt: Returns a WebVTT file — either a spritesheet metadata file or a subtitle/caption sidecar, depending on parameters present.

MP4 (fm=mp4)

Outputs an MP4 file. The most widely supported video format, compatible with most browsers and devices.

The video-thumbnail parameter modifies the accepted value list. Check the video-thumbnail documentation for more information.

JSON (fm=json)

Outputs the video metadata as JSON. See the example below:

// https://assets.imgix.net/videos/girl-reading-book-in-library.mp4?fm=json
{
  "streams": [
    {
      "index": 0,
      "codec_name": "h264",
      "height": 2160,
      "color_space": "bt709",
      "codec_type": "video",
      "bit_rate": "13259156",
      "duration": "22.080000",
      "width": 4096
    }
  ]
}

Spritesheet (fm=spritesheet)

Returns the spritesheet image grid directly — a single image containing frame thumbnails arranged in a grid. Typically requested automatically by the video player after parsing the VTT file. When the spritesheet exceeds 16,384 pixels in either dimension, Imgix paginates it across multiple images; the VTT file references each page automatically.

HLS — Beta (fm=hls)

Beta Feature

This feature is currently in beta. To request access, please contact your account manager or email support@imgix.com.

Outputs an adaptive HLS stream as an .m3u8 manifest. Imgix automatically generates a standard adaptive bitrate ladder from 360p up to 4K, capped by the source resolution. Existing audio tracks and subtitle streams are bundled into the manifest automatically. Use the video-renditions parameter to override the default bitrate ladder, and video-codecs to include multiple codec variants in the same manifest.

DASH — Beta (fm=dash)

Beta Feature

This feature is currently in beta. To request access, please contact your account manager or email support@imgix.com.

Outputs an adaptive DASH stream as an .mpd manifest. Imgix automatically generates a standard adaptive bitrate ladder from 360p up to 4K, capped by the source resolution. Existing audio tracks and subtitle streams are bundled into the manifest automatically. Use the video-renditions parameter to override the default bitrate ladder, and video-codecs to include multiple codec variants in the same manifest.

VTT — Beta (fm=vtt)

Beta Feature

This feature is currently in beta. To request access, please contact your account manager or email support@imgix.com.

The behavior of fm=vtt depends on whether any video-spritesheet-* parameters are present:

  • With a video-spritesheet-* parameter (e.g. fm=vtt&video-spritesheet-interval=auto): Returns a spritesheet metadata file — a WebVTT file whose cues contain Media Fragment URLs (#xywh=) pointing to the spritesheet image with pixel coordinates for each frame thumbnail. See Spritesheets for details.
  • Without any video-spritesheet-* parameter: Returns the video’s subtitle or caption track as a WebVTT sidecar file, bypassing video encoding entirely. If the source has no embedded subtitles, pair with video-generate-subtitles=true to generate an AI-transcribed track.

Multi-Codec Streaming

For fm=hls and fm=dash, the video-codecs parameter generates a manifest that includes multiple codec variants — such as AV1, H.265, and H.264 — for the same content. This allows modern players to select more efficient codecs while maintaining backwards compatibility for older devices. Supported values are av1, h265, and h264.

https://assets.imgix.net/videos/girl-reading-book-in-library.mp4?fm=hls&video-codecs=av1,h265,h264

When used alongside video-renditions, Imgix generates a variant for every combination of codec and rendition. For example, video-codecs=av1,h265 combined with video-renditions=1080:6m,720:3m produces four total variants in the master manifest: AV1 at 1080p, H.265 at 1080p, AV1 at 720p, and H.265 at 720p.