Turbo-C
C++Builder  |  Delphi  |  FireMonkey  |  C/C++  |  Free Pascal  |  Firebird
볼랜드포럼 BorlandForum
 경고! 게시물 작성자의 사전 허락없는 메일주소 추출행위 절대 금지
터보-C 포럼
Q & A
FAQ
팁&트릭
강좌/문서
자료실
Lua 게시판
볼랜드포럼 홈
헤드라인 뉴스
IT 뉴스
공지사항
자유게시판
해피 브레이크
공동 프로젝트
구인/구직
회원 장터
건의사항
운영진 게시판
회원 메뉴
북마크
볼랜드포럼 광고 모집

C/C++ Q/A
[6188] Re:wav파일 안 읽히는 이유좀...
kylix [] 10556 읽음    2008-04-15 18:21
패스를 명확히 기입하세요.
fp1=fopen("chil.wav", "r");
Current Directory에서 chil.wav파일을 찾는데 Current Directory와 wave파일이 있는 곳의 패스가 맞지 않는것 같네요...

khnet 님이 쓰신 글 :
: // turbo c code
:
: #include <stdio.h>
: #include <math.h>
: #include <conio.h>
: #include <stdlib.h>
: #include <string.h>
: #include "graphics.h"
:
:
: FILE *fp1, *fp2;
:
: void main()
: {
:
: int channel1=2, amplitude=3, epd=100, pixel=2, y=300, r=3, pronun1, pronun2;
: char *volume[10000]; //, filename[30], *fnstring="c:\tc";
: unsigned long sample=1, frmnum=1, zcrnum=1, i;
: long frame[10000], zcr[10000], zcrslope[10000], frmslope[10000];
: short mode;
: int frmsize=128*channel1, overlap=64*channel1;
:
:
: frame[1]=0, zcr[1]=0, frmslope[0]=0, zcrslope[0]=0;
:
: // file I/O
:
: void clrscr();
:
: // printf("Input file name : ");
: // scanf("%s", &filename);
: // strcat(fnstring, filename);
:
: //if((fp1=fopen("c:chil.wav", "r"))!=NULL)
: //fp2=fopen("sound.dat", "w+");
:
: //else
: //{
: //printf("File not found\n");
: //exit(1);
: //}
:
: fp1=fopen("chil.wav", "r");
: // fp2=fopen("sound.dat", "w");
: fseek(fp1, 44L, 0);
:
: while((fread(volume[sample], channel1 , 1, fp1))!=NULL)
: {
:
: long prevol=(atol(volume[sample-1]));
: long nowvol=(atol(volume[sample]));
:
: // fwrite(volume[sample], channel1, 1, fp2);
: i=0;
: frame[frmnum]=frame[frmnum]+(labs(nowvol));
:
: if(prevol*nowvol<=0)
: zcr[zcrnum]=zcr[zcrnum]+1;
:
: if(sample==(frmsize+(i*overlap)))
: {
: frmnum=frmnum+1;
: zcrnum=zcrnum+1;
: fseek(fp1, -overlap, 1);
: sample=sample-overlap;
: }
:
: sample=sample+1;
: i=i+1;
:
: }  // file I/O end
:
: fclose(fp1); // fclose(fp2);
:
: // 1
:
: unsigned long preslope=frmslope[i-1]*zcrslope[i-1];
: unsigned long nowslope=frmslope[i]*zcrslope[i];
:
: for(i=1;i<=(ceil(frmnum/2));i++)
: {
: zcrslope[1]=(labs(zcr[i+1]-zcr[i]));
: frmslope[i]=(labs(frame[i+1]-frame[i]));
:
: if(preslope<=nowslope)
: pronun1=i;
: }
:
: // 2
:
: for(i=((frmnum/2)+1);i<=(frmnum-1);i++)
: {
: zcrslope[i]=(labs(zcr[i+1]-zcr[i]));
: frmslope[i]=(labs(frame[i+1]-frame[i]));
:
: if(preslope<=nowslope)
: {
: if(zcr[i]>epd){
: pronun2=i;
: goto graph; }
: }
:
: }
:
: // graph
:
: graph:
:
: int graphdriver=DETECT, graphmode;
: initgraph(&graphdriver, &graphmode, " ");
: cleardevice();
:
: //int gdr, gmode;
: //gdr=DETECT; // autodetect of graphic driver
: //initgraph(&gdr,&gmode,"..\\bgi");
:
: for(mode=1;mode<=3;mode++)
: {
: line(pixel, y*mode, sample*pixel, y*mode);
:
: switch(mode)
: {
:
: case 1:  // timbre
:
: for(i=1;volume[i+1]!=NULL;i++)
: {
: if(volume[i+1]!=NULL)
: line(pixel*i, (y*mode)-(amplitude*(*volume[i])), pixel*(i+1), (y*mode)-(amplitude*(*volume[i+1])));
: }
: break;
:
: case 2:  // volume
:
: for(i=1;i<=frmnum;i++)
: {
: circle(pixel*(frmsize+((i-1)*overlap)), (y*mode)-(amplitude*frame[i]), r);
:
: if ((i+1)<=frmnum)
: line(pixel*(frmsize+((i-1)*overlap)), (y*mode)-(amplitude*frame[i]), pixel*(frmsize+(i*overlap)), (y*mode)-(amplitude*frame[i+1]));
: }
: break;
:
: default:  // zcr
:
: for(i=1;i<=zcrnum;i++)
: {
: circle(pixel*(frmsize+((i-1)*overlap)), (y*mode)-(amplitude*zcr[i]), r);
:
: if((i+1)<=zcrnum)
: line(pixel*(frmsize+((i-1)*overlap)), (y*mode)-(amplitude*zcr[i]), pixel*(frmsize+(i*overlap)), (y*mode)-(amplitude*zcr[i+1]));
: }
: break;
:
: } // switch end
:
: } // for end
:
: line(pixel*pronun1, y-(y*(3/4)), pixel*pronun1, (y*3)+(y*(1/4)));
: line(pixel*pronun2, y-(y*(3/4)), pixel*pronun2, (y*3)+(y*(1/4)));
:
: void closegraph();
:
: } // main end
:
: 여기서 wav파일이 안읽히는 이유가 뭔지 모르겠네요... 에러랑 경고는 다 제거 했는데....
: 전 도저히 모르겠네요.... 부탁드려요.... 제발 가르쳐주세요....

+ -

관련 글 리스트
6187 wav파일 안 읽히는 이유좀... khnet 8364 2008/04/15
6188     Re:wav파일 안 읽히는 이유좀... kylix 10556 2008/04/15
Google
Copyright © 1999-2015, borlandforum.com. All right reserved.