summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorhenry <henry@b3059339-0415-0410-9bf9-f77b7e298cf2>2004-02-25 11:52:40 +0000
committerhenry <henry@b3059339-0415-0410-9bf9-f77b7e298cf2>2004-02-25 11:52:40 +0000
commit33832d42e12d0120e81e41cab1a8a816cb3abb18 (patch)
tree9f1e9a7b0cd38a8dc014ccd721ea2de1661147aa
parent6332d6bbe9bf7104ca77b59f3c4abb5f5ff25ec7 (diff)
downloadmpv-33832d42e12d0120e81e41cab1a8a816cb3abb18.tar.bz2
mpv-33832d42e12d0120e81e41cab1a8a816cb3abb18.tar.xz
missing video thread shutdown, frame count rounding fix
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@11998 b3059339-0415-0410-9bf9-f77b7e298cf2
-rw-r--r--libmpdemux/tvi_v4l2.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/libmpdemux/tvi_v4l2.c b/libmpdemux/tvi_v4l2.c
index c4178d0a8a..db808a13f3 100644
--- a/libmpdemux/tvi_v4l2.c
+++ b/libmpdemux/tvi_v4l2.c
@@ -785,13 +785,16 @@ static int uninit(priv_t *priv)
int i, frames, dropped = 0;
priv->shutdown = 1;
+ pthread_join(priv->video_grabber_thread, NULL);
pthread_mutex_destroy(&priv->video_buffer_mutex);
if (priv->streamon) {
struct v4l2_buffer buf;
/* get performance */
- frames = 1 + (priv->curr_frame - priv->first_frame) *
+ frames = 1 + (priv->curr_frame - priv->first_frame +
+ priv->standard.frameperiod.numerator * 500000 /
+ priv->standard.frameperiod.denominator) *
priv->standard.frameperiod.denominator /
priv->standard.frameperiod.numerator / 1000000;
dropped = frames - priv->frames;