swf_SetSoundStreamBlock now doesn't have a framesize parameter anymore.
[swftools.git] / lib / rfxswf.h
index 594cd3b..9edaea0 100644 (file)
@@ -20,7 +20,9 @@
 #include <fcntl.h>
 #include <ctype.h>
 #include "../config.h"
-#include "bladeenc/codec.h"
+
+#define LAME
+#include "lame/lame.h"
 
 #define DEBUG_RFXSWF
 
@@ -145,6 +147,7 @@ typedef struct _ActionMarker
 
 typedef struct _SWF
 { U8            fileVersion;
+  U8           compressed;     // SWF or SWC?
   U32           fileSize;       // valid after load and save
   SRECT         movieSize;
   U16           frameRate;
@@ -156,6 +159,7 @@ typedef struct _SWF
 
 int  swf_ReadSWF(int handle,SWF * swf);     // Reads SWF to memory (malloc'ed), returns length or <0 if fails
 int  swf_WriteSWF(int handle,SWF * swf);    // Writes SWF to file, returns length or <0 if fails
+int  swf_WriteSWC(int handle, SWF * swf);   // Write Compressed SWF to file, returns length or <0 if fails
 int  swf_WriteCGI(SWF * swf);               // Outputs SWF with valid CGI header to stdout
 void swf_FreeTags(SWF * swf);               // Frees all malloc'ed memory for swf
 
@@ -280,6 +284,11 @@ int   swf_SetRGBA(TAG * t,RGBA * col);
 #define ST_EXPORTASSETS                56
 #define ST_IMPORTASSETS                57
 #define ST_ENABLEDEBUGGER      58
+#define ST_MX0                 59 /*(?) Components/InitClip */
+#define ST_MX1                 60 /*(?) Sorensen Video*/
+#define ST_MX2                 61 /*(?) Sorensen Video*/
+#define ST_MX3                 62 /*(?) fontinfo2? */
+#define ST_MX4                 63 /*(?) */
 
 #define ST_REFLEX              777 /* to identify generator software */
 
@@ -568,7 +577,8 @@ int swf_SetJPEGBitsLines(JPEGBITS * jpegbits,U8 ** data,int n);
 int swf_SetJPEGBitsLine(JPEGBITS * jpegbits,U8 * data);
 int swf_SetJPEGBitsFinish(JPEGBITS * jpegbits);
 
-int swf_SetJPEGBits(TAG * t,char * fname,int quality); // paste jpg file into swf stream
+int swf_SetJPEGBits(TAG * t,char * fname,int quality);
+void swf_SetJPEGBits2(TAG * t,U16 width,U16 height,RGBA * bitmap,int quality);
 
 #define BYTES_PER_SCANLINE(width) ((width+3)&0xfffffffc)
 
@@ -591,8 +601,9 @@ int swf_SetLosslessBitsGrayscale(TAG * t,U16 width,U16 height,U8 * bitmap);
 #ifndef RFXSWF_DISABLESOUND
 
 // swfsound.c
-void swf_SetSoundStreamHead(TAG*tag, U16 avgnumsamples);
-void swf_SetSoundStreamBlock(TAG*tag, S16*samples, int numsamples, char first);
+void swf_SetSoundStreamHead(TAG*tag, int avgnumsamples);
+/* expects 2304 samples */
+void swf_SetSoundStreamBlock(TAG*tag, S16*samples, char first);
 
 #endif // RFXSWF_DISABLESOUND