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

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

?? mem.c

?? h261協(xié)議的h261編碼碼,lib_261.h里面提供了詳細(xì)的接口和說(shuō)明.
?? C
字號(hào):
/*************************************************************
Copyright (C) 1990, 1991, 1993 Andy C. Hung, all rights reserved.
PUBLIC DOMAIN LICENSE: Stanford University Portable Video Research
Group. If you use this software, you agree to the following: This
program package is purely experimental, and is licensed "as is".
Permission is granted to use, modify, and distribute this program
without charge for any purpose, provided this license/ disclaimer
notice appears in the copies.  No warranty or maintenance is given,
either expressed or implied.  In no event shall the author(s) be
liable to you or a third party for any special, incidental,
consequential, or other damages, arising out of the use or inability
to use the program for any purpose (or the loss of data), even if we
have been advised of such possibilities.  Any public reference or
advertisement of this source code should refer to it as the Portable
Video Research Group (PVRG) code, and not by any author(s) (or
Stanford University) name.
*************************************************************/
/*
************************************************************
mem.c

This file contains the basic memory manipulation structures.

************************************************************
*/

/*LABEL mem.c */

#include <stdio.h>
#include "mem.h"
#include <stdlib.h>
#include <memory.h>

/*PUBLIC*/

extern BLOCK MakeBlock_en();
//extern void CopyBlock();
//extern void CopyMem();
extern ClearMem_en();
//extern int ParityMem();
//extern void SetPointerBlock();
extern MEM *MakeMem_en();
//extern void FreeMem();
//extern MEM *LoadMem();
//extern MEM *SaveMem();

/*PRIVATE*/

#define DATALENGTH 100000 /*Maximum internal buffer*/

/*START*/

/*BFUNC

MakeBlock_en() returns a block structure created. This is an actual
structure, not just a pointer.

EFUNC*/

BLOCK MakeBlock_en()
{
  BEGIN("MakeBlock_en");
  BLOCK temp;

  if (!(temp=(BLOCK)calloc(16,sizeof(unsigned char *))))
    {
      WHEREAMI();
      printf("Cannot allocate Block structure.\n");
      exit(ERROR_MEMORY);
    }
  return(temp);
}

/*BFUNC

CopyBlock() copies the block contents of one block to another (b2 to
b1 as in typical assignment). Note that a block is considered 16x16 in
this case.

EFUNC*/

//void CopyBlock(b1,b2)
//     BLOCK b1;
//     BLOCK b2;
//void CopyBlock(BLOCK b1,BLOCK b2)
//{
//  BEGIN("CopyBlock");
//  int i;
//
//  for(i=0;i<16;i++) {memcpy(b2[i],b1[i],16);}
//}

/*BFUNC

CopyMem() copies the entire contents of m2 to m1. 

EFUNC*/

//void CopyMem(m1,m2)
//     MEM *m1;
//     MEM *m2;
//void CopyMem(MEM *m1,MEM *m2)
//{
//  BEGIN("CopyMem");
//
//  memcpy(m2->data,m1->data,m1->width*m1->height);
//}

/*BFUNC

ClearMem_en() clears a memory structure by setting it to all zeroes.

EFUNC*/

ClearMem_en( MEM *m1)
{
  BEGIN("ClearMem_en");

  memset(m1->data,0,m1->width*m1->height);
}

/*BFUNC

ParityMem() returns the bitwise parity of the entire memory structure.
This is calculated by XORing all of its component bytes to form an end
component.

EFUNC*/

//int ParityMem(mem)
//     MEM *mem;
//int ParityMem(MEM *mem)
//{
//  BEGIN("ParityMem");
//  int parity;
//  //register unsigned char *ptr,*top;
//  unsigned char *ptr,*top;
//  top = mem->data + (mem->width*mem->height);
//  for(parity=0,ptr=mem->data;ptr<top;)
//    {
//      parity ^= *(ptr++);
//    }
//  return(parity);
//}

/*BFUNC

SetPointerBlock() sets the block to represent the given pixel position
within the memory structure.

EFUNC*/

//void SetPointerBlock(px,py,mem,block)
//     int px;
//     int py;
//     MEM *mem;
//     BLOCK block;
//void SetPointerBlock(int px,int py,MEM *mem,BLOCK block)
//{
//  BEGIN("SetPointerBlock");
//  int i;
//
//  if ((mem->width < 16) || (mem->height < 16))
//    {
//      WHEREAMI();
//      printf("Attempt to retrieve pointers from too small an mem.\n");
//      exit(ERROR_BOUNDS);
//    }
//  if (px+16 > mem->width) {px = mem->width-16;}
//  if (py+16 > mem->height) {py = mem->height-16;}
//  for(i=0;i<16;i++) {block[i] = mem->data + px + ((py+i)*mem->width);}
//}

/*BFUNC

MakeMem_en() creates a memory structure out of a given width and height.

EFUNC*/

MEM *MakeMem_en(int width,int height)
{
  BEGIN("MakeMem_en");
  MEM *temp;

  if (!(temp=MakeStructure(MEM)))
    {
      WHEREAMI();
      printf("Cannot create Memory structure.\n");
      exit(ERROR_MEMORY);
    }
  temp->len = width*height;
  temp->width = width;
  temp->height = height;
  if (!(temp->data=(unsigned char *)calloc(width*height,
					   sizeof(unsigned char))))
    {
      WHEREAMI();
      printf("Cannot allocate data storage for Memory structure.\n");
      exit(ERROR_MEMORY);
    }
  return(temp);
}

/*BFUNC

FreeMem() frees a memory structure.

EFUNC*/

//void FreeMem(mem)
//     MEM *mem;
//void FreeMem(MEM *mem)
//{
//  BEGIN("FreeMem");
//
//  free(mem->data);
//  free(mem);
//}
//

/*BFUNC

LoadMem(width,height,)
     ) loads an Mem with a designated width; loads an Mem with a designated width, height, and
filename into a designated memory structure. If the memory structure
is NULL, one is created for it.

EFUNC*/

//MEM *LoadMem(char *filename,int width,int height,MEM *omem)
//{
//  BEGIN("LoadMem");
//  int length;
//  MEM *temp;
//  FILE *inp;
//
//  //if ((inp = fopen(filename,"r")) == NULL)
//  if ((inp = fopen(filename,"rb")) == NULL)
//  {
//      WHEREAMI();
//      printf("Cannot open filename %s.\n",filename);
//      exit(ERROR_BOUNDS);
//    }
//  fseek(inp,0,2);
//  length = ftell(inp);
//  rewind(inp);
//  if ((width*height) != length)
//    {
//      WHEREAMI();
//      printf("Bad Height and Width\n");
//      exit(ERROR_BOUNDS);
//    }
//  if (omem) {temp=omem;}
//  else {temp = MakeMem_en(width,height);}
//  fread(temp->data,sizeof(unsigned char),temp->width*temp->height,inp);
//  fclose(inp);
//
//  //begin
//  //temp->data = CFrame->yuv[?];
//  //end
//
//  return(temp);
//}
//

/*BFUNC

SaveMem() saves the designated memory structure to the appropriate
filename.

EFUNC*/

//MEM *SaveMem(char *filename,MEM *mem)
//{
//	BEGIN("SaveMem");
//	FILE *out;
//	
//	/*if ((out = fopen(filename,"w")) == NULL)*/
//	if ((out = fopen(filename,"wb")) == NULL)
//	{
//		WHEREAMI();
//		printf("Cannot open filename %s.\n",filename);
//		exit(ERROR_BOUNDS);
//	}
//	fwrite(mem->data,sizeof(unsigned char),mem->width*mem->height,out);
//	fclose(out);
//	return(mem);
//}
//

/*END*/

?? 快捷鍵說(shuō)明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號(hào) Ctrl + =
減小字號(hào) Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
麻豆精品视频在线观看视频| 欧美日韩黄色一区二区| 亚洲男女一区二区三区| 国产三级三级三级精品8ⅰ区| 欧美精三区欧美精三区| 91黄色小视频| 成人av第一页| 成人黄色免费短视频| 国产盗摄视频一区二区三区| 激情伊人五月天久久综合| 毛片一区二区三区| 免费观看一级欧美片| 亚洲国产日韩a在线播放| 国产精品久久久久久亚洲毛片| 精品国产乱码久久久久久1区2区| 91久久国产最好的精华液| 国产成人午夜电影网| 国产精品自拍毛片| 国产一区 二区| 免播放器亚洲一区| 韩日av一区二区| 国产成人免费视频一区| 狠狠狠色丁香婷婷综合久久五月| 捆绑紧缚一区二区三区视频| 一级做a爱片久久| 亚洲乱码精品一二三四区日韩在线 | 成人av在线资源| 日韩**一区毛片| 美女www一区二区| 福利一区福利二区| 99国产欧美另类久久久精品 | 午夜精品成人在线视频| 性感美女极品91精品| 日本成人中文字幕| 国产精品77777| 一本大道av伊人久久综合| 欧美在线999| 日韩精品一区二区三区老鸭窝| 精品盗摄一区二区三区| 国产欧美va欧美不卡在线| 成人免费在线视频观看| 亚洲高清免费视频| 国产真实乱偷精品视频免| 欧美美女一区二区三区| 日韩精品一区在线观看| 国产精品久久久久久久久图文区| 亚洲一区二区综合| 韩国欧美国产一区| 欧美日韩久久不卡| 国产欧美精品区一区二区三区 | 欧美a级一区二区| 久久精品国产久精国产| 99综合电影在线视频| 91精品国产美女浴室洗澡无遮挡| 国产日韩成人精品| 午夜精品久久久久| 99久久婷婷国产综合精品电影 | 91麻豆免费观看| 欧美成人猛片aaaaaaa| 亚洲视频 欧洲视频| 精品一区二区在线播放| 在线视频国产一区| 国产精品女同一区二区三区| 日韩激情中文字幕| 91美女在线观看| 国产欧美日韩视频在线观看| 日韩中文字幕不卡| 日本久久一区二区| 国产精品久久久久久一区二区三区| 久久成人免费日本黄色| 色婷婷久久久综合中文字幕| 久久久久久久久一| 六月丁香综合在线视频| 欧美精品免费视频| 一个色综合av| 色综合天天在线| 国产精品毛片大码女人| 国产精品77777| 久久精品免费在线观看| 久久99这里只有精品| 69堂成人精品免费视频| 亚洲综合在线电影| 99国产欧美另类久久久精品| 国产精品每日更新| 9i在线看片成人免费| 一区在线播放视频| jlzzjlzz亚洲日本少妇| 国产精品沙发午睡系列990531| 久久精品久久综合| 精品久久久久香蕉网| 久久99最新地址| 久久久久久久久久电影| 高清成人免费视频| 国产欧美日韩在线| 92国产精品观看| 亚洲综合网站在线观看| 欧美日韩精品一区二区三区| 亚洲午夜久久久久中文字幕久| 欧美亚洲综合色| 午夜精品久久久久| 欧美一区二区女人| 久草这里只有精品视频| 欧美一区二区三区四区高清| 久久99精品久久久| 亚洲女人小视频在线观看| www.成人网.com| 国产午夜精品理论片a级大结局| 天堂成人国产精品一区| 亚洲国产精品国自产拍av| 久久精品噜噜噜成人av农村| 91免费观看视频在线| 三级成人在线视频| 国产精品久久久久aaaa| 精品日本一线二线三线不卡| 在线免费观看视频一区| 成人听书哪个软件好| 精品亚洲国产成人av制服丝袜| 亚洲综合在线免费观看| 亚洲欧美在线另类| 欧美激情综合五月色丁香| 欧美一级精品大片| 欧美日韩卡一卡二| 色成年激情久久综合| 成人久久18免费网站麻豆 | youjizz久久| 国产主播一区二区三区| 日本va欧美va瓶| 亚洲大尺度视频在线观看| 国产精品天美传媒| 久久精品亚洲精品国产欧美kt∨ | 亚洲欧洲一区二区在线播放| 日韩西西人体444www| 欧美少妇bbb| 在线免费观看视频一区| 日本道在线观看一区二区| 99久久99久久精品国产片果冻 | 国产成人h网站| 国产麻豆视频一区| 国产精品自产自拍| 成人性生交大片免费看中文| 国产精品影视网| 99re6这里只有精品视频在线观看 99re8在线精品视频免费播放 | 欧美一区二区三区四区在线观看 | 日本一区二区高清| 久久久噜噜噜久久人人看| 久久综合九色综合97婷婷女人 | 国产精品77777竹菊影视小说| 国产在线精品国自产拍免费| 韩国欧美一区二区| 国产成人精品www牛牛影视| av亚洲产国偷v产偷v自拍| caoporm超碰国产精品| 91在线观看污| 欧美亚州韩日在线看免费版国语版| 色美美综合视频| 欧美日韩一区二区不卡| 制服丝袜成人动漫| 日韩亚洲欧美一区| 久久精品视频一区二区| 自拍偷拍亚洲激情| 亚洲国产成人91porn| 蜜桃av一区二区三区| 国产精品伊人色| 色94色欧美sute亚洲13| 777午夜精品视频在线播放| 麻豆国产精品官网| 国产一区二区三区电影在线观看 | 激情六月婷婷久久| 国产精品一二三在| 不卡一二三区首页| 欧美日韩免费观看一区二区三区| 在线精品视频小说1| 91精品国产综合久久小美女| 久久这里只有精品6| 亚洲美女屁股眼交| 另类小说一区二区三区| 91免费版在线看| 久久综合国产精品| 亚洲一区在线看| 激情小说欧美图片| 色88888久久久久久影院野外| 日韩美女视频在线| 成人欧美一区二区三区小说| 日日夜夜精品视频免费| 成人午夜私人影院| 欧美一级淫片007| 中文字幕在线一区二区三区| 日本欧美韩国一区三区| 成人国产电影网| 日韩免费高清视频| 亚洲精选在线视频| 国产一区二区三区在线观看免费| 91蜜桃免费观看视频| 久久这里只精品最新地址| 亚洲日本中文字幕区| 韩国欧美国产一区| 91精品国产综合久久精品图片 | 亚洲欧美日韩在线| 国产伦精一区二区三区| 欧美乱妇一区二区三区不卡视频|