From 20d28e80a5c861a9d5f449ea911ab75b4f37ad0d Mon Sep 17 00:00:00 2001 From: Jef Date: Tue, 24 Sep 2024 14:54:57 +0200 Subject: Initial community commit --- Src/libvp6/include/on2cmp.h | 49 +++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 49 insertions(+) create mode 100644 Src/libvp6/include/on2cmp.h (limited to 'Src/libvp6/include/on2cmp.h') diff --git a/Src/libvp6/include/on2cmp.h b/Src/libvp6/include/on2cmp.h new file mode 100644 index 00000000..0989d8ca --- /dev/null +++ b/Src/libvp6/include/on2cmp.h @@ -0,0 +1,49 @@ +#ifndef ON2CMP_H +#define ON2CMP_H +//********************************************************************* +// name : on2comp.h +// desc : Stand-alone command line compression application +// that takes as input rvd files that are in planar yv12 format +// and produces as output one ore more files that contain one or +// more vp31 compressed video streams, as determined by command +// line parameters. +// date : 04/21/00 +// Who : Jim Bankoski +// Mods : +// Sep 21 2000 Reworked entire structure to be cleaner and more modular +//********************************************************************* + +#include + +typedef int (*ProgressFunction) +( + int Frame, + double SecondsWritten, + double PercentComplete, + int BytesWritten, + std::vector vBytesWritten, + std::vector vMinBufferSize +); + +class fileCompressor +{ +public: + enum fileCompressorType + { + VP31, + VP40, + VP50 + }; + + virtual void compress ( + ProgressFunction pf, + int updateEvery, + int argc, + char* argv[], + int outFileType) = 0; + + virtual ~fileCompressor(); + static fileCompressor* Make(fileCompressorType); +}; + +#endif // ON2CMP_H -- cgit