X-Git-Url: http://git.asbjorn.biz/?a=blobdiff_plain;f=lib%2Frfxswf.h;h=da1573ab0af5f10b7d6b6fdcfd7343ec8fb70c25;hb=ec1409176c61594fd6c3c0311f4cea40772d47a6;hp=2dc338d134b4902de4a9e892a278ed162e51061f;hpb=469e1e998167801f48345b52b98d8bcb282b9f53;p=swftools.git diff --git a/lib/rfxswf.h b/lib/rfxswf.h index 2dc338d..da1573a 100644 --- a/lib/rfxswf.h +++ b/lib/rfxswf.h @@ -38,6 +38,7 @@ extern "C" { /* little/big endian stuff */ +#define PUT8(ptr,x) {((U8*)(ptr))[0]=x;} #define PUT16(ptr,x) {((U8*)(ptr))[0]=(U8)(x);((U8*)(ptr))[1]=(U8)((x)>>8);} #define PUT32(ptr,x) {((U8*)(ptr))[0]=(U8)(x);((U8*)(ptr))[1]=(U8)((x)>>8);((U8*)(ptr))[2]=(U8)((x)>>16);((U8*)(ptr))[3]=(U8)((x)>>24);} #define GET16(ptr) (((U16)(((U8*)(ptr))[0]))+(((U16)(((U8*)(ptr))[1]))<<8)) @@ -187,10 +188,12 @@ void swf_OptimizeTagOrder(SWF*swf); // basic routines: TAG * swf_InsertTag(TAG * after,U16 id); // updates frames, if necessary +TAG * swf_InsertTagBefore(SWF*swf, TAG * before,U16 id); // like InsertTag, but insert tag before argument int swf_DeleteTag(TAG * t); void swf_ClearTag(TAG * t); //frees tag data - +void swf_ResetTag(TAG*tag, U16 id); //set's tag position and length to 0, without freeing it + void swf_SetTagPos(TAG * t,U32 pos); // resets Bitcount U32 swf_GetTagPos(TAG * t); @@ -653,7 +656,7 @@ int swf_SetLosslessBitsGrayscale(TAG * t,U16 width,U16 height,U8 * bitmap); // swfsound.c void swf_SetSoundStreamHead(TAG*tag, int avgnumsamples); -void swf_SetSoundStreamBlock(TAG*tag, S16*samples, char first); /* expects 2304 samples */ +void swf_SetSoundStreamBlock(TAG*tag, S16*samples, int seek, char first); /* expects 2304 samples */ void swf_SetSoundDefine(TAG*tag, S16*samples, int num);