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

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

?? subreader.c

?? sigmadesign smp8623 gui source code ,bingo
?? C
?? 第 1 頁 / 共 4 頁
字號:
	RMascii *p=NULL, *next,separator;	int i,len,plen;	while (!current->text[0]) {		if (!stream_read_line (st, line, LINE_LEN)) return NULL;		if ((len=sscanf (line, "%d:%d:%d%c%n",&a1,&a2,&a3,&separator,&plen)) < 4)			continue;		if (!(current->start = a1*360000+a2*6000+a3*100))			continue;                /* removed by wodzu		p=line; 		// finds the body of the subtitle 		for (i=0; i<3; i++){		   p=RMFindAsciiCharacter(p,':');		   if (p==NULL) break;		   ++p;		}		if (p==NULL) {		    printf("SUB: Skipping incorrect subtitle line!\n");		    continue;		}                */                // by wodzu: hey! this time we know what length it has! what is                // that magic for? it can't deal with space instead of third                // colon! look, what simple it can be:                p = &line[ plen ]; 		i=0;		if (*p!='|') {			//			next = p,i=0;			while ((next =sub_readtext (next, &(current->text[i])))) {				if (current->text[i]==ERR) {return ERR;}				i++;				if (i>=SUB_MAX_TEXT) { current->lines=i;return current;}			}			current->lines=i+1;		}	}	return current;}static subtitle *sub_read_line_rt(stream_t *st,subtitle *current) {	//TODO: This format uses quite rich (sub/super)set of xhtml	// I couldn't check it since DTD is not included.	// WARNING: full XML parses can be required for proper parsing    RMascii line[LINE_LEN+1];    int a1,a2,a3,a4,b1,b2,b3,b4;    RMascii *p=NULL,*next=NULL;    int i,len,plen;    while (!current->text[0]) {	if (!stream_read_line (st, line, LINE_LEN)) return NULL;	//TODO: it seems that format of time is not easily determined, it may be 1:12, 1:12.0 or 0:1:12.0	//to describe the same moment in time. Maybe there are even more formats in use.	//if ((len=sscanf (line, "<Time Begin=\"%d:%d:%d.%d\" End=\"%d:%d:%d.%d\"",&a1,&a2,&a3,&a4,&b1,&b2,&b3,&b4)) < 8)	plen=a1=a2=a3=a4=b1=b2=b3=b4=0;	if (	((len=sscanf (line, "<%*[tT]ime %*[bB]egin=\"%d.%d\" %*[Ee]nd=\"%d.%d\"%*[^<]<clear/>%n",&a3,&a4,&b3,&b4,&plen)) < 4) &&	((len=sscanf (line, "<%*[tT]ime %*[bB]egin=\"%d.%d\" %*[Ee]nd=\"%d:%d.%d\"%*[^<]<clear/>%n",&a3,&a4,&b2,&b3,&b4,&plen)) < 5) &&	((len=sscanf (line, "<%*[tT]ime %*[bB]egin=\"%d:%d\" %*[Ee]nd=\"%d:%d\"%*[^<]<clear/>%n",&a2,&a3,&b2,&b3,&plen)) < 4) &&	((len=sscanf (line, "<%*[tT]ime %*[bB]egin=\"%d:%d\" %*[Ee]nd=\"%d:%d.%d\"%*[^<]<clear/>%n",&a2,&a3,&b2,&b3,&b4,&plen)) < 5) &&//	((len=sscanf (line, "<%*[tT]ime %*[bB]egin=\"%d:%d.%d\" %*[Ee]nd=\"%d:%d\"%*[^<]<clear/>%n",&a2,&a3,&a4,&b2,&b3,&plen)) < 5) &&	((len=sscanf (line, "<%*[tT]ime %*[bB]egin=\"%d:%d.%d\" %*[Ee]nd=\"%d:%d.%d\"%*[^<]<clear/>%n",&a2,&a3,&a4,&b2,&b3,&b4,&plen)) < 6) &&	((len=sscanf (line, "<%*[tT]ime %*[bB]egin=\"%d:%d:%d.%d\" %*[Ee]nd=\"%d:%d:%d.%d\"%*[^<]<clear/>%n",&a1,&a2,&a3,&a4,&b1,&b2,&b3,&b4,&plen)) < 8) &&	//now try it without end time	((len=sscanf (line, "<%*[tT]ime %*[bB]egin=\"%d.%d\"%*[^<]<clear/>%n",&a3,&a4,&plen)) < 2) &&	((len=sscanf (line, "<%*[tT]ime %*[bB]egin=\"%d:%d\"%*[^<]<clear/>%n",&a2,&a3,&plen)) < 2) &&	((len=sscanf (line, "<%*[tT]ime %*[bB]egin=\"%d:%d.%d\"%*[^<]<clear/>%n",&a2,&a3,&a4,&plen)) < 3) &&	((len=sscanf (line, "<%*[tT]ime %*[bB]egin=\"%d:%d:%d.%d\"%*[^<]<clear/>%n",&a1,&a2,&a3,&a4,&plen)) < 4)	)	    continue;	current->start = a1*360000+a2*6000+a3*100+a4/10;	current->end   = b1*360000+b2*6000+b3*100+b4/10;	if (b1 == 0 && b2 == 0 && b3 == 0 && b4 == 0)	  current->end = current->start+200;	p=line;	p+=plen;i=0;	// TODO: I don't know what kind of convention is here for marking multiline subs, maybe <br/> like in xml?	next = strstr(line,"<clear/>");	if(next && RMasciiLength(next)>8){	  next+=8;i=0;	  while ((next =sub_readtext (next, &(current->text[i])))) {		if (current->text[i]==ERR) {return ERR;}		i++;		if (i>=SUB_MAX_TEXT) { current->lines=i;return current;}	  }	}			current->lines=i+1;    }    return current;}static subtitle *sub_read_line_ssa(stream_t *st,subtitle *current) {/* * Sub Station Alpha v4 (and v2?) scripts have 9 commas before subtitle * other Sub Station Alpha scripts have only 8 commas before subtitle * Reading the "ScriptType:" field is not reliable since many scripts appear * w/o it * * http://www.scriptclub.org is a good place to find more examples * http://www.eswat.demon.co.uk is where the SSA specs can be found */        int comma;        static int max_comma = 32; /* let's use 32 for the case that the */                    /*  amount of commas increase with newer SSA versions */	int hour1, min1, sec1, hunsec1,	    hour2, min2, sec2, hunsec2, nothing;	int num;	RMascii line[LINE_LEN+1],	     line3[LINE_LEN+1],	     *line2;	RMascii *tmp;	do {		if (!stream_read_line (st, line, LINE_LEN)) return NULL;	} while (sscanf (line, "Dialogue: Marked=%d,%d:%d:%d.%d,%d:%d:%d.%d,"			"%[^\n\r]", &nothing,			&hour1, &min1, &sec1, &hunsec1,			&hour2, &min2, &sec2, &hunsec2,			line3) < 9		 &&		 sscanf (line, "Dialogue: %d,%d:%d:%d.%d,%d:%d:%d.%d,"			 "%[^\n\r]", &nothing,			 &hour1, &min1, &sec1, &hunsec1,			 &hour2, &min2, &sec2, &hunsec2,			 line3) < 9	    );        line2=strchr(line3, ',');        for (comma = 4; comma < max_comma; comma ++)          {            tmp = line2;            if(!(tmp=strchr(++tmp, ','))) break;            if(*(++tmp) == ' ') break;                  /* a space after a comma means we're already in a sentence */            line2 = tmp;          }        if(comma < max_comma)max_comma = comma;	/* eliminate the trailing comma */	if(*line2 == ',') line2++;	current->lines=0;num=0;	current->start = 360000*hour1 + 6000*min1 + 100*sec1 + hunsec1;	current->end   = 360000*hour2 + 6000*min2 + 100*sec2 + hunsec2;        while (((tmp=strstr(line2, "\\n")) != NULL) || ((tmp=strstr(line2, "\\N")) != NULL) ){		current->text[num]=MALLOC(tmp-line2+1);		strncpy (current->text[num], line2, tmp-line2);		current->text[num][tmp-line2]='\0';		line2=tmp+2;		num++;		current->lines++;		if (current->lines >=  SUB_MAX_TEXT) return current;	}	current->text[num]=strdup(line2);	current->lines++;	return current;}static void sub_pp_ssa(subtitle *sub) {	int l=sub->lines;	RMascii *so,*de,*start;	while (l){            	/* eliminate any text enclosed with {}, they are font and color settings */            	so=de=sub->text[--l];            	while (*so) {            		if(*so == '{' && so[1]=='\\') {            			for (start=so; *so && *so!='}'; so++);            			if(*so) so++; else so=start;            		}            		if(*so) {            			*de=*so;            			so++; de++;            		}            	}            	*de=*so;        }}/* * PJS subtitles reader. * That's the "Phoenix Japanimation Society" format. * I found some of them in http://www.scriptsclub.org/ (used for anime). * The time is in tenths of second. * * by set, based on code by szabi (dunnowhat sub format ;-) */static subtitle *sub_read_line_pjs(stream_t *st,subtitle *current) {    RMascii line[LINE_LEN+1];    RMascii text[LINE_LEN+1], *s, *d;    if (!stream_read_line (st, line, LINE_LEN))	return NULL;    /* skip spaces */    for (s=line; *s && isspace(*s); s++);    /* allow empty lines at the end of the file */    if (*s==0)	return NULL;    /* get the time */    if (sscanf (s, "%ld,%ld,", &(current->start),		&(current->end)) <2) {	return ERR;    }    /* the files I have are in tenths of second */    current->start *= 10;    current->end *= 10;    /* walk to the beggining of the string */    for (; *s; s++) if (*s==',') break;    if (*s) {	for (s++; *s; s++) if (*s==',') break;	if (*s) s++;    }    if (*s!='"') {	return ERR;    }    /* copy the string to the text buffer */    for (s++, d=text; *s && *s!='"'; s++, d++)	*d=*s;    *d=0;    current->text[0] = strdup(text);    current->lines = 1;    return current;}#ifndef USE_SORTSUB//we don't need this if we use previous_sub_endsubtitle *previous_aqt_sub = NULL;#endifstatic subtitle *sub_read_line_aqt(stream_t *st,subtitle *current) {    RMascii line[LINE_LEN+1];    RMascii *next;    int i;    while (1) {    // try to locate next subtitle        if (!stream_read_line (st, line, LINE_LEN))		return NULL;        if (!(sscanf (line, "-->> %ld", &(current->start)) <1))		break;    }#ifdef USE_SORTSUB    previous_sub_end = (current->start) ? current->start - 1 : 0;#else    if (previous_aqt_sub != NULL)	previous_aqt_sub->end = current->start-1;    previous_aqt_sub = current;#endif    if (!stream_read_line (st, line, LINE_LEN))	return NULL;    sub_readtext((RMascii *) &line,&current->text[0]);    current->lines = 1;    current->end = current->start; // will be corrected by next subtitle    if (!stream_read_line (st, line, LINE_LEN))	return current;    next = line,i=1;    while ((next =sub_readtext (next, &(current->text[i])))) {	if (current->text[i]==ERR) {return ERR;}	i++;	if (i>=SUB_MAX_TEXT) { current->lines=i;return current;}	}    current->lines=i+1;    if ((current->text[0]=="") && (current->text[1]=="")) {#ifdef USE_SORTSUB	previous_sub_end = 0;#else	// void subtitle -> end of previous marked and exit	previous_aqt_sub = NULL;#endif	return NULL;	}    return current;}#ifndef USE_SORTSUBsubtitle *previous_subrip09_sub = NULL;#endifstatic subtitle *sub_read_line_subrip09(stream_t *st,subtitle *current) {    RMascii line[LINE_LEN+1];    int a1,a2,a3;    RMascii * next=NULL;    int i,len;    while (1) {    // try to locate next subtitle        if (!stream_read_line (st, line, LINE_LEN))		return NULL;        if (!((len=sscanf (line, "[%d:%d:%d]",&a1,&a2,&a3)) < 3))		break;    }    current->start = a1*360000+a2*6000+a3*100;#ifdef USE_SORTSUB    previous_sub_end = (current->start) ? current->start - 1 : 0;#else    if (previous_subrip09_sub != NULL)	previous_subrip09_sub->end = current->start-1;    previous_subrip09_sub = current;#endif    if (!stream_read_line (st, line, LINE_LEN))	return NULL;    next = line,i=0;    current->text[0]=""; // just to be sure that string is clear    while ((next =sub_readtext (next, &(current->text[i])))) {	if (current->text[i]==ERR) {return ERR;}	i++;	if (i>=SUB_MAX_TEXT) { current->lines=i;return current;}	}    current->lines=i+1;    if ((current->text[0]=="") && (i==0)) {#ifdef USE_SORTSUB	previous_sub_end = 0;#else	// void subtitle -> end of previous marked and exit	previous_subrip09_sub = NULL;#endif	return NULL;	}    return current;}static subtitle *sub_read_line_jacosub(stream_t* st, subtitle * current){    RMascii line1[LINE_LEN], line2[LINE_LEN], directive[LINE_LEN], *p, *q;    unsigned a1, a2, a3, a4, b1, b2, b3, b4, comment = 0;    static unsigned jacoTimeres = 30;    static int jacoShift = 0;    RMMemset(current, 0, sizeof(subtitle));    RMMemset(line1, 0, LINE_LEN);    RMMemset(line2, 0, LINE_LEN);    RMMemset(directive, 0, LINE_LEN);    while (!current->text[0]) {	if (!stream_read_line(st, line1, LINE_LEN)) {	    return NULL;	}	if (sscanf	    (line1, "%u:%u:%u.%u %u:%u:%u.%u %[^\n\r]", &a1, &a2, &a3, &a4,	     &b1, &b2, &b3, &b4, line2) < 9) {	    if (sscanf(line1, "@%u @%u %[^\n\r]", &a4, &b4, line2) < 3) {		if (line1[0] == '#') {		    int hours = 0, minutes = 0, seconds, delta, inverter =			1;		    unsigned units = jacoShift;		    switch (toupper(line1[1])) {		    case 'S':			if (isalpha(line1[2])) {			    delta = 6;			} else {			    delta = 2;			}			if (sscanf(&line1[delta], "%d", &hours)) {			    if (hours < 0) {				hours *= -1;				inverter = -1;			    }			    if (sscanf(&line1[delta], "%*d:%d", &minutes)) {				if (sscanf				    (&line1[delta], "%*d:%*d:%d",				     &seconds)) {				    sscanf(&line1[delta], "%*d:%*d:%*d.%d",					   &units);				} else {				    hours = 0;				    sscanf(&line1[delta], "%d:%d.%d",					   &minutes, &seconds, &units);				    minutes *= inverter;				}			    } else {				hours = minutes = 0;				sscanf(&line1[delta], "%d.%d", &seconds,				       &units);				seconds *= inverter;			    }			    jacoShift =				((hours * 3600 + minutes * 60 +				  seconds) * jacoTimeres +				 units) * inverter;			}			break;		    case 'T':			if (isalpha(line1[2])) {			    delta = 8;			} else {			    delta = 2;			}			sscanf(&line1[delta], "%u", &jacoTimeres);			break;		    }		}		continue;	    } else {		current->start =		    (RMuint32) ((a4 + jacoShift) * 100.0 /				     jacoTimeres);		current->end =		    (RMuint32) ((b4 + jacoShift) * 100.0 /				     jacoTimeres);	    }	} else {	    current->start =		(RMuint32) (((a1 * 3600 + a2 * 60 + a3) * jacoTimeres + a4 +			 jacoShift) * 100.0 / jacoTimeres);	    current->end =		(RMuint32) (((b1 * 3600 + b2 * 60 + b3) * jacoTimeres + b4 +			 jacoShift) * 100.0 / jacoTimeres);	}	current->lines = 0;	p = line2;	while ((*p == ' ') || (*p == '\t')) {	    ++p;	}	if (isalpha(*p)||*p == '[') {	    int cont, jLength;	    if (sscanf(p, "%s %[^\n\r]", directive, line1) < 2)

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
奇米在线7777在线精品| 久久一区二区视频| voyeur盗摄精品| 激情av综合网| 国产一区中文字幕| 国产精品亚洲视频| 国产成人综合视频| 成人永久免费视频| 91麻豆国产香蕉久久精品| 色综合天天综合在线视频| 欧美亚洲一区二区三区四区| 欧美亚洲高清一区二区三区不卡| 91香蕉视频mp4| 在线观看三级视频欧美| 欧美日韩精品一区二区三区蜜桃 | 国产凹凸在线观看一区二区| 国产综合色在线视频区| 国产精品996| 91蜜桃在线免费视频| 欧美亚洲日本国产| 欧美成人性战久久| 中文久久乱码一区二区| 亚洲欧美另类图片小说| 亚洲成人手机在线| 精品一区二区在线观看| 成人一区在线看| 91丨九色丨黑人外教| 欧美日本韩国一区| 国产日韩欧美电影| 亚洲高清免费视频| 国产精品一区二区在线看| 91天堂素人约啪| 精品少妇一区二区三区在线视频 | 国产一区久久久| 色综合欧美在线视频区| 欧美精品日韩精品| 久久久久久久久久久久久女国产乱 | 伊人开心综合网| 蜜臀精品一区二区三区在线观看 | 五月综合激情婷婷六月色窝| 九一九一国产精品| 日本道免费精品一区二区三区| 制服丝袜亚洲色图| wwwwxxxxx欧美| 亚洲高清在线精品| 不卡欧美aaaaa| 2019国产精品| 亚洲18女电影在线观看| 成人一区在线看| 欧美成人在线直播| 午夜伦理一区二区| 91在线精品一区二区| 久久蜜桃av一区精品变态类天堂| 一区二区成人在线| 高清成人免费视频| 精品久久久网站| 免费观看日韩电影| 欧美网站大全在线观看| 国产精品盗摄一区二区三区| 国内精品写真在线观看| 欧美久久久久久久久久| 一区二区三区国产精华| 豆国产96在线|亚洲| 精品国产露脸精彩对白| 日韩精品欧美成人高清一区二区| 91麻豆产精品久久久久久| 欧美国产欧美综合| 国产综合久久久久影院| 精品国产免费一区二区三区四区 | 成人午夜视频福利| 久久久久综合网| 久久不见久久见免费视频7 | 丰满少妇在线播放bd日韩电影| 欧美成人国产一区二区| 久久精品国产一区二区| 欧美一二三在线| 日本免费在线视频不卡一不卡二| 在线观看网站黄不卡| 亚洲一区二区三区四区在线观看 | 欧美成人aa大片| 久久99精品久久久久久国产越南| 91精品欧美综合在线观看最新 | 国产欧美日韩在线| 丁香婷婷综合激情五月色| 日本一区二区在线不卡| 懂色一区二区三区免费观看| 精品动漫一区二区三区在线观看| 国产自产视频一区二区三区| 久久蜜桃一区二区| 91啪亚洲精品| 亚洲大片在线观看| 日韩精品自拍偷拍| 高清成人在线观看| 亚洲国产另类av| 精品日产卡一卡二卡麻豆| 国产在线视频一区二区三区| 国产精品毛片大码女人| 欧美性视频一区二区三区| 日韩高清国产一区在线| 欧美成人三级在线| av在线一区二区| 午夜视频在线观看一区二区三区| 日韩一卡二卡三卡四卡| 国产一区二区三区美女| 中文字幕欧美日本乱码一线二线| 日本精品视频一区二区| 午夜国产精品一区| 欧美激情一区二区三区四区| 91国偷自产一区二区使用方法| 日韩精品亚洲专区| 国产精品久久久一区麻豆最新章节| 91久久精品午夜一区二区| 日本成人中文字幕在线视频| 国产喷白浆一区二区三区| 欧美亚洲精品一区| 成人免费观看av| 日韩精品亚洲专区| 亚洲另类在线一区| 久久亚洲影视婷婷| 欧美日韩高清在线播放| 不卡电影免费在线播放一区| 日韩主播视频在线| 亚洲特黄一级片| 欧美mv日韩mv国产网站| 欧美色爱综合网| 国产成人av影院| 蜜臀av性久久久久蜜臀aⅴ流畅| 亚洲欧洲成人自拍| 久久夜色精品一区| 91精品国产综合久久久久久久久久 | bt欧美亚洲午夜电影天堂| 日韩高清国产一区在线| 亚洲伊人色欲综合网| 欧美激情艳妇裸体舞| 日韩久久免费av| 欧美日韩高清在线| 欧美手机在线视频| 一本到不卡精品视频在线观看| 国内国产精品久久| 日本sm残虐另类| 日韩精品久久理论片| 一区二区三区成人| 亚洲欧美日韩小说| 国产精品成人在线观看| 欧美高清在线视频| 久久精品欧美一区二区三区麻豆| 日韩一区二区三区免费看 | 亚洲美女在线国产| 日韩伦理电影网| 国产精品福利一区| 中文字幕在线不卡一区| 国产精品国产三级国产普通话蜜臀 | 成人激情黄色小说| 风间由美一区二区av101| 国产一区中文字幕| 国产sm精品调教视频网站| 国产在线精品一区在线观看麻豆| 老司机午夜精品| 美国欧美日韩国产在线播放| 男人的j进女人的j一区| 美女一区二区三区| 国产麻豆91精品| 成人av网址在线| 91香蕉视频mp4| 欧美日韩国产在线观看| 91精品国产美女浴室洗澡无遮挡| 欧美久久久久免费| 久久久久久久久久久99999| 日本一区二区久久| 亚洲精品视频在线看| 亚洲高清在线精品| 久久97超碰国产精品超碰| 国产成人在线视频播放| 成人黄动漫网站免费app| 色乱码一区二区三区88| 欧美军同video69gay| 久久综合九色综合97婷婷女人| 国产视频一区在线观看| 亚洲欧美国产毛片在线| 偷拍亚洲欧洲综合| 国产精品18久久久久久久久| 99久精品国产| 555夜色666亚洲国产免| 国产免费观看久久| 亚洲www啪成人一区二区麻豆| 毛片一区二区三区| 色女孩综合影院| 日韩精品一区二| 亚洲激情五月婷婷| 激情六月婷婷综合| 欧美午夜片在线观看| ww久久中文字幕| 一级做a爱片久久| 国产一区二区三区电影在线观看| 91在线观看成人| 欧美不卡一区二区| 亚洲国产成人91porn| 成人中文字幕在线| 欧美大胆人体bbbb| 亚洲一区二区视频|