diff options
Diffstat (limited to 'converter/ppm/ppmtompeg/headers/input.h')
-rw-r--r-- | converter/ppm/ppmtompeg/headers/input.h | 70 |
1 files changed, 70 insertions, 0 deletions
diff --git a/converter/ppm/ppmtompeg/headers/input.h b/converter/ppm/ppmtompeg/headers/input.h new file mode 100644 index 00000000..75734237 --- /dev/null +++ b/converter/ppm/ppmtompeg/headers/input.h @@ -0,0 +1,70 @@ +#ifndef INPUT_H_INCLUDED +#define INPUT_H_INCLUDED + +#include "pm_c_util.h" +#include "ppm.h" +#include "frame.h" + +struct InputFileEntry; + +struct inputSource { +/*---------------------------------------------------------------------------- + This describes the source of data for the program. + Typically, the source data is a bunch of raw frames in PPM format. + But sometimes, it is a bunch of already encoded frames or GOPs. +-----------------------------------------------------------------------------*/ + bool stdinUsed; + int numInputFiles; + /* This is the maximum number of input files available. If + we're reading from explicitly named files, it is exactly + the number available. If we're reading from a stream, it's + infinity. (At the moment, "reading from a stream" is + equivalent to "reading from Standard Input"). + */ + + /* Members below here defined only if 'stdinUsed' is false */ + + struct InputFileEntry ** inputFileEntries; + /* Each element of this array describes a set of input files. + Valid elements are consecutive starting at index 0. + */ + unsigned int numInputFileEntries; + /* Number of valid entries in array inputFileEntries[] */ + unsigned int ifArraySize; + /* Number of allocated entries in the array inputFileEntries[] */ +}; + + +void +GetNthInputFileName(struct inputSource * const inputSourceP, + unsigned int const n, + const char ** const fileName); + +void +ReadNthFrame(struct inputSource * const inputSourceP, + unsigned int const frameNumber, + boolean const remoteIO, + boolean const childProcess, + boolean const separateConversion, + const char * const slaveConversion, + const char * const inputConversion, + MpegFrame * const frameP, + bool * const endOfStreamP); + +void +JM2JPEG(struct inputSource * const inputSourceP); + +void +AddInputFiles(struct inputSource * const inputSourceP, + const char * const input); + +void +SetStdinInput(struct inputSource * const inputSourceP); + +void +CreateInputSource(struct inputSource ** const inputSourcePP); + +void +DestroyInputSource(struct inputSource * const inputSourceP); + +#endif |