aboutsummaryrefslogtreecommitdiff
path: root/Src/libvp6/include/on2cmp.h
diff options
context:
space:
mode:
authorJef <jef@targetspot.com>2024-09-24 08:54:57 -0400
committerJef <jef@targetspot.com>2024-09-24 08:54:57 -0400
commit20d28e80a5c861a9d5f449ea911ab75b4f37ad0d (patch)
tree12f17f78986871dd2cfb0a56e5e93b545c1ae0d0 /Src/libvp6/include/on2cmp.h
parent537bcbc86291b32fc04ae4133ce4d7cac8ebe9a7 (diff)
downloadwinamp-20d28e80a5c861a9d5f449ea911ab75b4f37ad0d.tar.gz
Initial community commit
Diffstat (limited to 'Src/libvp6/include/on2cmp.h')
-rw-r--r--Src/libvp6/include/on2cmp.h49
1 files changed, 49 insertions, 0 deletions
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 <vector>
+
+typedef int (*ProgressFunction)
+(
+ int Frame,
+ double SecondsWritten,
+ double PercentComplete,
+ int BytesWritten,
+ std::vector<int> vBytesWritten,
+ std::vector<int> 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