jpegxl

package module
v0.4.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Nov 2, 2024 License: MIT Imports: 17 Imported by: 5

README

jpegxl

Status Go Reference

Go encoder/decoder for JPEG XL Image File Format with support for animated JXL images (decode only).

Based on libjxl compiled to WASM and used with wazero runtime (CGo-free).

The library will first try to use a dynamic/shared library (if installed) via purego and will fall back to WASM.

Build tags

  • nodynamic - do not use dynamic/shared library (use only WASM)

Documentation

Overview

Package jpegxl implements an JPEG XL image decoder based on libjxl compiled to WASM.

Index

Constants

View Source
const DefaultEffort = 7

DefaultEffort is the default effort encoding parameter.

View Source
const DefaultQuality = 75

DefaultQuality is the default quality encoding parameter.

Variables

View Source
var (
	ErrMemRead  = errors.New("jpegxl: mem read failed")
	ErrMemWrite = errors.New("jpegxl: mem write failed")
	ErrDecode   = errors.New("jpegxl: decode failed")
	ErrEncode   = errors.New("jpegxl: encode failed")
)

Errors .

Functions

func Decode

func Decode(r io.Reader) (image.Image, error)

Decode reads a JPEG XL image from r and returns it as an image.Image.

func DecodeConfig

func DecodeConfig(r io.Reader) (image.Config, error)

DecodeConfig returns the color model and dimensions of a JPEG XL image without decoding the entire image.

func Dynamic added in v0.2.1

func Dynamic() error

Dynamic returns error (if there was any) during opening dynamic/shared library.

func Encode added in v0.2.4

func Encode(w io.Writer, m image.Image, o ...Options) error

Encode writes the image m to w with the given options.

Types

type JXL added in v0.1.4

type JXL struct {
	// Decoded images, NRGBA or NRGBA64.
	Image []image.Image
	// Delay times, one per frame, in seconds of a tick.
	Delay []int
}

JXL represents the possibly multiple images stored in a JXL file.

func DecodeAll added in v0.1.3

func DecodeAll(r io.Reader) (*JXL, error)

DecodeAll reads a JPEG XL image from r and returns the sequential frames and timing information.

type Options added in v0.2.4

type Options struct {
	// Quality in the range [0,100]. Quality of 100 enables lossless. Default is 75.
	Quality int
	// Effort in the range [1,10]. Sets encoder effort/speed level without affecting decoding speed. Default is 7.
	Effort int
}

Options are the encoding parameters.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL