diff subreader.c @ 4052:505f206d80d1

corrections to adjust_subs_time function which now uses fps if needed
author atlka
date Tue, 08 Jan 2002 14:10:22 +0000
parents 0e7c382bc53a
children 3c747168eb6e
line wrap: on
line diff
--- a/subreader.c	Tue Jan 08 12:45:38 2002 +0000
+++ b/subreader.c	Tue Jan 08 14:10:22 2002 +0000
@@ -599,19 +599,20 @@
 
 #endif
 
-static void adjust_subs_time(subtitle* sub, unsigned long subtime){
+void adjust_subs_time(subtitle* sub, float subtime, float fps){
+	subtitle* nextsub;
 	int i = sub_num;
-	subtitle* nextsub;
+	unsigned long subfms = (sub_uses_time ? 100 : fps) * subtime;
 
-	for (;;){	
+	if (i)	for (;;){	
 		if (sub->end <= sub->start)
-			sub->end = sub->start + subtime;
+			sub->end = sub->start + subfms;
 		if (!--i) return;
 		nextsub = sub + 1;
 		if (sub->end >= nextsub->start){
 			sub->end = nextsub->start - 1;
-			if (sub->end - sub->start > subtime)
-				sub->end = sub->start + subtime;
+			if (sub->end - sub->start > subfms)
+				sub->end = sub->start + subfms;
 		}
 		sub = nextsub;
 	}
@@ -682,11 +683,6 @@
 	return NULL;
     }
 
-// if sub->end time is 0 set it to sub_>start + ~6 sec but not 
-// after next sub->start time
-// correct also if sub->end time is below sub->start time
-// maybe default subtime (150fms) should be a program option AST
-    adjust_subs_time(first, 150);
     return first;
 }