new setblock prototype.
authorkramm <kramm>
Mon, 20 May 2002 12:03:41 +0000 (12:03 +0000)
committerkramm <kramm>
Mon, 20 May 2002 12:03:41 +0000 (12:03 +0000)
lib/example/sound.c

index 5019748..553aaea 100644 (file)
@@ -19,9 +19,9 @@ int main (int argc,char ** argv)
 { SWF swf;
   RGBA rgb;
   SRECT r;
-  int blocksize = 576*4;
+  int blocksize = 2304;
   S32 width=300,height = 300;
-  U16 block[blocksize*2];
+  U16 block[blocksize];
   TAG * tag;
   
   int f,i,ls1,fs1;
@@ -31,7 +31,7 @@ int main (int argc,char ** argv)
   memset(&swf,0x00,sizeof(SWF));        // set global movie parameters
 
   swf.fileVersion    = 4;               // make flash 4 compatible swf
-  swf.frameRate      = 40*256;          // about 19 frames per second
+  swf.frameRate      = 18*256;          // about 18 frames per second
   
   swf.movieSize.xmax = 20*width;        // flash units: 1 pixel = 20 units ("twips")
   swf.movieSize.ymax = 20*height;
@@ -44,17 +44,16 @@ int main (int argc,char ** argv)
   swf_SetRGB(tag,&rgb);
   
   tag = swf_InsertTag(tag, ST_SOUNDSTREAMHEAD2);
-  swf_SetSoundStreamHead(tag, blocksize);
+  swf_SetSoundStreamHead(tag, 11025/18);
 
-  for(t=0;t<64;t++) {
+  for(t=256;t>=0;t--) {
       int s;
       tag = swf_InsertTag(tag, ST_SOUNDSTREAMBLOCK);
-      for(s=0;s<blocksize*2;s++) {
-         block[s] = 32767 + (int)(32767*sin((s*t*16*3.14159)/blocksize));
+      for(s=0;s<blocksize;s++) {
+         block[s] = (int)(32767*sin(s*8*3.14159/blocksize));
+         if(t==0) block[s] = 0;
       }
-      swf_SetSoundStreamBlock(tag, block, blocksize,1);
-      swf_SetSoundStreamBlock(tag, &block[blocksize], blocksize,0);
-      swf_SetSoundStreamBlock(tag, &block[blocksize], blocksize,0);
+      swf_SetSoundStreamBlock(tag, block, 1);
       tag = swf_InsertTag(tag, ST_SHOWFRAME);
   }