亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? layer3.c

?? MP3的軟件解碼代碼
?? C
字號:
/***********************************************
copyright by Haia Tech
www.haia2004.com
************************************************/


//#include <stdio.h>
//#include <stdlib.h>
#include "common.h"
#include "decode.h"

unsigned int   totpos=0;
unsigned char  buf[BITSTREAM_BUFSIZE];
unsigned int   frameNum=0,x4;
extern Bit_stream_struc  bs;
frame_params fr_ps; 
struct Granule grle[2][2];
short *pcm_dat;
short led;

extern unsigned short *mp3_dat;
extern unsigned int buf_byte_idx;


//FILE *file_p;

void mp3()
{
//	FILE *musicout;
	III_side_info_t III_side_info;
	III_scalefac_t III_scalefac;
	layer info;
	short pcm_sample[2][SSLIMIT][SBLIMIT];
	int i,j,k;

/*
	char *filename1="d:\\arm_app\\encode_mp3\\10.mp3";
	char *filename2="d:\\arm_app\\encode_mp3\\out.pcm" ;

    
	
	if ((musicout = fopen(filename2, "w+b")) == NULL) {
		printf ("Could not create \"%s\".\n", filename2);
		exit(1);
	}

	if ((file_p = fopen(filename1, "rb")) == NULL) {
		printf("Could not find \"%s\".\n", filename1);
		exit(1);
	}
*/

    mp3_dat=(unsigned short *)0x0c030000;
    pcm_dat=(short *)0x0c100000;
	fr_ps.header = &info; 
    open_bit_stream_r();
    frameNum=0;
    totpos=0;
    buf_byte_idx=0;
   
	while(!bs.eobs) {
		//嘗試幀同步 
		if (!seek_sync(SYNC_WORD)) {
//			printf("\nFrame cannot be located\n");
			break;
		}
		//解碼幀頭
		decode_info( );
		//將fr_ps.header中的信息解讀到fr_ps的相關域中
		hdr_to_frps();
		//輸出相關信息
//		printf("\r%05lu", frameNum);
        frameNum++;
		if(led)
		{
		  led=0;
      	  *(unsigned int *)0x1d20044=0xff;    //LED is Off
      	}
		else
		{
		  led=1;
      	  *(unsigned int *)0x1d20044=0xf7;    //LED is ON
      	}
		
		
		if(frameNum>500) break;
		
		if (info.error_protection)
			buffer_CRC();
		switch (info.lay) {
		case 3:
		{
			int nSlots, main_data_end, flush_main;
			int bytes_to_discard, gr, ch;

			static int frame_start = 0;    


			//取Side信息
			III_get_side_info(&III_side_info);
			nSlots = main_data_slots();

			 //讀主數據(Audio Data)
			for (; nSlots > 0; nSlots--)  /* read main data. */
				hputbuf((unsigned char) getbit(8));
			main_data_end = totpos / 8; /*of privious frame*/
			if ( flush_main=(totpos % bitsPerSlot) )
			{
				hgetbits((int)(bitsPerSlot - flush_main));
				main_data_end ++;
			}
			bytes_to_discard = frame_start - main_data_end - III_side_info.main_data_begin ;
			/*    最多=1  */
			if( main_data_end > BITSTREAM_BUFSIZE )
			{
				frame_start -= BITSTREAM_BUFSIZE;
				rewindNbytes( BITSTREAM_BUFSIZE);               //  totpos-=4096*8
			}

			frame_start += main_data_slots();
			if (bytes_to_discard < 0) {
//				printf("Not enough main data to decode frame %d.  Frame discarded.\n",
//						frameNum - 1); 
						break;
			}
			for (; bytes_to_discard > 0; bytes_to_discard--)
				hgetbits(8);

			for (gr=0;gr<2;gr++)
			{
//				double hybridIn[2][SBLIMIT][SSLIMIT];/* Hybrid filter input */
				SS  hybridIn[2];
  			    //主解碼
				for (ch=0; ch<fr_ps.stereo; ch++)
				{
				    int is[SBLIMIT][SSLIMIT];   /*保存量化數據 頻率線*/
				    int part2_start;
	 			    part2_start=totpos;
					//獲取比例因子
					III_get_scale_factors(&III_scalefac,&III_side_info, gr, ch);
					//Huffman解碼 

					III_hufman_decode(&grle[ch][gr],part2_start,is);

                    //逆量化采樣
					III_dequantize_sample(is, hybridIn[ch], &III_scalefac, &grle[ch][gr], ch);
				}
				//兩個聲道處理完,進行立體聲處理
				III_stereo(hybridIn, &III_scalefac, &grle[0][gr]);

				for (ch=0; ch<fr_ps.stereo; ch++) 
				{ 
					III_reorder(hybridIn[ch], &grle[ch][gr]);
					//反混疊處理
					III_antialias(hybridIn[ch],&grle[ch][gr]);
					//IMDCT 加窗 疊加 
                    Granule_imdct(&grle[ch][gr], ch, hybridIn[ch]);
					//多相頻率倒置  X(-1)

                    Granule_freqinverse(hybridIn[ch]);
				}
				//多相合成
                if(fr_ps.stereo == 2)  
                  Granule_subband_synthesis2(hybridIn[0],hybridIn[1],pcm_sample);
                else   // 單聲道處理
                  Granule_subband_synthesis( 0,hybridIn[0],pcm_sample);
//                  Granule_subband_synthesis( 1,hybridIn[1],pcm_sample);
				/* Output PCM sample points for one granule(顆粒). */
//                fwrite(pcm_sample,2,SBLIMIT*SSLIMIT*2,musicout);
                for(i=0;i<2;i++)
                  for(j=0;j<SSLIMIT;j++)
                    for(k=0;k<SBLIMIT;k++)
                    {
                       *pcm_dat=pcm_sample[i][j][k];
                       pcm_dat++;
                    }

			}
		} 
		break;  
		default:
//			printf("\nOnly layer III supported!\n");
//			exit(1);
			break;
		}
	}
//	fclose(file_p);
//	fclose(musicout);
//	printf("\nDecoding done.\n");

  	*(unsigned int *)0x1d20044=0xff;    //LED is Off
    while(1);
	return;
}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
亚洲精品欧美激情| 日韩黄色小视频| 亚洲午夜激情网页| 美腿丝袜一区二区三区| 成人av网址在线| 欧美日韩亚洲丝袜制服| 日韩欧美国产综合一区| 中文字幕在线不卡一区二区三区 | 日本 国产 欧美色综合| 麻豆精品国产91久久久久久| 波多野结衣在线一区| 欧美日韩国产大片| 国产区在线观看成人精品| 亚洲最大色网站| 久久蜜桃av一区精品变态类天堂 | 久久一区二区视频| 亚洲国产欧美另类丝袜| 粉嫩在线一区二区三区视频| 欧美大胆人体bbbb| 午夜精品一区二区三区三上悠亚| 99视频有精品| 国产精品视频一二三| 国产精品综合二区| 精品日韩一区二区三区| 日韩 欧美一区二区三区| 欧美天天综合网| 亚洲综合久久久| 色噜噜偷拍精品综合在线| 国产精品久久精品日日| 成人午夜在线播放| 国产欧美精品区一区二区三区| 麻豆91在线看| 久久先锋影音av| 精品一二线国产| 久久综合久久久久88| 狠狠色丁香婷综合久久| 亚洲精品在线免费观看视频| 久久99九九99精品| ww亚洲ww在线观看国产| 狠狠久久亚洲欧美| 国产欧美日韩视频一区二区| 懂色av中文一区二区三区| 欧美激情在线一区二区| 国产成人在线视频网站| 国产亚洲一区二区三区四区 | 免费观看一级欧美片| 欧美色网站导航| 午夜国产不卡在线观看视频| 欧美日韩久久久| 美女精品一区二区| 2021中文字幕一区亚洲| 国产麻豆精品theporn| 国产精品三级电影| 欧洲精品在线观看| 日日夜夜免费精品视频| 精品国产一区二区三区av性色| 韩国精品久久久| 国产精品久久久久久户外露出| 91片黄在线观看| 蜜臀va亚洲va欧美va天堂| 日韩一区二区三区免费看| 国产一区二区三区国产| 国产精品久久久久久久岛一牛影视 | 日韩欧美一级二级三级久久久| 老司机午夜精品| 国产精品丝袜黑色高跟| 欧美日韩一区二区三区免费看| 日韩av在线播放中文字幕| 精品国产sm最大网站免费看| 成人免费精品视频| 日韩成人午夜精品| 欧美国产精品专区| 在线视频中文字幕一区二区| 寂寞少妇一区二区三区| 中文字幕欧美一| 欧美一区二区三区精品| 99这里都是精品| 日韩不卡一区二区三区| 国产精品网曝门| 日韩三级在线观看| 99久久国产综合精品女不卡| 麻豆精品一区二区| 一区二区三区精品在线观看| 日韩精品中午字幕| 在线视频亚洲一区| 粉嫩av一区二区三区在线播放| 亚洲第四色夜色| 国产精品欧美一级免费| 欧亚洲嫩模精品一区三区| 韩国三级电影一区二区| 亚洲第一主播视频| 国产精品久久久久婷婷二区次| 日韩精品中文字幕在线一区| 91极品视觉盛宴| 韩国精品主播一区二区在线观看 | 国产欧美一区二区精品性| 欧美剧在线免费观看网站| 99天天综合性| 国产成人高清视频| 国内精品伊人久久久久av一坑| 亚洲一区二区美女| 综合久久一区二区三区| 中文字幕国产精品一区二区| 精品国产乱码久久久久久图片 | 亚洲国产cao| 中文字幕日本不卡| 亚洲国产精品99久久久久久久久| 日韩精品一区二区在线观看| 日本精品免费观看高清观看| 99综合影院在线| 成人在线视频首页| 国产精品亚洲专一区二区三区| 日韩成人一区二区| 亚洲成人免费在线观看| 亚洲精品成人在线| 一区二区三区四区精品在线视频| 国产欧美一区二区精品性| 久久精品欧美日韩精品| 欧美激情一区二区三区| 国产欧美日韩卡一| |精品福利一区二区三区| 中文字幕精品一区| 亚洲色图视频免费播放| 中文字幕一区二区三区在线观看| 国产色爱av资源综合区| 久久久久久一二三区| 久久久国产午夜精品 | 色综合视频一区二区三区高清| 国产精品99久久久久久久女警 | 一本色道久久综合亚洲aⅴ蜜桃 | caoporm超碰国产精品| 成人精品亚洲人成在线| 国产福利一区二区三区在线视频| 国产精品538一区二区在线| 国产一区二区在线电影| 成人免费不卡视频| 91在线云播放| 欧美亚洲国产bt| 欧美老年两性高潮| 日韩一区二区三| 精品国产乱码久久久久久1区2区 | 韩国av一区二区三区四区| 国产制服丝袜一区| av电影天堂一区二区在线观看| 日本高清不卡aⅴ免费网站| 91精品国产91热久久久做人人| 欧美一区2区视频在线观看| 精品国产3级a| 欧美激情一区二区三区不卡| 亚洲一区二区在线播放相泽| 久久91精品久久久久久秒播| 成人v精品蜜桃久久一区| 欧美羞羞免费网站| 久久这里都是精品| 一区二区三区**美女毛片| 日本成人在线一区| 色综合天天狠狠| 欧美不卡123| 亚洲在线观看免费| 国产乱码精品一区二区三区五月婷| 99国产精品久久| 精品黑人一区二区三区久久| 亚洲美女淫视频| 精品一区二区三区久久| 欧美性videosxxxxx| 久久久久久99精品| 日韩中文字幕一区二区三区| 国产成人在线视频免费播放| 91日韩一区二区三区| 精品卡一卡二卡三卡四在线| 中文字幕一区二区三区av| 精品一区二区免费视频| 欧美午夜片在线观看| 国产精品久久久久影院色老大| 久久国产精品露脸对白| 欧美艳星brazzers| **欧美大码日韩| 国产经典欧美精品| 日韩视频在线永久播放| 亚洲一区二区三区视频在线播放 | 亚洲精品成人天堂一二三| 国产福利91精品一区二区三区| 欧美日韩国产在线观看| 亚洲欧美日韩一区二区| 精久久久久久久久久久| 久久综合九色综合97婷婷女人| 亚洲愉拍自拍另类高清精品| 成人夜色视频网站在线观看| 欧美一卡在线观看| 首页国产欧美日韩丝袜| 色婷婷av一区二区三区软件| 久久久美女毛片| 久久激情综合网| 日韩午夜精品电影| 亚洲高清免费一级二级三级| 波多野结衣的一区二区三区| 国产三级精品在线| 成人免费va视频| 亚洲人成伊人成综合网小说| 99国产精品久久久久|