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

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? image.c

?? 基于Linux的ffmepg decoder
?? C
字號(hào):
#include "../../fmpeg4_driver/fmpeg4.h"#include <math.h>#include "../portab.h"//#include "../xvid.h"			// XVID_CSP_XXX's#include "image.h"//#include "../divx4.h"//#include "../utils/mem_align.h"#include "../define.h"#define SAFETY	64#define EDGE_SIZE2  (EDGE_SIZE/2)unsigned int y_virt_sz=0,u_virt_sz=0,v_virt_sz=0;#if 0int32_timage_create(IMAGE * image,			 uint32_t edged_width,			 uint32_t edged_height){	const uint32_t edged_width2 = edged_width / 2;	const uint32_t edged_height2 = edged_height / 2;	image->y =		malloc_align(edged_width * (edged_height + 1) + SAFETY, CACHE_LINE);	if (image->y == NULL) {		return -1;	}#ifdef fpga//	for (i = 0; i < edged_width * edged_height + SAFETY; i++) {//		image->y[i] = 0;//	}#endif	image->u = malloc_align(edged_width2 * edged_height2 + 4*SAFETY, CACHE_LINE);	if (image->u == NULL) {		free_align(image->y);		return -1;	}#ifdef fpga	//	for (i = 0; i < edged_width2 * edged_height2 + 4*SAFETY; i++) {//		image->u[i] = 0;//	}#endif	image->v = malloc_align(edged_width2 * edged_height2 + 4*SAFETY, CACHE_LINE);	if (image->v == NULL) {		free_align(image->u);		free_align(image->y);		return -1;	}#ifdef fpga//	for (i = 0; i < edged_width2 * edged_height2 + 4*SAFETY; i++) {//		image->v[i] = 0;//	}#endif	image->y += EDGE_SIZE * edged_width + EDGE_SIZE;	image->u += EDGE_SIZE2 * edged_width2 + EDGE_SIZE2;	image->v += EDGE_SIZE2 * edged_width2 + EDGE_SIZE2;	return 0;}voidimage_destroy(IMAGE * image,			  uint32_t edged_width,			  uint32_t edged_height){	const uint32_t edged_width2 = edged_width / 2;	if (image->y) {		free_align(image->y - (EDGE_SIZE * edged_width + EDGE_SIZE));	}	if (image->u) {		free_align(image->u - (EDGE_SIZE2 * edged_width2 + EDGE_SIZE2));	}	if (image->v) {		free_align(image->v - (EDGE_SIZE2 * edged_width2 + EDGE_SIZE2));	}}#endif/*size creat:	  EDGE_SIZE		mb_width * PIXEL_Y		    |	   /							      \		/	\/								\		-------------------------------------		|	|								|\		|	|								| EDGE_SIZE		|	|								|/		-------------------------------------			|								|\			|								| \			|								|			|								|			|								|			|								|			|								|  mb_height * PIXEL_Y			|								|			|								|			|								|			|								| /			|								|/			-------------------------------------			|								|	|\			|								|	| EDGE_SIZE			|								|	|/			-------------------------------------											\	/											EDGE_SIZE*/int32_timage_create(IMAGE * image,			 uint32_t mbwidth,			 uint32_t mbheight,	 		DECODER * ptdec){	DMA_MALLOC_PTR pfnDmaMalloc = ptdec->pfnDmaMalloc;	DMA_FREE_PTR pfnDmaFree = ptdec->pfnDmaFree;	uint8_t u8align = ptdec->u32CacheAlign;#if 1    y_virt_sz=mbwidth * (2 + mbheight)  * PIXEL_Y * PIXEL_Y+ 2 * EDGE_SIZE * EDGE_SIZE;    image->y_virt=fmpeg4_mempool_alloc(y_virt_sz,&image->y_phy);#else	image->y_virt = (uint8_t *)pfnDmaMalloc(				mbwidth * (2 + mbheight)  * PIXEL_Y * PIXEL_Y+ 2 * EDGE_SIZE * EDGE_SIZE,				u8align, u8align, (void **)&image->y_phy);#endif	if (image->y_virt == NULL) {		return -1;	}#if 1    u_virt_sz=mbwidth * (2 + mbheight)  * PIXEL_U  * PIXEL_U + 2 * EDGE_SIZE2 * EDGE_SIZE2;    image->u_virt=fmpeg4_mempool_alloc(u_virt_sz,&image->u_phy);#else	image->u_virt = (uint8_t *)pfnDmaMalloc(				mbwidth * (2 + mbheight)  * PIXEL_U  * PIXEL_U + 2 * EDGE_SIZE2 * EDGE_SIZE2,				u8align, u8align, (void **)&image->u_phy);#endif	if (image->u_virt == NULL) {#if 1        fmpeg4_mempool_free(image->y_virt,y_virt_sz);#else	    		pfnDmaFree(image->y_virt, image->y_phy);#endif		return -1;	}#if 1    v_virt_sz=mbwidth * (2 + mbheight)  * PIXEL_V  * PIXEL_V + 2 * EDGE_SIZE2 * EDGE_SIZE2;    image->v_virt=fmpeg4_mempool_alloc(v_virt_sz,&image->v_phy);#else	image->v_virt = (uint8_t *)pfnDmaMalloc(				mbwidth * (2 + mbheight)  * PIXEL_V  * PIXEL_V + 2 * EDGE_SIZE2 * EDGE_SIZE2,				u8align, u8align, (void **)&image->v_phy);#endif	if (image->v_virt == NULL) {#if 1        fmpeg4_mempool_free(image->y_virt,y_virt_sz);        fmpeg4_mempool_free(image->u_virt,u_virt_sz);#else		pfnDmaFree(image->y_virt, image->y_phy);		pfnDmaFree(image->u_virt, image->u_phy);#endif		return -1;	}	image->y_virt += mbwidth * PIXEL_Y * EDGE_SIZE + EDGE_SIZE * EDGE_SIZE;	image->u_virt += mbwidth * PIXEL_U * EDGE_SIZE2 + EDGE_SIZE2 * EDGE_SIZE2;	image->v_virt += mbwidth * PIXEL_V * EDGE_SIZE2 + EDGE_SIZE2 * EDGE_SIZE2;	image->y_phy += mbwidth * PIXEL_Y * EDGE_SIZE + EDGE_SIZE * EDGE_SIZE;	image->u_phy += mbwidth * PIXEL_U * EDGE_SIZE2 + EDGE_SIZE2 * EDGE_SIZE2;	image->v_phy += mbwidth * PIXEL_V * EDGE_SIZE2 + EDGE_SIZE2 * EDGE_SIZE2;	return 0;}voidimage_destroy(IMAGE * image,			uint32_t mbwidth,	 		DECODER * ptdec){	DMA_FREE_PTR pfnDmaFree = ptdec->pfnDmaFree;	if (image->y_virt) {#if 1        fmpeg4_mempool_free(image->y_virt - (mbwidth * PIXEL_Y * EDGE_SIZE + EDGE_SIZE * EDGE_SIZE),y_virt_sz);#else		pfnDmaFree(image->y_virt - (mbwidth * PIXEL_Y * EDGE_SIZE + EDGE_SIZE * EDGE_SIZE),				    image->y_phy- (mbwidth * PIXEL_Y * EDGE_SIZE + EDGE_SIZE * EDGE_SIZE));#endif	}	if (image->u_virt) {#if 1        fmpeg4_mempool_free(image->u_virt - (mbwidth * PIXEL_U * EDGE_SIZE2 + EDGE_SIZE2 * EDGE_SIZE2),u_virt_sz);#else		pfnDmaFree(image->u_virt - (mbwidth * PIXEL_U * EDGE_SIZE2 + EDGE_SIZE2 * EDGE_SIZE2),				   image->u_phy - (mbwidth * PIXEL_U * EDGE_SIZE2 + EDGE_SIZE2 * EDGE_SIZE2));#endif	}	if (image->v_virt) {#if 1        fmpeg4_mempool_free(image->v_virt - (mbwidth * PIXEL_V * EDGE_SIZE2 + EDGE_SIZE2 * EDGE_SIZE2),v_virt_sz);#else		pfnDmaFree(image->v_virt - (mbwidth * PIXEL_V * EDGE_SIZE2 + EDGE_SIZE2 * EDGE_SIZE2),				   image->v_phy - (mbwidth * PIXEL_V * EDGE_SIZE2 + EDGE_SIZE2 * EDGE_SIZE2));#endif	}}voidimage_swap_dec(IMAGE * image1,		   IMAGE * image2){	uint8_t *tmp;	tmp = image1->y_virt;	image1->y_virt = image2->y_virt;	image2->y_virt = tmp;	tmp = image1->u_virt;	image1->u_virt = image2->u_virt;	image2->u_virt = tmp;	tmp = image1->v_virt;	image1->v_virt = image2->v_virt;	image2->v_virt = tmp;	tmp = image1->y_phy;	image1->y_phy = image2->y_phy;	image2->y_phy = tmp;	tmp = image1->u_phy;	image1->u_phy = image2->u_phy;	image2->u_phy = tmp;	tmp = image1->v_phy;	image1->v_phy = image2->v_phy;	image2->v_phy = tmp;}#if 0voidimage_copy(IMAGE * image1,		   IMAGE * image2,		   uint32_t edged_width,		   uint32_t height){	memcpy(image1->y, image2->y, edged_width * height);	memcpy(image1->u, image2->u, edged_width * height / 4);	memcpy(image1->v, image2->v, edged_width * height / 4);}#endif

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號(hào) Ctrl + =
減小字號(hào) Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
久久久久国产精品麻豆| 日本韩国视频一区二区| 精品写真视频在线观看| 国产白丝精品91爽爽久久| 99久久er热在这里只有精品15 | 99精品欧美一区二区三区综合在线| 国产成人超碰人人澡人人澡| 日本高清不卡一区| 久久精品亚洲一区二区三区浴池| 国产精品美女久久久久久久 | 91在线国产观看| 欧美成人性福生活免费看| 国产欧美精品一区二区三区四区| 一区二区三区四区中文字幕| 国模套图日韩精品一区二区 | 亚洲电影一区二区三区| 国产美女精品在线| 日韩一区二区精品在线观看| 国产精品传媒入口麻豆| 国产精品自拍网站| 日韩一区国产二区欧美三区| 亚洲人吸女人奶水| 99国产精品久久久久久久久久 | 91国产免费看| 中文字幕日韩一区| 国产精品自在在线| 日韩精品一区二| 日韩av电影一区| 欧美一级片免费看| 日韩和欧美一区二区三区| 欧美日韩中文字幕一区二区| 亚洲日本中文字幕区| 99久久精品费精品国产一区二区| 欧美极品aⅴ影院| 一本大道久久a久久精二百| 亚洲精品乱码久久久久久久久| 粗大黑人巨茎大战欧美成人| 日韩美女视频一区二区| 91麻豆免费在线观看| 亚洲国产精品精华液ab| 国产一区二区三区免费播放| 精品动漫一区二区三区在线观看| 午夜免费欧美电影| 精品播放一区二区| 色久综合一二码| 精品一区二区精品| 一区二区三区中文在线观看| 欧美最猛黑人xxxxx猛交| 日本特黄久久久高潮| 久久久久久久久久美女| 91美女片黄在线观看| 麻豆一区二区三| 亚洲丝袜精品丝袜在线| 日韩欧美一区二区久久婷婷| 国产成人小视频| 亚洲一区二区三区国产| 欧美mv日韩mv亚洲| 欧美网站一区二区| 国产一区啦啦啦在线观看| 亚洲精品国产精华液| 精品久久久久av影院| 在线精品观看国产| thepron国产精品| 国产一区二区精品久久99 | 不卡免费追剧大全电视剧网站| 免费在线观看一区| 五月天精品一区二区三区| 国产精品青草久久| 制服丝袜成人动漫| 欧美视频一二三区| 一本一本大道香蕉久在线精品| 国产一区二区三区在线观看精品| 亚洲免费视频中文字幕| 欧美激情一区二区三区四区 | 亚洲午夜一区二区三区| 国产精品久久久久久户外露出 | 色综合天天性综合| 欧美精品日韩一区| 欧美疯狂性受xxxxx喷水图片| 99视频精品全部免费在线| 99免费精品在线| 色婷婷亚洲综合| 欧美色网一区二区| 欧美无乱码久久久免费午夜一区| 一本一本大道香蕉久在线精品| 成人午夜激情片| 91在线看国产| 欧美一区午夜精品| 精品理论电影在线观看 | 亚洲v日本v欧美v久久精品| 青青草97国产精品免费观看无弹窗版| 久久国产日韩欧美精品| 国产成人丝袜美腿| 欧美在线视频不卡| 欧美电影精品一区二区| 精品不卡在线视频| 中文字幕制服丝袜成人av| 亚洲一区二区视频| 奇米在线7777在线精品| 国产成人午夜高潮毛片| 欧美日韩大陆一区二区| 久久亚洲捆绑美女| 亚洲蜜臀av乱码久久精品| 麻豆精品在线观看| 91香蕉国产在线观看软件| 欧美哺乳videos| 国产精品系列在线| 久久国产生活片100| 色综合天天综合色综合av| 日韩女优制服丝袜电影| 亚洲另类春色校园小说| 国产激情精品久久久第一区二区 | 亚洲精品欧美在线| 国产一区视频导航| 欧美大片一区二区| 午夜久久电影网| 欧美体内she精高潮| 国产精品成人午夜| 97久久久精品综合88久久| 精品久久国产97色综合| 久久国产成人午夜av影院| 欧美日韩www| 日日摸夜夜添夜夜添精品视频 | 亚洲五月六月丁香激情| 91麻豆国产在线观看| 自拍偷自拍亚洲精品播放| jiyouzz国产精品久久| 中文字幕精品一区二区三区精品| 国产在线看一区| 国产午夜一区二区三区| 成人av电影在线网| 亚洲三级电影网站| 777xxx欧美| 成人精品鲁一区一区二区| 亚洲欧洲色图综合| 欧美伊人精品成人久久综合97 | 91 com成人网| 国产在线视频一区二区| 最新国产の精品合集bt伙计| 69久久夜色精品国产69蝌蚪网| 国产精品一二二区| 国产精品成人免费精品自在线观看| 99re66热这里只有精品3直播| 一区二区欧美精品| 精品999在线播放| 欧美丝袜自拍制服另类| 日韩精品色哟哟| 日韩欧美色综合网站| 国产精品88888| 国产99久久久国产精品 | 欧美高清www午色夜在线视频| 日韩欧美一级片| 欧美一级生活片| 成人动漫中文字幕| 日韩 欧美一区二区三区| 国产亚洲欧美日韩在线一区| 日韩欧美电影一区| 欧美一级视频精品观看| 欧美一区二区性放荡片| 国产成人精品午夜视频免费| 国产精一品亚洲二区在线视频| 蜜臀av国产精品久久久久 | 九九国产精品视频| 麻豆精品一二三| 国产一区二区三区四区五区入口| 免费欧美高清视频| 国内精品视频666| 国产精品一区二区免费不卡| 国产成人精品一区二区三区四区| 成人性生交大片免费看中文| 91麻豆国产在线观看| 色天使色偷偷av一区二区 | 日韩综合小视频| 美国毛片一区二区三区| 精品在线免费观看| 成人网男人的天堂| 欧美特级限制片免费在线观看| 欧美日韩和欧美的一区二区| 欧美电影免费观看高清完整版 | 国产午夜精品久久| 亚洲精品视频在线观看网站| 日日骚欧美日韩| 久久99九九99精品| www.色综合.com| 欧美日韩二区三区| 久久天天做天天爱综合色| 日韩美女久久久| 午夜一区二区三区在线观看| 捆绑调教一区二区三区| 国产一区二区在线看| 在线视频亚洲一区| 久久久久久久久99精品| 亚洲午夜久久久久久久久电影网 | 久久久欧美精品sm网站| 亚洲精品亚洲人成人网在线播放| 婷婷丁香激情综合| 成人高清视频免费观看| 欧美高清激情brazzers| 中文字幕不卡三区| 亚洲sss视频在线视频|