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

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

?? mp4_decoder.c

?? MPEG4圖像編碼和解碼處理C源代碼(非常經典的算法)
?? C
字號:
/**************************************************************************
 *                                                                        *
 * This code has been developed by Andrea Graziani. This software is an   *
 * implementation of a part of one or more MPEG-4 Video tools as          *
 * specified in ISO/IEC 14496-2 standard.  Those intending to use this    *
 * software module in hardware or software products are advised that its  *
 * use may infringe existing patents or copyrights, and any such use      *
 * would be at such party's own risk.  The original developer of this     *
 * software module and his/her company, and subsequent editors and their  *
 * companies (including Project Mayo), will have no liability for use of  *
 * this software or modifications or derivatives thereof.                 *
 *                                                                        *
 * Project Mayo gives users of the Codec a license to this software       *
 * module or modifications thereof for use in hardware or software        *
 * products claiming conformance to the MPEG-4 Video Standard as          *
 * described in the Open DivX license.                                    *
 *                                                                        *
 * The complete Open DivX license can be found at                         *
 * http://www.projectmayo.com/opendivx/license.php                        *
 *                                                                        *
 **************************************************************************/
/**
*  Copyright (C) 2001 - Project Mayo
 *
 * Andrea Graziani (Ag)
 * Jonathan White
 *
 * DivX Advanced Research Center <darc@projectmayo.com>
*
**/
// mp4_decoder.c //

#include <stdio.h>
#include <stdlib.h>
#include <ctype.h>
#include <fcntl.h>
#include <string.h>
#include <assert.h>
#ifdef WIN32
#include <io.h>
#endif

#include "mp4_vars.h"
#include "decore.h"

/**
 *
**/

/***/

void initdecoder (DEC_BUFFERS buffers)
{
  int i, j, cc;

	save_tables(mp4_tables);

  mp4_state->clp = mp4_state->clp_data + 384;
  for (i = -384; i < 640; i++)
    mp4_state->clp[i] = (unsigned char) ( (i < 0) ? 0 : ((i > 255) ? 255 : i) );
 
	/* dc prediction border */
	for (i = 0; i < (2*DEC_MBC+1); i++)
		mp4_state->coeff_pred.dc_store_lum[0][i] = 1024;

	for (i = 1; i < (2*DEC_MBR+1); i++)
		mp4_state->coeff_pred.dc_store_lum[i][0] = 1024;

	for (i = 0; i < (DEC_MBC+1); i++) {
		mp4_state->coeff_pred.dc_store_chr[0][0][i] = 1024;
		mp4_state->coeff_pred.dc_store_chr[1][0][i] = 1024;
	}

	for (i = 1; i < (DEC_MBR+1); i++) {
		mp4_state->coeff_pred.dc_store_chr[0][i][0] = 1024;
		mp4_state->coeff_pred.dc_store_chr[1][i][0] = 1024;
	}

	/* ac prediction border */
	for (i = 0; i < (2*DEC_MBC+1); i++)
		for (j = 0; j < 7; j++)	{
			mp4_state->coeff_pred.ac_left_lum[0][i][j] = 0;
			mp4_state->coeff_pred.ac_top_lum[0][i][j] = 0;
		}

	for (i = 1; i < (2*DEC_MBR+1); i++)
		for (j = 0; j < 7; j++)	{
			mp4_state->coeff_pred.ac_left_lum[i][0][j] = 0;
			mp4_state->coeff_pred.ac_top_lum[i][0][j] = 0;
		}

	/* 
			[Review] too many computation to access to the 
			correct array value, better use two different
			pointer for Cb and Cr components
	*/
	for (i = 0; i < (DEC_MBC+1); i++)
		for (j = 0; j < 7; j++)	{
			mp4_state->coeff_pred.ac_left_chr[0][0][i][j] = 0; 
			mp4_state->coeff_pred.ac_top_chr[0][0][i][j] = 0;
			mp4_state->coeff_pred.ac_left_chr[1][0][i][j] = 0;
			mp4_state->coeff_pred.ac_top_chr[1][0][i][j] = 0;
		}

	for (i = 1; i < (DEC_MBR+1); i++)
		for (j = 0; j < 7; j++)	{
			mp4_state->coeff_pred.ac_left_chr[0][i][0][j] = 0;
			mp4_state->coeff_pred.ac_top_chr[0][i][0][j] = 0;
			mp4_state->coeff_pred.ac_left_chr[1][i][0][j] = 0;
			mp4_state->coeff_pred.ac_top_chr[1][i][0][j] = 0;
		}

	/* mode border */
	for (i = 0; i < mp4_state->mb_width + 1; i++)
		mp4_state->modemap[0][i] = INTRA;
	for (i = 0; i < mp4_state->mb_height + 1; i++) {
		mp4_state->modemap[i][0] = INTRA;
		mp4_state->modemap[i][mp4_state->mb_width+1] = INTRA;
	}

	// edged forward and reference frame
  for (cc = 0; cc < 3; cc++)
  {
    if (cc == 0)
    {
			edged_ref[cc] = (unsigned char *) buffers.mp4_edged_ref_buffers;
			assert(edged_ref[cc]);

			edged_for[cc] = (unsigned char *) buffers.mp4_edged_for_buffers;
			assert(edged_for[cc]);

      frame_ref[cc] = edged_ref[cc] + mp4_state->coded_picture_width * 32 + 32;
      frame_for[cc] = edged_for[cc] + mp4_state->coded_picture_width * 32 + 32;
    } 
    else
    {
			unsigned int offset;

			if (cc == 1) 
				offset = mp4_state->coded_picture_width * mp4_state->coded_picture_height;
			else 
				offset = mp4_state->coded_picture_width * mp4_state->coded_picture_height +
	  					mp4_state->chrom_width * mp4_state->chrom_height;

			edged_ref[cc] = (unsigned char *) buffers.mp4_edged_ref_buffers + offset;
			assert(edged_ref[cc]);

			edged_for[cc] = (unsigned char *) buffers.mp4_edged_for_buffers + offset;
			assert(edged_for[cc]);

      frame_ref[cc] = edged_ref[cc] + mp4_state->chrom_width * 16 + 16;
      frame_for[cc] = edged_for[cc] + mp4_state->chrom_width * 16 + 16;
    }
  }

	// display frame
	for (cc = 0; cc < 3; cc++) 
	{
		unsigned int offset;

		switch (cc) 
		{
		case 0:
			offset = 0;
			break;
		case 1:
			offset = mp4_state->horizontal_size * mp4_state->vertical_size;
			break;
		case 2:
			offset = (mp4_state->horizontal_size * mp4_state->vertical_size) + 
				((mp4_state->horizontal_size * mp4_state->vertical_size) >> 2);
			break;
		}
		
		display_frame[cc] = (unsigned char *) buffers.mp4_display_buffers + offset;
		assert(display_frame[cc]);
	}
}

/***/

void closedecoder ()
{
	/*** REVIEW

	int cc;

	clp -= 384;
	free(clp);

	for (cc = 0; cc < 3; cc++) {
		free(display_frame[cc]);
		free(edged_ref[cc]);
		free(edged_for[cc]);
	}

	***/
}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
欧美日本国产一区| 丁香婷婷综合激情五月色| 中文字幕精品一区二区三区精品| 欧洲亚洲国产日韩| av电影天堂一区二区在线观看| 久久99精品视频| 日产国产高清一区二区三区| 亚洲另类一区二区| 国产精品麻豆欧美日韩ww| 欧美国产激情一区二区三区蜜月| 精品久久久久久亚洲综合网| 久久精品亚洲一区二区三区浴池| 精品视频在线看| 在线观看国产精品网站| 在线观看91视频| 欧美日韩一级片在线观看| 欧美日韩亚洲丝袜制服| 欧美久久一区二区| 欧美老年两性高潮| 日韩欧美色综合网站| 日韩女同互慰一区二区| 久久综合给合久久狠狠狠97色69| 精品免费国产一区二区三区四区| 亚洲精品一区二区三区在线观看| 2023国产一二三区日本精品2022| 久久久久国产精品人| 国产亚洲欧美一区在线观看| 国产精品剧情在线亚洲| 亚洲猫色日本管| 亚洲综合另类小说| 免费看欧美女人艹b| 国产一区视频导航| 91毛片在线观看| 欧美精品乱码久久久久久按摩| 91精品国产91久久久久久最新毛片| 精品免费视频.| 国产精品不卡一区| 午夜精品久久久久久久久久 | 国产精品国产三级国产aⅴ无密码 国产精品国产三级国产aⅴ原创 | 91丨porny丨中文| 欧美日韩激情在线| 国产日韩欧美高清在线| 亚洲综合偷拍欧美一区色| 美国毛片一区二区三区| 91在线你懂得| 日韩欧美成人一区二区| 亚洲私人影院在线观看| 美女网站在线免费欧美精品| k8久久久一区二区三区| 欧美一区二区大片| 亚洲视频精选在线| 国产中文字幕一区| 欧美亚洲图片小说| 国产欧美日韩一区二区三区在线观看| 亚洲激情欧美激情| 国产成人在线免费| 91精品国产综合久久精品麻豆 | 欧美久久免费观看| 中文字幕不卡在线播放| 麻豆国产精品一区二区三区| 色综合久久88色综合天天免费| 欧美va亚洲va在线观看蝴蝶网| 综合在线观看色| 国产成人av在线影院| 日韩一区二区电影网| 亚洲大片免费看| 99久久精品情趣| 久久你懂得1024| 麻豆一区二区在线| 欧美日韩国产一级| 亚洲午夜久久久久| 91视频在线观看| 国产人成一区二区三区影院| 喷水一区二区三区| 在线成人小视频| 亚洲高清久久久| 在线免费视频一区二区| 亚洲欧洲日韩在线| jvid福利写真一区二区三区| 国产日韩欧美不卡在线| 国产原创一区二区三区| 26uuu国产日韩综合| 久久av资源网| 久久综合视频网| 国产一区二区三区四| 精品成人在线观看| 国产大片一区二区| 国产精品网站在线观看| 波多野结衣精品在线| 国产精品国产三级国产有无不卡 | 久久免费偷拍视频| 国产专区欧美精品| 国产精品情趣视频| 色婷婷av一区二区三区gif| 亚洲免费毛片网站| 欧美日本一道本| 奇米色一区二区| 26uuu国产电影一区二区| 国产乱子轮精品视频| 国产精品女上位| 韩国一区二区在线观看| 国产拍揄自揄精品视频麻豆| 不卡一区二区三区四区| 亚洲人成影院在线观看| 欧美亚洲国产bt| 青青草97国产精品免费观看| 欧美mv和日韩mv的网站| 成人午夜激情视频| 亚洲国产视频网站| 欧美精品一区二区三区在线| 成人av免费观看| 香蕉av福利精品导航 | 免费一级片91| 国产亚洲欧洲一区高清在线观看| 91天堂素人约啪| 日本成人在线电影网| 国产亚洲一区二区在线观看| 在线区一区二视频| 黄色日韩网站视频| 一区二区三区电影在线播| 日韩丝袜美女视频| 91丨porny丨中文| 另类中文字幕网| 亚洲色图都市小说| 欧美mv日韩mv亚洲| 91福利社在线观看| 极品美女销魂一区二区三区| 亚洲色图.com| 久久久噜噜噜久噜久久综合| 欧美综合亚洲图片综合区| 国产综合色在线| 亚洲不卡av一区二区三区| 国产欧美日韩不卡| 91精品国产麻豆国产自产在线| 成人精品国产免费网站| 老司机免费视频一区二区| 一区二区成人在线观看| 国产欧美日本一区二区三区| 欧美一区二区三区在线电影 | 成人三级在线视频| 青青草91视频| 亚洲 欧美综合在线网络| 国产精品卡一卡二| 国产欧美视频在线观看| 欧美不卡激情三级在线观看| 欧美中文一区二区三区| 91在线视频在线| 国产成人精品一区二区三区四区 | 三级精品在线观看| 一区二区三区欧美激情| 国产精品夫妻自拍| 中文字幕免费不卡在线| 久久嫩草精品久久久精品| 日韩写真欧美这视频| 欧美日韩国产另类不卡| 欧美性猛片xxxx免费看久爱| 99re成人在线| av一区二区三区黑人| 成人黄页在线观看| 波多野结衣亚洲| av在线综合网| 一本到一区二区三区| 色妹子一区二区| 色诱视频网站一区| 欧美性三三影院| 欧美日韩国产a| 欧美精品777| 69堂成人精品免费视频| 91精品国产一区二区三区香蕉| 欧美一区二区三区性视频| 日韩午夜激情电影| 亚洲精品一区在线观看| 欧美激情资源网| 国产精品久久久久一区二区三区| 国产精品第一页第二页第三页| 中文字幕亚洲欧美在线不卡| 亚洲乱码国产乱码精品精98午夜 | 成人av电影免费观看| 播五月开心婷婷综合| 91国偷自产一区二区三区成为亚洲经典 | 日本aⅴ亚洲精品中文乱码| 久久国内精品自在自线400部| 精品一区二区三区欧美| 懂色av中文字幕一区二区三区| 99久久国产综合色|国产精品| 日本韩国精品在线| 日韩一区二区免费电影| 欧美韩国日本不卡| 一区二区三区美女| 精品在线免费观看| 99久久精品国产导航| 51精品久久久久久久蜜臀| 久久青草国产手机看片福利盒子| 亚洲欧美另类在线| 美女视频一区二区三区| 99久久国产综合色|国产精品| 91精品欧美综合在线观看最新| 国产人成一区二区三区影院| 亚洲福利视频导航| 成人免费毛片片v|