Skip to main content
Vane Data / Reference

decode_image_file

decode_image_file decodes an IMAGEFILE into an IMAGE. mode=None preserves source modes already representable by IMAGE; palette images expand to RGBA, and integer depth and floating RGB(A) are retained.

Signature

example.py
vane.decode_image_file(
    value, mode=None, on_error="raise",
    *, max_input_bytes=268435456, max_pixels=100000000, max_decoded_bytes=536870912,
) -> Expression

SQL: decode_image_file(file [, mode, on_error, max_input_bytes, max_pixels, max_decoded_bytes]). Expression method: expr.decode_image_file(...).

Parameters

NameTypeDescriptionDefault
valueIMAGEFILE value or ExpressionEncoded image objectRequired
modeMode name, ImageMode, Expression, or NoneResult pixel mode; None preserves a representable source modeNone
on_error"raise" / "null""null" suppresses only classified encoded-format and codec failures"raise"
max_input_bytesInteger or ExpressionEncoded input limit256 MiB
max_pixelsInteger or ExpressionPixel limit100,000,000
max_decoded_bytesInteger or ExpressionDecoded pixel budget512 MiB

Returns and errors

Returns a dynamic IMAGE, or IMAGE(mode) for a constant mode. NULL returns NULL. I/O, interruption, dependency, and limit errors propagate even under on_error="null". SQL execution caps decoded pixel storage at 256 MiB per vector batch.

Example

example.py
import vane


con = vane.connect()
con.sql("SELECT decode_image_file(image_file('photo.png'), 'RGBA')").show()