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

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

?? rmff.cpp

?? 本源碼包
?? CPP
?? 第 1 頁 / 共 2 頁
字號:
#include	<stdio.h>#include	<string.h>#include	"rmff.h"/*#define	uint16_t	(unsigned short)#define	uint32_t	(unsigned int)*/				#define BE_16(x)  ((((uint8_t*)(x))[0] << 8) | ((uint8_t*)(x))[1])#define BE_32(x)  ((((uint8_t*)(x))[0] << 24) | \                   (((uint8_t*)(x))[1] << 16) | \                   (((uint8_t*)(x))[2] << 8) | \                    ((uint8_t*)(x))[3])static void hexdump (const char *buf, int length) {  int i;  printf ("rmff: ascii>");  for (i = 0; i < length; i++) {    unsigned char c = buf[i];    if ((c >= 32) && (c <= 128))      printf ("%c", c);    else      printf (".");  }  printf ("\n");  printf ("rmff: hexdump> ");  for (i = 0; i < length; i++) {    unsigned char c = buf[i];    printf ("%02x", c);    if ((i % 16) == 15)      printf ("\nrmff:         ");    if ((i % 2) == 1)      printf (" ");  }  printf ("\n");}/* * writes header data to a buffer */static void rmff_dump_fileheader(rmff_fileheader_t *fileheader, char *buffer) {  if (!fileheader) return;  fileheader->object_id=BE_32(&fileheader->object_id);  fileheader->size=BE_32(&fileheader->size);  fileheader->object_version=BE_16(&fileheader->object_version);  fileheader->file_version=BE_32(&fileheader->file_version);  fileheader->num_headers=BE_32(&fileheader->num_headers);    memcpy(buffer, fileheader, 8);  memcpy(&buffer[8], &fileheader->object_version, 2);  memcpy(&buffer[10], &fileheader->file_version, 8);    fileheader->size=BE_32(&fileheader->size);
  fileheader->object_version=BE_16(&fileheader->object_version);
  fileheader->file_version=BE_32(&fileheader->file_version);
  fileheader->num_headers=BE_32(&fileheader->num_headers);
  fileheader->object_id=BE_32(&fileheader->object_id);}static void rmff_dump_prop(rmff_prop_t *prop, char *buffer) {  	if (!prop)   		return;  prop->object_id=BE_32(&prop->object_id);  prop->size=BE_32(&prop->size);  prop->object_version=BE_16(&prop->object_version);  prop->max_bit_rate=BE_32(&prop->max_bit_rate);  prop->avg_bit_rate=BE_32(&prop->avg_bit_rate);  prop->max_packet_size=BE_32(&prop->max_packet_size);  prop->avg_packet_size=BE_32(&prop->avg_packet_size);  prop->num_packets=BE_32(&prop->num_packets);  prop->duration=BE_32(&prop->duration);  prop->preroll=BE_32(&prop->preroll);  prop->index_offset=BE_32(&prop->index_offset);  prop->data_offset=BE_32(&prop->data_offset);  prop->num_streams=BE_16(&prop->num_streams);  prop->flags=BE_16(&prop->flags);  memcpy(buffer, &prop -> object_id, 4);   memcpy(&buffer[4], &prop -> size, 4);  memcpy(&buffer[8], &prop->object_version, 2);  memcpy(&buffer[10], &prop->max_bit_rate, 36);  memcpy(&buffer[46], &prop->num_streams, 2);  memcpy(&buffer[48], &prop->flags, 2);  prop->size=BE_32(&prop->size);
  prop->object_version=BE_16(&prop->object_version);
  prop->max_bit_rate=BE_32(&prop->max_bit_rate);
  prop->avg_bit_rate=BE_32(&prop->avg_bit_rate);
  prop->max_packet_size=BE_32(&prop->max_packet_size);
  prop->avg_packet_size=BE_32(&prop->avg_packet_size);
  prop->num_packets=BE_32(&prop->num_packets);
  prop->duration=BE_32(&prop->duration);
  prop->preroll=BE_32(&prop->preroll);
  prop->index_offset=BE_32(&prop->index_offset);
  prop->data_offset=BE_32(&prop->data_offset);
  prop->num_streams=BE_16(&prop->num_streams);
  prop->flags=BE_16(&prop->flags);
  prop->object_id=BE_32(&prop->object_id);}static void rmff_dump_mdpr(rmff_mdpr_t *mdpr, char *buffer) {  int s1, s2, s3;  if (!mdpr) return;  mdpr->object_id=BE_32(&mdpr->object_id);  mdpr->size=BE_32(&mdpr->size);  mdpr->object_version=BE_16(&mdpr->object_version);  mdpr->stream_number=BE_16(&mdpr->stream_number);  mdpr->max_bit_rate=BE_32(&mdpr->max_bit_rate);  mdpr->avg_bit_rate=BE_32(&mdpr->avg_bit_rate);  mdpr->max_packet_size=BE_32(&mdpr->max_packet_size);  mdpr->avg_packet_size=BE_32(&mdpr->avg_packet_size);  mdpr->start_time=BE_32(&mdpr->start_time);  mdpr->preroll=BE_32(&mdpr->preroll);  mdpr->duration=BE_32(&mdpr->duration);  memcpy(buffer, mdpr, 8);  memcpy(&buffer[8], &mdpr->object_version, 2);  memcpy(&buffer[10], &mdpr->stream_number, 2);  memcpy(&buffer[12], &mdpr->max_bit_rate, 28);  memcpy(&buffer[40], &mdpr->stream_name_size, 1);  s1 = 0x000000ff & mdpr->stream_name_size;  memcpy(&buffer[41], mdpr->stream_name, s1);  memcpy(&buffer[41 + s1], &mdpr->mime_type_size, 1);  s2 = 0x000000ff & mdpr->mime_type_size;  memcpy(&buffer[42+s1], mdpr->mime_type, s2);    mdpr->type_specific_len=BE_32(&mdpr->type_specific_len);  memcpy(&buffer[42+s1+s2], &mdpr->type_specific_len, 4);  mdpr->type_specific_len=BE_32(&mdpr->type_specific_len);  s3 = 0x000000ff & mdpr->type_specific_len;  memcpy(&buffer[46+s1+s2], mdpr->type_specific_data, s3);      mdpr->size=BE_32(&mdpr->size);
  mdpr->stream_number=BE_16(&mdpr->stream_number);
  mdpr->max_bit_rate=BE_32(&mdpr->max_bit_rate);
  mdpr->avg_bit_rate=BE_32(&mdpr->avg_bit_rate);
  mdpr->max_packet_size=BE_32(&mdpr->max_packet_size);
  mdpr->avg_packet_size=BE_32(&mdpr->avg_packet_size);
  mdpr->start_time=BE_32(&mdpr->start_time);
  mdpr->preroll=BE_32(&mdpr->preroll);
  mdpr->duration=BE_32(&mdpr->duration);
  mdpr->object_id=BE_32(&mdpr->object_id);}static void rmff_dump_cont(rmff_cont_t *cont, char *buffer) {  int p;  if (!cont) 	  return;  cont -> object_id = BE_32( &cont -> object_id);  cont->size=BE_32(&cont->size);  cont->object_version=BE_16(&cont->object_version);  memcpy(buffer, cont, 8);  memcpy(&buffer[8], &cont->object_version, 2);    cont->title_len=BE_16(&cont->title_len);  memcpy(&buffer[10], &cont->title_len, 2);  cont->title_len=BE_16(&cont->title_len);  memcpy(&buffer[12], cont->title, cont->title_len);  p=12+cont->title_len;  cont->author_len=BE_16(&cont->author_len);  memcpy(&buffer[p], &cont->author_len, 2);  cont->author_len=BE_16(&cont->author_len);  memcpy(&buffer[p+2], cont->author, cont->author_len);  p+=2+cont->author_len;  cont->copyright_len=BE_16(&cont->copyright_len);  memcpy(&buffer[p], &cont->copyright_len, 2);  cont->copyright_len=BE_16(&cont->copyright_len);  memcpy(&buffer[p+2], cont->copyright, cont->copyright_len);  p+=2+cont->copyright_len;  cont->comment_len=BE_16(&cont->comment_len);  memcpy(&buffer[p], &cont->comment_len, 2);  cont->comment_len=BE_16(&cont->comment_len);  memcpy(&buffer[p+2], cont->comment, cont->comment_len);  cont->size=BE_32(&cont->size);  cont->object_version=BE_16(&cont->object_version);  cont->object_id=BE_32(&cont->object_id);}static void rmff_dump_dataheader(rmff_data_t *data, char *buffer) {  if (!data) return;  data->object_id=BE_32(&data->object_id);  data->size=BE_32(&data->size);  data->object_version=BE_16(&data->object_version);  data->num_packets=BE_32(&data->num_packets);  data->next_data_header=BE_32(&data->next_data_header);  memcpy(buffer, data, 8);  memcpy(&buffer[8], &data->object_version, 2);  memcpy(&buffer[10], &data->num_packets, 8);      data->num_packets=BE_32(&data->num_packets);
  data->next_data_header=BE_32(&data->next_data_header);
  data->size=BE_32(&data->size);
  data->object_version=BE_16(&data->object_version);
  data->object_id=BE_32(&data->object_id);}int rmff_dump_header(rmff_header_t *h, char *buffer, int max) {  	int 		written=0;  	  	if(h == NULL)  		return	-1;  	rmff_mdpr_t **stream = h->streams;  	rmff_dump_fileheader(h->fileheader, &buffer[written]);  	written += h->fileheader->size;  	rmff_dump_prop(h->prop, &buffer[written]);  	written += h->prop->size;  	rmff_dump_cont(h->cont, &buffer[written]);  	written+=h->cont->size;  	if (stream)  	{    	while(*stream)    		{      	rmff_dump_mdpr(*stream, &buffer[written]);      	written+=(*stream)->size;     	 	stream++;    		}  	}      	rmff_dump_dataheader(h->data, &buffer[written]);  	written+=18;  	if(written < max)  		return written;	else		return	-1;}void rmff_dump_pheader(rmff_pheader_t *h, char *data) {  data[0]=(h->object_version>>8) & 0xff;  data[1]=h->object_version & 0xff;  data[2]=(h->length>>8) & 0xff;  data[3]=h->length & 0xff;  data[4]=(h->stream_number>>8) & 0xff;  data[5]=h->stream_number & 0xff;  data[6]=(h->timestamp>>24) & 0xff;  data[7]=(h->timestamp>>16) & 0xff;  data[8]=(h->timestamp>>8) & 0xff;  data[9]=h->timestamp & 0xff;  data[10]=h->reserved;  data[11]=h->flags;}static rmff_fileheader_t *rmff_scan_fileheader(const char *data) {  rmff_fileheader_t *fileheader = new rmff_fileheader_t;  fileheader->object_id=BE_32(data);  fileheader->size=BE_32(&data[4]);  fileheader->object_version=BE_16(&data[8]);  if (fileheader->object_version != 0)  {    printf("warning: unknown object version in .RMF: 0x%04x\n",      fileheader->object_version);  }  fileheader->file_version=BE_32(&data[10]);  fileheader->num_headers=BE_32(&data[14]);  return fileheader;}rmff_fileheader_t	*rmff_new_fileheader(unsigned int count){	rmff_fileheader_t	*header = new rmff_fileheader_t;	header -> object_id = RMF_TAG;	header -> size      = 18;	header -> object_version = 0;	header -> file_version = 0;	header -> num_headers = count;		return	header;

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
尤物av一区二区| 欧美日韩免费一区二区三区视频 | 日韩小视频在线观看专区| 亚洲欧美偷拍另类a∨色屁股| 亚洲精品中文字幕乱码三区| ww久久中文字幕| 精品日韩在线观看| 日韩三级精品电影久久久| 91精品中文字幕一区二区三区| 欧美在线999| 欧美麻豆精品久久久久久| 777久久久精品| 日韩美一区二区三区| 亚洲精品在线网站| 久久精品一区二区三区不卡| 中文字幕高清不卡| 亚洲欧美日本韩国| 视频一区视频二区中文字幕| 热久久国产精品| 高清在线不卡av| 91电影在线观看| 欧美不卡一区二区三区| 久久网站最新地址| 国产精品美日韩| 一卡二卡三卡日韩欧美| 日韩和欧美一区二区| 国产一区二区三区久久久| 成人免费毛片嘿嘿连载视频| 色综合中文字幕国产| 99热这里都是精品| 欧美一区永久视频免费观看| 久久综合一区二区| 亚洲欧美另类图片小说| 麻豆传媒一区二区三区| 成人av影院在线| 69av一区二区三区| 日本一区二区三区dvd视频在线| 亚洲精品久久7777| 九九国产精品视频| 91搞黄在线观看| 欧美精品一区二区久久久| 亚洲三级理论片| 国产专区综合网| 欧美日韩精品一区二区天天拍小说| 精品久久99ma| 亚洲五月六月丁香激情| 国产成人综合在线播放| 欧美日韩国产一区二区三区地区| 日本一区二区三区电影| 日韩成人av影视| 色综合久久综合网| 国产女同性恋一区二区| 秋霞午夜鲁丝一区二区老狼| 91麻豆国产在线观看| 久久久久国产精品免费免费搜索| 亚洲一级电影视频| av一区二区不卡| 久久久久久久久免费| 免费成人在线视频观看| 欧美亚洲高清一区| 中文字幕一区二区三区乱码在线| 精品一区二区综合| 91精品国产综合久久久久久久| 一区二区三区在线观看网站| 成人av资源站| 国产免费观看久久| 国产一区亚洲一区| 精品不卡在线视频| 麻豆91在线播放| 日韩视频一区二区三区| 肉色丝袜一区二区| 欧美日本国产视频| 日韩伦理电影网| 九九久久精品视频| 欧美一区二区二区| 日韩精品一二三区| 欧美一级午夜免费电影| 日本欧美一区二区三区| 欧美日韩免费在线视频| 一区二区三区欧美视频| 欧美婷婷六月丁香综合色| 亚洲综合自拍偷拍| 欧美日韩一区二区在线观看| 亚洲一区二区视频在线观看| 欧美白人最猛性xxxxx69交| 天天亚洲美女在线视频| 欧美精品第1页| 免费人成在线不卡| 日韩免费视频一区| 国产酒店精品激情| 欧美高清在线视频| av欧美精品.com| 一区二区三区欧美激情| 成人av网在线| 国产精品一区在线观看乱码| 26uuu亚洲| 国产激情偷乱视频一区二区三区| 欧美经典三级视频一区二区三区| 成人黄色大片在线观看| 亚洲一区二区成人在线观看| 欧美另类videos死尸| 精品一区二区三区的国产在线播放| 久久亚洲二区三区| 色呦呦日韩精品| 日韩和欧美的一区| 中文欧美字幕免费| 欧美三级韩国三级日本三斤| 精品一区二区免费看| 国产精品视频观看| 欧美日韩亚洲综合一区二区三区 | 国产精品国产精品国产专区不片 | 亚洲一级片在线观看| 日韩亚洲欧美高清| 成人免费视频caoporn| 午夜天堂影视香蕉久久| 亚洲精品日产精品乱码不卡| 一本色道久久综合狠狠躁的推荐| 石原莉奈一区二区三区在线观看| 久久久精品天堂| 欧美三级在线播放| 欧美在线观看视频一区二区| 久久福利视频一区二区| 亚洲欧美另类图片小说| 久久久影视传媒| 欧美福利电影网| 91丨九色丨尤物| 国产乱人伦偷精品视频免下载| 亚洲第一激情av| 日韩一区欧美小说| 久久久综合精品| 日韩网站在线看片你懂的| 91久久精品国产91性色tv| 国产成人精品影视| 捆绑调教一区二区三区| 亚洲国产一区二区视频| 亚洲免费av高清| 国产精品理伦片| 久久精品在这里| 亚洲精品一区二区三区影院| 一区二区三区欧美日韩| 制服丝袜亚洲网站| 国产成人啪免费观看软件 | 中文字幕免费观看一区| 日韩午夜激情av| 欧美人牲a欧美精品| 91黄色免费看| 91最新地址在线播放| 国产成人免费视频| 精品一区二区免费在线观看| 欧美bbbbb| 日韩av一区二区三区| 亚洲成人av一区| 亚洲第一在线综合网站| 亚洲图片欧美视频| 亚洲va在线va天堂| 亚洲国产乱码最新视频| 亚洲18色成人| 视频一区二区三区入口| 日韩激情中文字幕| 日韩国产在线一| 亚洲免费在线观看| 亚洲毛片av在线| 亚洲国产日韩综合久久精品| 亚洲国产精品一区二区尤物区| 性久久久久久久久| 日韩av电影免费观看高清完整版| 免费人成精品欧美精品| 极品少妇xxxx精品少妇| 国产精品一级在线| 懂色av中文字幕一区二区三区| 国产99一区视频免费| 91原创在线视频| 欧美午夜片在线看| 日韩精品综合一本久道在线视频| www国产亚洲精品久久麻豆| 久久久久久电影| 成人免费一区二区三区视频| 亚洲一二三四区不卡| 捆绑变态av一区二区三区| 国产伦精品一区二区三区视频青涩 | 欧美成人精精品一区二区频| 国产亚洲欧美日韩在线一区| 亚洲天堂久久久久久久| 国产成人在线看| 成人一区二区视频| 91视频精品在这里| 91精品国产综合久久久久久久| 精品国产一区二区在线观看| 日韩美女久久久| 美腿丝袜亚洲一区| 99re在线视频这里只有精品| 欧美一区二区女人| 国产精品国产三级国产aⅴ原创| 日韩主播视频在线| 床上的激情91.| 欧美一二三四区在线| 亚洲日韩欧美一区二区在线| 蜜桃视频第一区免费观看| 色综合久久88色综合天天| 精品国产一区二区在线观看|