summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMiguel Freitas <miguelfreitas@users.sourceforge.net>2003-05-06 20:50:11 +0000
committerMiguel Freitas <miguelfreitas@users.sourceforge.net>2003-05-06 20:50:11 +0000
commit2d8a2921ca9165c1175117570622255e88a3e588 (patch)
treefa81beeaf0530bb296762ba1a8f0f6dd035c53ea
parent234ffd792d6698b8367ae7070e68eacdcd6bf924 (diff)
downloadxine-lib-2d8a2921ca9165c1175117570622255e88a3e588.tar.gz
xine-lib-2d8a2921ca9165c1175117570622255e88a3e588.tar.bz2
Thibaut asked me to revert his latest patch
also set some more reasonable defaults for frame skipping (12000 pts prebuffering, at least 2 frames in advance to not skip). CVS patchset: 4786 CVS date: 2003/05/06 20:50:11
-rw-r--r--src/xine-engine/metronom.c7
-rw-r--r--src/xine-engine/metronom.h6
-rw-r--r--src/xine-engine/video_out.c6
3 files changed, 7 insertions, 12 deletions
diff --git a/src/xine-engine/metronom.c b/src/xine-engine/metronom.c
index f129c36ee..cd72cfcfd 100644
--- a/src/xine-engine/metronom.c
+++ b/src/xine-engine/metronom.c
@@ -17,7 +17,7 @@
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA
*
- * $Id: metronom.c,v 1.116 2003/05/05 22:29:30 tmattern Exp $
+ * $Id: metronom.c,v 1.117 2003/05/06 20:50:11 miguelfreitas Exp $
*/
#ifdef HAVE_CONFIG_H
@@ -386,11 +386,6 @@ static void metronom_got_video_frame (metronom_t *this, vo_frame_t *img) {
this->img_cpt++;
- if (img->bad_frame) {
- pthread_mutex_unlock (&this->lock);
- return;
- }
-
if (pts) {
/*
diff --git a/src/xine-engine/metronom.h b/src/xine-engine/metronom.h
index ccf6de7ec..07b51b85f 100644
--- a/src/xine-engine/metronom.h
+++ b/src/xine-engine/metronom.h
@@ -17,7 +17,7 @@
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA
*
- * $Id: metronom.h,v 1.47 2003/04/25 15:34:46 mroi Exp $
+ * $Id: metronom.h,v 1.48 2003/05/06 20:50:12 miguelfreitas Exp $
*
* metronom: general pts => virtual calculation/assoc
*
@@ -60,10 +60,10 @@ typedef struct scr_plugin_s scr_plugin_t;
/* metronom prebuffer can be adjusted with XINE_PARAM_METRONOM_PREBUFFER.
* it sets how much the first video/audio frame should be delayed to
* have some prebuffering at the output layers. reducing this value (about
- * 1/10 sec) may result in faster seeking (good to simulate play backwards,
+ * 1/8 sec) may result in faster seeking (good to simulate play backwards,
* for example).
*/
-#define PREBUFFER_PTS_OFFSET 9000
+#define PREBUFFER_PTS_OFFSET 12000
/* see below */
#define DISC_STREAMSTART 0
diff --git a/src/xine-engine/video_out.c b/src/xine-engine/video_out.c
index 7dea53123..356d39bce 100644
--- a/src/xine-engine/video_out.c
+++ b/src/xine-engine/video_out.c
@@ -17,7 +17,7 @@
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA
*
- * $Id: video_out.c,v 1.157 2003/05/06 14:02:27 tchamp Exp $
+ * $Id: video_out.c,v 1.158 2003/05/06 20:50:12 miguelfreitas Exp $
*
* frame allocation / queuing / scheduling / output functions
*/
@@ -314,7 +314,7 @@ static int vo_frame_draw (vo_frame_t *img, xine_stream_t *stream) {
stream->metronom->got_video_frame (stream->metronom, img);
this->current_duration = img->duration;
- if (!this->grab_only && !img->bad_frame) {
+ if (!this->grab_only) {
pic_vpts = img->vpts;
img->extra_info->vpts = img->vpts;
@@ -333,7 +333,7 @@ static int vo_frame_draw (vo_frame_t *img, xine_stream_t *stream) {
/* avoid division by zero */
if( img->duration <= 0 )
img->duration = 3000;
- frames_to_skip = ((-1 * diff) / img->duration + 3) * 2;
+ frames_to_skip = ((-1 * diff) / img->duration + 2) * 2;
if (frames_to_skip<0)
frames_to_skip = 0;