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

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

?? play_asf.c

?? SigmDesign SMP8634 media decode chip development SDK
?? C
?? 第 1 頁 / 共 5 頁
字號:
	if (pSendContext->Video_Codec_Specific_Data_Received == Codec_Specific_Data_Size) {		pSendContext->video_stream_index = Stream_Number;		pSendContext->Compression_ID = Compression_ID;				RMDBGLOG((ENABLE, "    Image Width = %lu, Image Height = %lu, Codec = ", Image_Width, Image_Height));#ifdef _DEBUG		for(i = 0; i < 4; i++)			fprintf(stderr, "%c", (char)(Compression_ID >> (i * 8)) & 255);		fprintf(stderr, " (0x");		for(i = 0; i < 4; i++)			fprintf(stderr, "%02x", (char)(Compression_ID >> (i * 8)) & 255);		fprintf(stderr, ")\n");#endif		if(Compression_ID == 0x33564D57) { // WMV3			int bit_select;			/* when used in mono, use codec auto detection */#ifdef WITH_MONO			if ((Image_Width <= 720) && (Image_Height <= 576)) {				pSendContext->video_opt->Codec = VideoDecoder_Codec_WMV_SD;				pSendContext->video_opt->MPEGProfile = Profile_WMV_SD;				RMDBGLOG((ENABLE, "MONO: Selecting wmv9 SD\n"));			}			else if ((Image_Width <= 1440) && (Image_Height <= 816)) {				pSendContext->video_opt->Codec = VideoDecoder_Codec_WMV_816P;				pSendContext->video_opt->MPEGProfile = Profile_WMV_816P;				RMDBGLOG((ENABLE, "MONO: Selecting wmv9 816P\n"));			}			else if ((Image_Width <= 1920) && (Image_Height <= 1088)) {				pSendContext->video_opt->Codec = VideoDecoder_Codec_WMV_HD;				pSendContext->video_opt->MPEGProfile = Profile_WMV_HD;				RMDBGLOG((ENABLE, "MONO: Selecting wmv9 HD\n"));			}			else {				RMDBGLOG((ENABLE, "MONO: Unsupported wmv9 video size %lu %lu\n", Image_Width, Image_Height));			}#endif // WITH_MONO			bit_select = (Codec_Specific_Data[0] >> 6) & 3;			switch (bit_select) {			case 0: RMDBGLOG((ENABLE, "    Simple Profile\n")); break; // Supported			case 1: RMDBGLOG((ENABLE, "    Main Profile\n")); break; // Supported			case 2: { // Not supported				RMDBGLOG((ENABLE, "    Complex Profile\n")); 				fprintf(stderr, " Complex Profile is not supported by this hardware! \n"); 				pSendContext->unsupported_video = TRUE;				return;			}			case 3: RMDBGLOG((ENABLE, "    Error in PROFILE\n")); break;			}						bit_select = (Codec_Specific_Data[0] >> 5) & 1;      			if (bit_select) {				RMDBGLOG((ENABLE, "    Interlaced mode\n"));				fprintf(stderr, ">>> WARNING: this stream is marked as interlaced and it's not supported by the hardware, playback might fail\n");			}			else				RMDBGLOG((ENABLE, "    Progressive mode\n"));						bit_select = (Codec_Specific_Data[0] >> 4) & 1;      			if(bit_select) {				RMDBGLOG((ENABLE, "    Sprite mode on\n")); // Not supported				fprintf(stderr, " Sprite mode is not supported by this hardware! \n"); 				pSendContext->unsupported_video = TRUE;				return;			}			else				RMDBGLOG((ENABLE, "    Sprite mode off\n"));						bit_select = (Codec_Specific_Data[0] >> 1) & 7;            			RMDBGLOG((ENABLE, "    Framerate is %0d fps\n", bit_select * 4 + 2));						bit_select = (((Codec_Specific_Data[0] >> 0) & 1) << 4) + ((Codec_Specific_Data[1] >> 4) & 15); 			if(bit_select == 31) // All supported				RMDBGLOG((ENABLE, "    Bitrate is > 4064 kbps\n"));			else				RMDBGLOG((ENABLE, "    Bitrate is %0d kbps\n", bit_select * 64 + 32));									bit_select = (Codec_Specific_Data[1] >> 3) & 1;            			if(bit_select) {// All supported					RMDBGLOG((ENABLE, "    Loop filter on\n")); // Supported					bit_select = (Codec_Specific_Data[0] >> 6) & 3;					if(bit_select == 0)						RMDBGLOG((ENABLE, "Loop filter incompatible with simple profile\n"));			} else				RMDBGLOG((ENABLE, "    Loop filter off\n"));						bit_select = (Codec_Specific_Data[1] >> 2) & 1;            			if(bit_select) { // Simple and main, should be 0				RMDBGLOG((ENABLE, "    XINTRA8 on\n"));  // Not supported				fprintf(stderr, " XINTRA8 ON is only valid with complex profile and is not supported by this hardware! \n"); 				pSendContext->unsupported_video = TRUE;				return;				bit_select = (Codec_Specific_Data[0] >> 6) & 3;				if(bit_select != 2)					RMDBGLOG((ENABLE, "XINTRA8 only present in complex profile\n"));			} else				RMDBGLOG((ENABLE, "    XINTRA8 off\n"));						bit_select = (Codec_Specific_Data[1] >> 1) & 1;            			if(bit_select) { // All supported				RMDBGLOG((ENABLE, "    Multiresolution on\n"));				bit_select = (Codec_Specific_Data[0] >> 6) & 3;				if(bit_select == 0)					RMDBGLOG((ENABLE, "Multiresolution incompatible with simple profile\n"));			}			else				RMDBGLOG((ENABLE, "    Multiresolution off\n"));						bit_select = (Codec_Specific_Data[1] >> 0) & 1;            			if(bit_select) // Simple and main should be 1				RMDBGLOG((ENABLE, "    Fast Transform on\n"));  			else {				RMDBGLOG((ENABLE, "    Fast Transform off\n")); // Not supported				fprintf(stderr, " Fast transform OFF is only valid with complex profile and is not supported by this hardware! \n");				pSendContext->unsupported_video = TRUE;				return;				if(bit_select != 2)					RMDBGLOG((ENABLE, " IDCT is present\n"));			}						bit_select = (Codec_Specific_Data[2] >> 7) & 1;            			if(bit_select)  // All supported				RMDBGLOG((ENABLE, "    Fast UVMC on\n"));			else				RMDBGLOG((ENABLE, "    Fast UVMC off\n"));						bit_select = (Codec_Specific_Data[2] >> 6) & 1;            			if(bit_select) {				RMDBGLOG((ENABLE, " Broadcast ON\n")); 			}			else				RMDBGLOG((ENABLE, "    Broadcast off\n"));						bit_select = (Codec_Specific_Data[2] >> 4) & 3;        			switch(bit_select) { // All supported			case 0: RMDBGLOG((ENABLE, "    Frame quantization step size\n")); break;			case 1: 				{					RMDBGLOG((ENABLE, "    Macroblock quantization step size\n"));					bit_select = (Codec_Specific_Data[0] >> 6) & 3;					if(bit_select == 0)						RMDBGLOG((ENABLE, "DQUANT incompatible with simple profile\n"));					break;				}			case 2:				{					RMDBGLOG((ENABLE, "    Boundary alternate quantization\n"));					bit_select = (Codec_Specific_Data[0] >> 6) & 3;					if(bit_select == 0)						RMDBGLOG((ENABLE, "DQUANT incompatible with simple profile\n"));					break;				}			case 3: RMDBGLOG((ENABLE, "Error in DQUANT\n")); break;			}						bit_select = (Codec_Specific_Data[2] >> 3) & 1;        			if(bit_select)				RMDBGLOG((ENABLE, "    Variable size transform on\n")); // Supported			else				RMDBGLOG((ENABLE, "    Variable size transform off\n"));						bit_select = (Codec_Specific_Data[2] >> 2) & 1;        			if(bit_select)				RMDBGLOG((ENABLE, "    Transform table switching on\n"));  // Supported			else				RMDBGLOG((ENABLE, "    Transform table switching off\n"));						bit_select = (Codec_Specific_Data[2] >> 1) & 1;        			if(bit_select)				RMDBGLOG((ENABLE, "    Overlap filter on\n"));  // Supported			else				RMDBGLOG((ENABLE, "    Overlap filter off\n"));						bit_select = (Codec_Specific_Data[2] >> 0) & 1;        			if(bit_select) {				RMDBGLOG((ENABLE, "    Startcodes present\n")); // Not supported by microcode if 1 - Could be written				RMDBGLOG((ENABLE, " ***************** WARNING ************************\n"));				RMDBGLOG((ENABLE, " ***************** WARNING ************************\n"));				RMDBGLOG((ENABLE, " Start code present not be supported yet! \n")); 				RMDBGLOG((ENABLE, " ***************** WARNING ************************\n"));				RMDBGLOG((ENABLE, " ***************** WARNING ************************\n"));			}			else				RMDBGLOG((ENABLE, "    No startcodes\n"));						bit_select = (Codec_Specific_Data[3] >> 7) & 1;        			if(bit_select)				RMDBGLOG((ENABLE, "    Preprocessing on\n")); // Supported			else				RMDBGLOG((ENABLE, "    Preprocessing off\n"));						bit_select = (Codec_Specific_Data[3] >> 4) & 7; // Supported			if(bit_select)				RMDBGLOG((ENABLE, "    %d consecutive B-frames\n", bit_select));			else				RMDBGLOG((ENABLE, "    No B-frames\n"));						bit_select = (Codec_Specific_Data[3] >> 2) & 3;			switch(bit_select) { // All supported			case 0: RMDBGLOG((ENABLE, "    Quantizer implicitly specified at frame level\n")); break;			case 1: RMDBGLOG((ENABLE, "    Quantizer explicitly specified at frame level\n")); break;			case 2: RMDBGLOG((ENABLE, "    5QP deadzone quantizer user for all frames\n")); break;			case 3: RMDBGLOG((ENABLE, "    3QP deadzone quantizer user for all frames\n")); break;			}						bit_select = (Codec_Specific_Data[3] >> 1) & 1;        			if(bit_select) { // Not in spec... Usefull? (Frederic)				RMDBGLOG((ENABLE, "    Frame interpolation on\n"));				RMDBGLOG((ENABLE, " ***************** WARNING ************************\n"));				RMDBGLOG((ENABLE, " ***************** WARNING ************************\n"));				RMDBGLOG((ENABLE, " Frame interpolation may not be supported! \n")); 				RMDBGLOG((ENABLE, " ***************** WARNING ************************\n"));				RMDBGLOG((ENABLE, " ***************** WARNING ************************\n"));			}			else				RMDBGLOG((ENABLE, "    Frame interpolation off\n"));						bit_select = (Codec_Specific_Data[3] >> 0) & 1;        			if(bit_select)				RMDBGLOG((ENABLE, "    Release encoder used\n"));			else {				RMDBGLOG((ENABLE, "    Beta encoder used\n")); // Not supported				fprintf(stderr, " This file has been created by a WMV9 BETA encoder! \n"); 				fprintf(stderr, " This file is not supported due to changes that\n"); 				fprintf(stderr, " may have occured between this BETA version and the\n"); 				fprintf(stderr, " final version off Microsoft WMV9 encoder.\n"); 				pSendContext->unsupported_video = TRUE;				return;			}		} 		else if(Compression_ID == 0x3334504D) { // MP43			pSendContext->video_stream_index = Stream_Number;			pSendContext->divx3_prop.Image_Width = (RMuint16) Image_Width;			pSendContext->divx3_prop.Image_Height = (RMuint16) Image_Height;			/* when used in mono, use codec auto detection */#ifdef WITH_MONO			if ((Image_Width <= 720) && (Image_Height <= 576)) {				pSendContext->video_opt->Codec = VideoDecoder_Codec_DIVX3_SD;				pSendContext->video_opt->MPEGProfile = Profile_DIVX3_SD;				RMDBGLOG((ENABLE, "MONO: Selecting divx3 SD\n"));			}			else if ((Image_Width <= 1920) && (Image_Height <= 1088)) {				pSendContext->video_opt->Codec = VideoDecoder_Codec_DIVX3_HD;				pSendContext->video_opt->MPEGProfile = Profile_DIVX3_HD;				RMDBGLOG((ENABLE, "MONO: Selecting divx3 HD\n"));			}			else {				pSendContext->unsupported_video = TRUE;				RMDBGLOG((ENABLE, "MONO: Unsupported divx3 video size %lu %lu\n", Image_Width, Image_Height));			}#endif // WITH_MONO			RMDBGLOG((ENABLE, "    Found old WMV format (DivX3.11): %d x %d\n", 				  (int) pSendContext->divx3_prop.Image_Width, (int) pSendContext->divx3_prop.Image_Height));		}		else if ((Compression_ID == 0x41564D57) //WMVA - Windows Media Video 9 Advanced Profile			 || 			 (Compression_ID == 0x31435657) // WVC1 			 ) { 			RMuint8 *pByte;			int index;			RMDBGLOG((ENABLE, ">> VC1 Advanced Profile\n"));			if (Codec_Specific_Data[0] & (1<<5))				RMDBGLOG((ENABLE, ">> progressive sequence\n"));						if (Codec_Specific_Data[0] & (1<<4))				RMDBGLOG((ENABLE, ">> single sequence header\n"));						if (Codec_Specific_Data[0] & (1<<3))				RMDBGLOG((ENABLE, ">> single entry point header\n"));						if (Codec_Specific_Data[0] & (1<<2))				RMDBGLOG((ENABLE, ">> single slice pictures\n"));						if (Codec_Specific_Data[0] & (1<<1))				RMDBGLOG((ENABLE, ">> no B frames\n"));			pSendContext->seqHeader = (RMuint8 *)RMMalloc((Partial_Codec_Specific_Data_Size - 1) * sizeof(RMuint8));			pSendContext->seqHeaderSize = (Partial_Codec_Specific_Data_Size - 1);#ifdef _DEBUG			fprintf(stderr, "VC1 seqHeader size %lu, seqHeader:\n", pSendContext->seqHeaderSize);#endif			for(index = 1; index < (int)Partial_Codec_Specific_Data_Size; index++) {				pByte = (Codec_Specific_Data + index);#ifdef _DEBUG				fprintf(stderr, "0x%02X ", *pByte);#endif				*(pSendContext->seqHeader + index - 1) = *pByte;			}#ifdef _DEBUG			fprintf(stderr, "\n");#endif			parseVC1SeqHeader(pSendContext, pSendContext->seqHeader, pSendContext->seqHeaderSize);			pSendContext->video_vop_tir = 90000;			DCCSTCSetTimeResolution(pSendContext->dcc_info->pStcSource, DCC_Video, pSendContext->video_vop_tir);			pSendContext->isVC1 = TRUE;			pSendContext->getStartCodeBuffer = TRUE;			pSendContext->addSeqHeader = TRUE;			pSendContext->addEntryHeader = TRUE;			pSendContext->addFrameHeader = TRUE;			/* when used in mono, use codec auto detection */#ifdef WITH_MONO			pSendContext->video_opt->Codec = VideoDecoder_Codec_VC1_HD;			pSendContext->video_opt->MPEGProfile = Profile_VC1_HD;			RMDBGLOG((ENABLE, "MONO: Selecting VC1 HD\n"));#endif // WITH_MONO		}		else 			pSendContext->unsupported_video = TRUE;				if (pSendContext->unsupported_video) {			pSendContext->SendVideoData = FALSE;			RMDBGLOG((ENABLE, ">> unsupported video codec, disabling video\n"));			return;		}	}	if ((Codec_Specific_Data_Size >= sizeof(RMuint32)) && 	    (Compression_ID != 0x41564D57) && 	    (Compression_ID != 0x31435657)) { // only for non VC1 codec		// hack! communicate this properly... (inband?)		RMDBGLOG((ENABLE, "    Sequence header 0x%lx\n", RMbeBufToUint32(Codec_Specific_Data)));				pSendContext->wmv9_prop.Sequence = RMbeBufToUint32(Codec_Specific_Data);		pSendContext->wmv9_prop.Image_Width = Image_Width;		pSendContext->wmv9_prop.Image_Height = Image_Height;		pSendContext->wmv9_prop.MB_Width = (Image_Width + 15) / 16;		pSendContext->wmv9_prop.MB_Height = (Image_Height + 15) / 16;	}	status = setup_video_decoder(pSendContext);	pSendContext->videoSetupStatus = status;	if (RMFAILED(status)){		fprintf(stderr, "Error initializing video (%s)\n", RMstatusToString(status));	} else {		RMDBGLOG((ENABLE, ">>> video stream found, enabling video playback\n"));		pSendContext->VideoStreamFound = TRUE;		if (pSendContext->linear_playback)			/* Seek is not supported, do play now */			Play(pSendContext, RM_DEVICES_VIDEO | RM_DEVICES_STC, DCCVideoPlayFwd);	}}static RMstatus initVideoDecoder(struct asf_context * context){	if(context->video_decoder_initialized == FALSE) {		RMstatus err = RM_ERROR;		RMDBGLOG((ENABLE, "initVideoDecoder\n"));		switch(context->Compression_ID) {		case 0x3334504D: // MP43			err = RUASetProperty(context->pRUA, 					     context->dcc_info->video_decoder, 					     RMVideoDecoderPropertyID_DIVX3VSProp, 					     &context->divx3_prop, sizeof(context->divx3_prop), 0);			if (RMFAILED(err)) {				RMDBGLOG((ENABLE,"Error setting DIVX3 video info : %d !\n", err));				return err;			}			break;		case 0x33564D57: //WMV3			RMDBGLOG((ENABLE, "video prop : seq 0x%08lx, %ld x %ld\n", 				  context->wmv9_prop.Sequence, 				  context->wmv9_prop.Image_Width,			          context->wmv9_prop.Image_Height));						err = RUASetProperty(context->pRUA, 

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
日韩一区二区三区在线视频| 奇米影视在线99精品| 丰满白嫩尤物一区二区| 久久成人久久爱| 国内精品写真在线观看| 毛片av一区二区| 日韩专区中文字幕一区二区| 日韩精品欧美精品| 看国产成人h片视频| 午夜视频在线观看一区二区| 成人欧美一区二区三区小说 | 一本色道久久综合精品竹菊| 成人免费va视频| 日本韩国精品在线| 欧美亚洲国产bt| 欧美一级在线免费| 精品国产一区二区三区忘忧草 | 精品久久国产97色综合| 久久综合国产精品| 亚洲欧美偷拍另类a∨色屁股| 亚洲三级电影网站| 天堂成人免费av电影一区| 蜜桃视频在线观看一区| 一本到一区二区三区| 精品国一区二区三区| 亚洲综合自拍偷拍| 国内精品久久久久影院一蜜桃| 99精品国产99久久久久久白柏| 欧美一区二区三区在线看| 国产精品视频免费| 久久成人羞羞网站| 欧美色视频一区| 日韩一区有码在线| 粉嫩aⅴ一区二区三区四区| 欧美二区三区91| 天堂成人免费av电影一区| 91视频国产观看| 亚洲啪啪综合av一区二区三区| 黄网站免费久久| 精品免费视频.| 久久99精品国产| 日韩一区二区免费高清| 日韩精品一级二级 | 国产日产欧美一区二区视频| 爽好多水快深点欧美视频| 欧美久久高跟鞋激| 午夜一区二区三区视频| 色综合久久久久综合体桃花网| 亚洲国产精品成人综合色在线婷婷| 国产综合一区二区| 日韩美女视频一区| 国产91精品在线观看| 亚洲另类在线制服丝袜| 成人免费毛片片v| 欧美一区二区三区视频免费播放 | 国产高清精品久久久久| 国产日韩三级在线| 91 com成人网| 精一区二区三区| 欧美国产精品一区二区三区| 久久综合国产精品| 色香蕉久久蜜桃| 日韩午夜三级在线| 免费av网站大全久久| 久久久久国产精品人| 91福利精品第一导航| 激情小说欧美图片| 日本成人中文字幕| 337p日本欧洲亚洲大胆色噜噜| 成人激情黄色小说| 蜜桃在线一区二区三区| 一区二区在线看| 久久久午夜精品| 欧美日韩国产免费一区二区 | 91麻豆国产精品久久| 日本不卡一区二区三区高清视频| 久久久久久久久伊人| 欧美一区二区三区免费在线看| 成人av免费网站| 美女免费视频一区二区| 亚洲18影院在线观看| 国产精品麻豆99久久久久久| 欧美精选一区二区| 精品视频在线视频| 日本伦理一区二区| 成人午夜电影小说| 国产一区二区三区四区五区美女 | 91福利在线免费观看| 国产suv精品一区二区三区| 九九视频精品免费| 精品中文字幕一区二区小辣椒| 亚洲另类在线一区| 亚洲精品日日夜夜| 亚洲国产欧美在线| 夜夜夜精品看看| 国产一区欧美一区| 亚洲国产精品av| 久久精品男人天堂av| 欧美激情中文字幕一区二区| 精品乱人伦小说| 久久久国产一区二区三区四区小说| 日韩欧美国产一区二区三区| 2021中文字幕一区亚洲| 国产色一区二区| 亚洲欧美偷拍三级| 青青青伊人色综合久久| 国产精品一区二区久久精品爱涩| 波多野结衣精品在线| 欧美亚洲精品一区| 久久综合九色综合欧美亚洲| 国产精品嫩草久久久久| 午夜精品福利久久久| 成人久久视频在线观看| 欧美日韩免费一区二区三区视频| 在线不卡a资源高清| 国产三级精品在线| 亚洲一级电影视频| 国产一区欧美一区| 制服丝袜中文字幕一区| 亚洲欧美另类小说| 亚洲成人av在线电影| 91亚洲国产成人精品一区二三 | av在线不卡电影| 欧美刺激午夜性久久久久久久| 亚洲综合图片区| 91在线观看下载| 美女mm1313爽爽久久久蜜臀| 日韩欧美三级在线| 中文字幕在线一区免费| 男男成人高潮片免费网站| 国产超碰在线一区| 日韩精品一区二区三区视频| 亚洲综合网站在线观看| 99久久综合狠狠综合久久| 国产亚洲精品aa| 韩国三级在线一区| 久久精品综合网| 国产jizzjizz一区二区| 国产欧美一二三区| 国产精品综合一区二区三区| 2020国产精品自拍| 五月天激情小说综合| 在线成人av网站| 日本欧美加勒比视频| 欧美一二三区在线| 国产河南妇女毛片精品久久久| 欧美精品一区二区三区在线播放| 久久黄色级2电影| 中文字幕成人av| 精品视频1区2区3区| 久久精品国产一区二区| 国产日韩欧美麻豆| 91丨porny丨首页| 亚洲亚洲精品在线观看| 日韩久久精品一区| 午夜欧美2019年伦理| 国产拍揄自揄精品视频麻豆| 欧美日韩不卡一区二区| 大陆成人av片| 国产一区在线观看麻豆| www.欧美亚洲| 麻豆91免费观看| 亚洲视频你懂的| 日韩视频在线你懂得| 波多野洁衣一区| 久久激情五月激情| 国产精品久久久久永久免费观看| 欧美人狂配大交3d怪物一区| 91丝袜呻吟高潮美腿白嫩在线观看| 亚洲第一在线综合网站| 中文字幕在线观看不卡| 欧美成人一区二区三区| 欧美美女一区二区三区| 在线免费不卡视频| 成人激情开心网| proumb性欧美在线观看| 国产精品亚洲专一区二区三区| 久久国内精品自在自线400部| 三级在线观看一区二区| 亚洲同性gay激情无套| 中文字幕高清一区| 中文字幕久久午夜不卡| 国产日韩欧美不卡在线| 精品国产乱码久久久久久蜜臀 | 色老汉av一区二区三区| a亚洲天堂av| av资源站一区| 欧美最猛性xxxxx直播| 91麻豆免费观看| 色美美综合视频| 欧美男女性生活在线直播观看 | 亚洲综合一区二区三区| 亚洲免费视频中文字幕| 婷婷久久综合九色综合绿巨人| 天天色天天爱天天射综合| 久草在线在线精品观看| 丁香五精品蜜臀久久久久99网站| 91亚洲国产成人精品一区二区三| 欧美日韩精品专区| 日韩一区二区视频|