Skip to content

Instantly share code, notes, and snippets.

@dolpen
Created October 10, 2011 12:53
Show Gist options
  • Select an option

  • Save dolpen/1275229 to your computer and use it in GitHub Desktop.

Select an option

Save dolpen/1275229 to your computer and use it in GitHub Desktop.
適当に > a.wavとかして聞いてあそぶ用
#include<stdio.h>
#define LENGTH (65536)
#define RATE 8000
#define CH 1
#define BIT 8
void push_header(){
int i;
printf("RIFF");
for(i=0;i<4;i++)putchar(((LENGTH+36)>>(8*i))&0xff);//filesize
printf("WAVEfmt ");
putchar(0x10);putchar(0);putchar(0);putchar(0);//pcm
putchar(1);putchar(0);//pcm
putchar(CH);putchar(0);//mono
for(i=0;i<4;i++)putchar(((RATE)>>(8*i))&0xff);//byte/sec
for(i=0;i<4;i++)putchar((((RATE*CH*BIT)>>3)>>(8*i))&0xff);//blk_size
putchar((CH*BIT)>>3);putchar(0);//bit/sample
putchar(BIT);putchar(0);//bit
printf("data");
for(i=0;i<4;i++)putchar(((LENGTH)>>(8*i))&0xff);//filesize
}
int main(){
int t=0;
push_header();
while(t++<LENGTH)
putchar(
((t*(t>>8|t>>5))>>(t>>16))&((t>>4)>>(t>>16))
);
return 0;
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment