### Constructor

# Vips Image uhdrload

#### Declaration [src]

    int
    vips_uhdrload (
      const char* filename,
      VipsImage** out,
      ...
    )

#### Description [src]

Read an UltraHDR image.

The UltraHDR image is decoded as a tone-mapped SDR base image plus a gainmap attached as image metadata.

Either process the SDR image and update the gainmap if necessary, or use `vips_uhdr2scRGB()` to convert the SDR + gainmap image to full scRGB HDR.

`vips_uhdrsave()` can write both scRGB HDR and SDR plus gainmap images.

Set `shrink` to shrink the returned image by an integer factor during load.

Optional arguments

- `shrink`: `gint`, shrink by this factor on load

See also

`vips_image_new_from_file()`, `vips_uhdr2scRGB()`.

This constructor is not directly available to language bindings.

#### Parameters

`filename`

  Type: `const char*`

  File to load.

  The data is owned by the caller of the function.
  The value is a NUL terminated UTF-8 string.

`out`

  Type: `VipsImage`

  Decompressed image.

  The argument will be set by the function.
  The caller of the function takes ownership of the returned data, and is responsible for freeing it.

`...`

  Type: ``

  `NULL`-terminated list of optional named arguments.

#### Return value

Type: `int`

0 on success, -1 on error.