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

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

?? file_switching.c

?? Sun公司Dream項(xiàng)目
?? C
字號(hào):
/*
 * The contents of this file are subject to the terms
 * of the Common Development and Distribution License
 * (the "License").  You may not use this file except
 * in compliance with the License.
 *
 * You can obtain a copy of the license at
 * http://www.opensource.org/licenses/cddl1.php
 * See the License for the specific language governing
 * permissions and limitations under the License.
 *
 * When distributing Covered Code, include this CDDL
 * HEADER in each file and include the License file at
 * http://www.opensource.org/licenses/cddl1.php.  If 
 * applicable, add the following below this CDDL HEADER, 
 * with the fields enclosed by brackets "[]" replaced 
 * with your own identifying information: 
 * Portions Copyright [yyyy]
 * [name of copyright owner]
 */ 

/*
 * $(@)file_switching.c $Revision: 1.1.1.1 $ $Date: 2006/04/17 22:47:29 $
 * 
 * Copyright 2006 Sun Microsystems, Inc. All Rights Reserved.
 */
/*
 * Copyright (c) 2005 by Sun Microsystems, Inc.
 * Functions to perform TS parsing

 * Created:   August, 2005
 * Author:    Yongfang Liang
 *---------------------------------------------------------------*/
#include "ecmfile.h"

#define NO_FRAMES 500
#define READ_WRITE_BUFFER_LEN 8192
int  my_read_frame(metadata *meta, picFrame_metadata *frame);
void CleanMetaData(metadata *p_meta);
metadata *OpenMetaDataFile(FILE *hMetaFile);

void Copyfile(FILE *in, FILE *out, int len)
{
    static unsigned char buffer[READ_WRITE_BUFFER_LEN];
    int i = 0;
    int end = len / READ_WRITE_BUFFER_LEN;
    for (i = 0; i < end; i++)
    {
        int size = fread(buffer, 1, READ_WRITE_BUFFER_LEN, in);
        size = fwrite(buffer, 1, READ_WRITE_BUFFER_LEN, out);
    }
    
    fread(buffer, 1, len % READ_WRITE_BUFFER_LEN, in);
    fwrite(buffer, 1, len % READ_WRITE_BUFFER_LEN, out);
	return;
}

/* test File1 --> File2 --> File1 
from file1 switch to file2, then back to file1 */

void StitchFile(char *chFile1, char* chFile2, char *chMetaFile, char *chOutFile, 
                int stream1_no, int stream2_no)
{
    metadata *p_meta;
    FILE *hFile1, *hFile2,  *hOutFile, *hMetaFile;
    int i = 0, frame_no = 0;
    FileOffset start_pos = 0, end_pos = 0;
	picFrame_metadata picFrame;
    
    hFile1 = fopen(chFile1, "rb");
    hFile2 = fopen(chFile2, "rb");
    hMetaFile = fopen(chMetaFile, "rb");
    hOutFile = fopen(chOutFile, "wb");
    
	assert(hFile1 != NULL && hFile2 != NULL 
		   && hMetaFile != NULL && hOutFile != NULL);

    p_meta = OpenMetaDataFile(hMetaFile);
    assert(p_meta->header->no_of_streams >= 2); 
    assert(stream1_no < p_meta->header->no_of_streams 
    	   && stream2_no < p_meta->header->no_of_streams); // stream index verification

    printf(" Start ...\n");
    	
	/* read file 1 */
	do 
	{
		int err = my_read_frame(p_meta,&picFrame);
		if(err == 0)
		{
			return;
		}
		if (picFrame.offsets[stream1_no] == -1)
		{
			continue;
		}
		else
		{
            frame_no++;
		}
	}while ( frame_no < NO_FRAMES);

    end_pos = picFrame.offsets[stream1_no] / TP_LENGTH * TP_LENGTH;
    Copyfile(hFile1, hOutFile, (int)(end_pos - start_pos));

	/* read file 2 */
    while ( picFrame.offsets[stream2_no] == -1)
    {
		int err = my_read_frame(p_meta,&picFrame);
		if(err == 0)
		{
			return;
		}

    };

	frame_no = 0;
    start_pos = picFrame.offsets[stream2_no] / TP_LENGTH * TP_LENGTH;
    fseek(hFile2, start_pos, SEEK_SET);
	do 
	{
		int err = my_read_frame(p_meta,&picFrame);
		if(err == 0)
		{
			return;
		}
		if (picFrame.offsets[stream2_no] == -1)
		{
			continue;
		}
		else
		{
            frame_no++;
		}
	}while ( frame_no < 300);

    end_pos = picFrame.offsets[stream2_no] / TP_LENGTH * TP_LENGTH;
    Copyfile(hFile2, hOutFile, (int)(end_pos - start_pos));

    /* back to file 1 */
    while ( picFrame.offsets[stream1_no] == -1)
    {
		int err = my_read_frame(p_meta,&picFrame);
		if(err == 0)
		{
			return;
		}

    };
	/* read file 1 */
	frame_no = 0;
    start_pos = picFrame.offsets[stream1_no] / TP_LENGTH * TP_LENGTH;
    fseek(hFile1, start_pos, SEEK_SET);
	do 
	{
		int err = my_read_frame(p_meta,&picFrame);
		if(err == 0)
		{
			return;
		}
		if (picFrame.offsets[stream1_no] == -1)
		{
			continue;
		}
		else
		{
            frame_no++;
		}
	}while ( frame_no < NO_FRAMES);

    end_pos = picFrame.offsets[stream1_no] / TP_LENGTH * TP_LENGTH;
    Copyfile(hFile1, hOutFile, (int)(end_pos - start_pos));
    printf(" Done !\n");
    fclose(hFile1);
    fclose(hFile2);
    fclose(hMetaFile);
    fclose(hOutFile);
    CleanMetaData(p_meta);
    
	return;
}

static void usage(const char *progName) 
{
	printf("usage: %s 1Xfile nXfile metafile outfile", progName);	
	exit(0);
}

int main(int argc, char **argv)
{
    if(argc != 5) 
    {
    	usage(argv[0]);
    }   

    StitchFile(argv[1], argv[2], argv[3], argv[4], 0 , 1);
    
    return 0;
}


?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號(hào) Ctrl + =
減小字號(hào) Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
9色porny自拍视频一区二区| 26uuu久久天堂性欧美| 一本色道久久综合狠狠躁的推荐| 国产精品自产自拍| 国产一区二区视频在线播放| 久久精品久久精品| 久久精品国产澳门| 美腿丝袜亚洲一区| 麻豆专区一区二区三区四区五区| 日韩成人一级大片| 免费视频一区二区| 六月丁香婷婷色狠狠久久| 看国产成人h片视频| 久久国产乱子精品免费女| 国产中文字幕一区| 国产成人h网站| 99久久99久久久精品齐齐| 97se亚洲国产综合自在线不卡| 99精品桃花视频在线观看| 91精品办公室少妇高潮对白| 一本久久a久久精品亚洲| 91福利视频在线| 欧美日韩国产成人在线免费| 555www色欧美视频| 亚洲精品在线观看视频| 欧美tk丨vk视频| 亚洲国产激情av| 亚洲素人一区二区| 亚洲一区二区三区四区五区中文| 性做久久久久久久免费看| 麻豆91免费观看| 国产精品夜夜爽| 95精品视频在线| 欧美剧情片在线观看| 欧美不卡一区二区| 国产精品不卡一区| 亚洲va国产天堂va久久en| 麻豆久久一区二区| 成人黄色综合网站| 欧美日本免费一区二区三区| 日韩一级欧美一级| 欧美韩国一区二区| 亚洲福利一区二区| 国产乱子伦一区二区三区国色天香| 成人性视频网站| 欧美日韩国产在线观看| 久久你懂得1024| 亚洲一区中文日韩| 国产一区二区精品久久99| 色999日韩国产欧美一区二区| 欧美一区二区三区白人| 国产精品视频线看| 日韩国产欧美在线播放| 成人av免费在线观看| 91麻豆精品久久久久蜜臀| 中文字幕不卡一区| 蜜桃视频在线观看一区| 色域天天综合网| 日韩欧美国产不卡| 樱桃视频在线观看一区| 精品综合免费视频观看| 一本高清dvd不卡在线观看| 精品粉嫩aⅴ一区二区三区四区| 亚洲激情图片一区| 国内精品不卡在线| 欧美福利视频一区| 亚洲另类一区二区| 国产精品原创巨作av| 欧美一区二区三区在线电影| 亚洲欧美日韩中文播放| 国产老女人精品毛片久久| 欧美日韩国产一区二区三区地区| 国产精品欧美久久久久一区二区| 美女一区二区三区在线观看| 91久久精品一区二区二区| 国产欧美精品一区| 裸体在线国模精品偷拍| 欧美精品18+| 一区二区三区高清在线| 粉嫩一区二区三区性色av| 日韩精品中文字幕一区二区三区| 一区二区三区在线视频免费观看| 国产电影一区在线| 久久影院电视剧免费观看| 日日摸夜夜添夜夜添精品视频 | 丝袜亚洲另类丝袜在线| 91玉足脚交白嫩脚丫在线播放| 国产欧美精品区一区二区三区| 美腿丝袜一区二区三区| 欧美一区二区精品在线| 亚洲国产成人av网| 欧美亚洲一区二区在线| 亚洲天堂成人网| 99久久精品费精品国产一区二区| 国产日韩成人精品| 国产剧情一区在线| 久久久.com| 国产精品亚洲午夜一区二区三区| 精品精品欲导航| 精品在线免费观看| 精品国产免费视频| 精品一区二区三区的国产在线播放 | 99热精品一区二区| 中文字幕电影一区| 成人激情小说乱人伦| 日本一区二区视频在线| 国产高清成人在线| 国产视频911| 成人激情午夜影院| 亚洲人成网站在线| 色婷婷久久99综合精品jk白丝| 亚洲人妖av一区二区| 91视频你懂的| 亚洲午夜激情网页| 在线播放视频一区| 美国十次综合导航| 久久综合久久综合亚洲| 国产成人精品影院| 亚洲视频一区二区在线观看| 色哟哟一区二区在线观看| 亚洲精品久久嫩草网站秘色| 欧美日韩国产一级二级| 美女尤物国产一区| 久久久99精品久久| aa级大片欧美| 性感美女久久精品| 日韩美女视频在线| 高清国产一区二区| 最新不卡av在线| 欧美片在线播放| 国内成+人亚洲+欧美+综合在线| 国产欧美日韩三级| 在线这里只有精品| 日韩精品高清不卡| 久久久久综合网| 91亚洲国产成人精品一区二三| 亚洲午夜免费福利视频| 日韩欧美资源站| 成人永久免费视频| 亚洲国产裸拍裸体视频在线观看乱了| 欧美丰满高潮xxxx喷水动漫| 国产精品99久久久久久似苏梦涵 | 午夜伊人狠狠久久| 精品国产欧美一区二区| 成人免费三级在线| 亚洲午夜三级在线| 26uuu精品一区二区| 91一区二区在线| 蜜臀av在线播放一区二区三区 | 日产国产欧美视频一区精品| 久久嫩草精品久久久精品| 日本韩国欧美三级| 国产在线精品一区二区| 亚洲另类在线制服丝袜| 欧美成人乱码一区二区三区| 91一区二区三区在线播放| 日本中文一区二区三区| 中文字幕在线免费不卡| 91精品国产综合久久精品| 成人午夜视频免费看| 日本不卡视频在线观看| 国产精品亲子乱子伦xxxx裸| 欧美精品久久久久久久多人混战| 国产成人午夜视频| 日韩在线a电影| 最新热久久免费视频| 日韩久久精品一区| 色噜噜夜夜夜综合网| 国产乱码精品一区二区三区av | 亚洲欧美一区二区久久| 久久先锋影音av| 欧美日韩大陆在线| 99精品久久99久久久久| 久久丁香综合五月国产三级网站| 亚洲麻豆国产自偷在线| 亚洲精品一线二线三线无人区| 欧美午夜寂寞影院| 99久久久无码国产精品| 国产一区二区三区美女| 日本午夜精品一区二区三区电影| 亚洲人快播电影网| 国产欧美日韩不卡免费| 日韩一本二本av| 欧美久久久久久蜜桃| 91精品福利视频| 91色.com| av在线一区二区| 国产91精品一区二区麻豆亚洲| 麻豆精品久久精品色综合| 午夜国产精品一区| 亚洲综合在线免费观看| 一色屋精品亚洲香蕉网站| 国产欧美日韩另类一区| 久久精品这里都是精品| 精品免费视频一区二区| 欧美一区二区精品久久911| 欧美区一区二区三区| 欧美日本在线一区| 欧美年轻男男videosbes| 欧美三级视频在线播放|