# HG changeset patch # User arpi_esp # Date 989780303 0 # Node ID 214ea3f02d13345bf3ee9ba07d3e74a57912f2ff # Parent 9bc104531aec5815fdd544784b4c28e9f9b422bd test.c added for benchmarking diff -r 9bc104531aec -r 214ea3f02d13 mp3lib/Makefile --- a/mp3lib/Makefile Sun May 13 18:30:53 2001 +0000 +++ b/mp3lib/Makefile Sun May 13 18:58:23 2001 +0000 @@ -18,6 +18,9 @@ libMP3.a: .depend $(OBJS) $(AR) r libMP3.a $(OBJS) +test: libMP3.a test.c + $(CC) $(CFLAGS) test.c -o test -I.. -L. -lMP3 + all: libMP3.a clean: diff -r 9bc104531aec -r 214ea3f02d13 mp3lib/test.c --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/mp3lib/test.c Sun May 13 18:58:23 2001 +0000 @@ -0,0 +1,62 @@ + +// gcc test.c -I.. -L. -lMP3 -o test -O4 + +#include +#include + +#include +#include + +#include "mp3lib/mp3.h" +#include "config.h" + +static inline unsigned int GetTimer(){ + struct timeval tv; + struct timezone tz; +// float s; + gettimeofday(&tv,&tz); +// s=tv.tv_usec;s*=0.000001;s+=tv.tv_sec; + return (tv.tv_sec*1000000+tv.tv_usec); +} + +static FILE* mp3file=NULL; + +int mplayer_audio_read(char *buf,int size){ + return fread(buf,1,size,mp3file); +} + +#define BUFFLEN 4608 +static unsigned char buffer[BUFFLEN]; + +int main(int argc,char* argv[]){ + int len; + int total=0; + unsigned int time1; + float length; + + mp3file=fopen((argc>1)?argv[1]:"test.mp3","rb"); + if(!mp3file){ printf("file not found\n"); exit(1); } + + // MPEG Audio: +#ifdef USE_FAKE_MONO + MP3_Init(0); +#else + MP3_Init(); +#endif + MP3_samplerate=MP3_channels=0; + + time1=GetTimer(); + while((len=MP3_DecodeFrame(buffer,-1))>0){ + total+=len; + // play it + //putchar('.');fflush(stdout); + } + time1=GetTimer()-time1; + length=(float)total/(float)(MP3_samplerate*MP3_channels*2); + printf("\nDecoding time: %8.6f\n",(float)time1*0.000001f); + printf("Uncompressed size: %d bytes (%8.3f secs)\n",total,length); + printf("CPU usage at normal playback: %5.2f %\n",time1*0.0001f/length); + + fclose(mp3file); + +}