2. wav읽을때 FrameSize란..?
#include<stdio.h>
#define FRAMESIZE 1024
int main(int argc, char* argv[]){
FILE *fin;
FILE *fout;
int i=0,j=0,length=0;
short data[FRAMESIZE];
fin = fopen("sound3.wav","rb");
fout= fopen("output.txt","wb");
while( ! feof(fin) ){
fread(data,sizeof(short),FRAMESIZE,fin);
i++; //읽을때마다 count
fwrite(data,sizeof(short),FRAMESIZE,fout);
}
printf("i 카운트 횟수 : %d\n",i);
fseek(fin,01,SEEK_END);
length=ftell(fin);
printf("파일사이즈 : %d\n",length);
printf("1024*353 *2(쇼트) : %d\n",1024*353*2
);
fcloseall();
printf("\n complete \n");
return 0;
}
카테고리 1번글의 소스에서 매 while문마다 i++를 해주었다.
그결과 353의 카운트가 있었다. 도대체 framesize를 왜 쓴것인가에 관해 궁금점이 생겨서 추측해본결과
wav파일을 rb 즉, 바이트 단위로 읽었기 때문에 data arr의 사이즈를 framesize(==1024)로 잡은것 같다.
파일 사이즈를 읽어오고 예상되는 값과 비교해보니 맞는것 같다.
나도 처음해는 분야이고 추측일 뿐이니.... 그냥 흘려 들으시길..