#include "y4m.h"
#include <assert.h>
#include <inttypes.h>
#include <limits.h>
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include "avif/avif.h"
#include "avifutil.h"
#define Y4M_MAX_LINE_SIZE …
struct y4mFrameIterator
{ … };
static avifBool y4mColorSpaceParse(const char * formatString, struct y4mFrameIterator * frame)
{ … }
static int y4mReadUnsignedInt(const char * start, const char * end)
{ … }
static avifBool y4mFramerateParse(char * framerateString, avifAppSourceTiming * sourceTiming)
{ … }
static avifBool getHeaderString(uint8_t * p, uint8_t * end, char * out, size_t maxChars)
{ … }
static int y4mReadLine(FILE * inputFile, avifRWData * raw, const char * displayFilename)
{ … }
static avifBool y4mClampSamples(avifImage * avif)
{ … }
#define ADVANCE(BYTES) …
avifBool y4mRead(const char * inputFilename,
uint32_t imageSizeLimit,
avifImage * avif,
avifAppSourceTiming * sourceTiming,
struct y4mFrameIterator ** iter)
{ … }
avifBool y4mWrite(const char * outputFilename, const avifImage * avif)
{ … }