blob: cbe3774da32ddc64b2a74ca6320ee9e511cdef75 [file] [edit]
// Copyright 2019 Joe Drago. All rights reserved.
// SPDX-License-Identifier: BSD-2-Clause
#ifndef LIBAVIF_APPS_SHARED_AVIFPNG_H
#define LIBAVIF_APPS_SHARED_AVIFPNG_H
#include "avif/avif.h"
#ifdef __cplusplus
extern "C" {
#endif
// if (requestedDepth == 0), do best-fit
avifBool avifPNGRead(const char * inputFilename,
avifImage * avif,
avifPixelFormat requestedFormat,
uint32_t requestedDepth,
avifChromaDownsampling chromaDownsampling,
avifBool ignoreColorProfile,
avifBool ignoreExif,
avifBool ignoreXMP,
avifBool ignoreAlpha,
uint32_t imageSizeLimit,
uint32_t * outPNGDepth);
// Parse the PNG file at path 'inputFilename' and write its metadata into 'avif'
// without decoding the pixels.
avifBool avifPNGPeek(const char * inputFilename, avifImage * avif);
avifBool avifPNGWrite(const char * outputFilename,
const avifImage * avif,
uint32_t requestedDepth,
avifChromaUpsampling chromaUpsampling,
int compressionLevel);
#ifdef __cplusplus
} // extern "C"
#endif
#endif // ifndef LIBAVIF_APPS_SHARED_AVIFPNG_H