summaryrefslogtreecommitdiffstats
path: root/mencoder.c
diff options
context:
space:
mode:
authorarpi <arpi@b3059339-0415-0410-9bf9-f77b7e298cf2>2002-04-15 02:33:05 +0000
committerarpi <arpi@b3059339-0415-0410-9bf9-f77b7e298cf2>2002-04-15 02:33:05 +0000
commit5460fb3727ee103ad27bac4a77f8afa98abb581d (patch)
tree49a119518dc3b4f03d019e40770deb8b9ce95f5b /mencoder.c
parent853ab80ca315edb287315558d381084adbd97413 (diff)
downloadmpv-5460fb3727ee103ad27bac4a77f8afa98abb581d.tar.bz2
mpv-5460fb3727ee103ad27bac4a77f8afa98abb581d.tar.xz
-skiplimit/-noskip options to disable fps correction
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@5630 b3059339-0415-0410-9bf9-f77b7e298cf2
Diffstat (limited to 'mencoder.c')
-rw-r--r--mencoder.c7
1 files changed, 5 insertions, 2 deletions
diff --git a/mencoder.c b/mencoder.c
index d0e01a0bd4..a291f94309 100644
--- a/mencoder.c
+++ b/mencoder.c
@@ -132,6 +132,7 @@ static float c_total=0;
float force_fps=0;
float force_ofps=0; // set to 24 for inverse telecine
+static int skip_limit=-1;
int force_srate=0;
@@ -862,11 +863,13 @@ if(demuxer2){ // 3-pass encoding, read control file (frameno.avi)
// check frame duplicate/drop:
-if(v_timer_corr>=(float)mux_v->h.dwScale/mux_v->h.dwRate){
+if(v_timer_corr>=(float)mux_v->h.dwScale/mux_v->h.dwRate &&
+ (skip_limit<0 || skip_flag<skip_limit) ){
v_timer_corr-=(float)mux_v->h.dwScale/mux_v->h.dwRate;
++skip_flag; // skip
} else
-while(v_timer_corr<=-(float)mux_v->h.dwScale/mux_v->h.dwRate){
+while(v_timer_corr<=-(float)mux_v->h.dwScale/mux_v->h.dwRate &&
+ (skip_limit<0 || (-skip_flag)<skip_limit) ){
v_timer_corr+=(float)mux_v->h.dwScale/mux_v->h.dwRate;
--skip_flag; // dup
}