summaryrefslogtreecommitdiffstats
path: root/libmpcodecs/native/common1428.h
diff options
context:
space:
mode:
Diffstat (limited to 'libmpcodecs/native/common1428.h')
-rw-r--r--libmpcodecs/native/common1428.h34
1 files changed, 34 insertions, 0 deletions
diff --git a/libmpcodecs/native/common1428.h b/libmpcodecs/native/common1428.h
new file mode 100644
index 0000000000..e49a7b68c5
--- /dev/null
+++ b/libmpcodecs/native/common1428.h
@@ -0,0 +1,34 @@
+#ifndef COMMON_H
+#define COMMON_H
+
+#include <stdlib.h>
+#include <unistd.h>
+#include <string.h>
+#include <math.h>
+
+#define DATABLOCK1 20 /* size of 14.4 input block in bytes */
+#define DATABLOCK2 38 /* size of 28.8 input block in bytes */
+#define DATACHUNK1 1440 /* size of 14.4 input chunk in bytes */
+#define DATACHUNK2 2736 /* size of 28.8 input chunk in bytes */
+#define AUDIOBLOCK 160 /* size of output block in 16-bit words (320 bytes) */
+//#define AUDIOBUFFER 11520 /* size of output buffer in 16-bit words (23040 bytes) */
+#define AUDIOBUFFER 12288 /* size of output buffer in 16-bit words (24576 bytes) */
+
+typedef void Real_144;
+typedef void Real_288;
+typedef void Real_dnet;
+
+/* common prototypes */
+Real_144 *init_144 (void);
+Real_288 *init_288 (void);
+Real_dnet *init_dnet (void);
+void free_144 (Real_144 *global);
+void free_288 (Real_288 *global);
+void free_dnet (Real_dnet *global);
+void deinterleave (unsigned char *in, unsigned char *out, unsigned int size);
+void swapbytes (unsigned char *in, unsigned char *out, unsigned int len);
+void decode_144 (Real_144 *global, unsigned char *source, signed short *target);
+void decode_288 (Real_288 *global, unsigned char *in, signed short *out);
+int decode_dnet (Real_dnet *global, unsigned char *in, signed short *out, int *freq, int chans);
+
+#endif /* !COMMON_H */