1
1
Fork 0
mirror of https://github.com/QB64-Phoenix-Edition/QB64pe.git synced 2024-09-19 15:35:01 +00:00
QB64-PE/internal/c/parts/audio/decode/mp3/misc/main_hack.txt

67 lines
1.5 KiB
Text
Raw Normal View History

//*********************************************************
//decode in_buf to out_buf
#define MP3_ERR -1
#define MP3_OK 0
#define MP3_NEED_MORE 1
int status;
struct mpstr mp;
InitMP3(&mp);
int inlen;
inlen=21759;
int outlen;
outlen=0;
int OUT_BUF_SIZE;
OUT_BUF_SIZE=50000000;
char *bufin;
bufin=(char*)((uptrszint)((&(((uint8*)(__ARRAY_UBYTE_IN_BUF[0]))[array_check(( 0 )-__ARRAY_UBYTE_IN_BUF[4],__ARRAY_UBYTE_IN_BUF[5])]))));
char *bufout;
bufout=(char*)((uptrszint)((&(((uint8*)(__ARRAY_UBYTE_OUT_BUF[0]))[array_check(( 0 )-__ARRAY_UBYTE_OUT_BUF[4],__ARRAY_UBYTE_OUT_BUF[5])]))));
status = decodeMP3(&mp,bufin,inlen,bufout,OUT_BUF_SIZE,&outlen);
bufout+=outlen;
ddd:
status = decodeMP3(&mp,NULL,0,bufout,OUT_BUF_SIZE,&outlen);
bufout+=outlen;
if ((status==0)&&(outlen!=0)) goto ddd;
//status = decodeMP3(&mp,buf,len,out,8192,&size);
/*
while(1) {
37 len = read(0,buf,16384);
38 if(len <= 0)
39 break;
40 ret = decodeMP3(&mp,buf,len,out,8192,&size);
41 while(ret == MP3_OK) {
42 write(1,out,size);
43 ret = decodeMP3(&mp,NULL,0,out,8192,&size);
44 }
45 }
// Initialize buffer
status = decodeMP3(&mp,bufin,inlen,bufout,OUT_BUF_SIZE,&outlen);
qbs_print(qbs_str(status),1);
qbs_print(qbs_str(outlen),1);
// Decode buffer
// status = decodeMP3(&mp,NULL,0,bufout,OUT_BUF_SIZE,&outlen);
status = decodeMP3(&mp,NULL,0,bufout,OUT_BUF_SIZE,&outlen);
qbs_print(qbs_str(status),1);
qbs_print(qbs_str(outlen),1);
*/