summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGuenter Bartsch <guenter@users.sourceforge.net>2002-01-14 00:34:22 +0000
committerGuenter Bartsch <guenter@users.sourceforge.net>2002-01-14 00:34:22 +0000
commit572cb8c2f417e480c16089aac768674b89302ac3 (patch)
tree1ef1397eda19e34fde80f02e6947e0073d0ddee2
parentd22f98cc9380caedf0020b0f8ea5c40bb992f82a (diff)
downloadxine-lib-572cb8c2f417e480c16089aac768674b89302ac3.tar.gz
xine-lib-572cb8c2f417e480c16089aac768674b89302ac3.tar.bz2
miguel's latest still frame patches and some minor cleanups
CVS patchset: 1401 CVS date: 2002/01/14 00:34:22
-rw-r--r--ChangeLog7
-rw-r--r--src/audio_out/audio_oss_out.c8
-rw-r--r--src/demuxers/demux_asf.c4
-rw-r--r--src/xine-engine/metronom.c4
-rw-r--r--src/xine-engine/video_decoder.c3
-rw-r--r--src/xine-engine/video_out.c19
-rw-r--r--src/xine-engine/video_out.h4
7 files changed, 29 insertions, 20 deletions
diff --git a/ChangeLog b/ChangeLog
index 05046c0fa..30f1d740f 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,5 @@
+xine (0.9.8) unstable; urgency=low
+
* Linux framebuffer video out driver (experimental)
* several bugfixes
* still frame detection
@@ -8,7 +10,10 @@
* fix audio pause on discontinuities
* merged dxr3 and dxr3enc drivers into single dxr3 driver. See README.dxr3
* dxr3 encoding support for librte-0.4 besides the traditional libfame.
-
+ * support for (live) mpg streams via tcp
+
+ -- Guenter Bartsch <guenter@users.sourceforge.net> Sun Jan 13 16:15:07 CET 2002
+
xine (0.9.7) unstable; urgency=low
* fix some win32 dll segfaults
diff --git a/src/audio_out/audio_oss_out.c b/src/audio_out/audio_oss_out.c
index ca35f21b9..8122dd0df 100644
--- a/src/audio_out/audio_oss_out.c
+++ b/src/audio_out/audio_oss_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: audio_oss_out.c,v 1.53 2001/12/01 13:10:53 guenter Exp $
+ * $Id: audio_oss_out.c,v 1.54 2002/01/14 00:34:22 guenter Exp $
*
* 20-8-2001 First implementation of Audio sync and Audio driver separation.
* Copyright (C) 2001 James Courtier-Dutton James@superbug.demon.co.uk
@@ -141,7 +141,8 @@ static int ao_oss_open(ao_driver_t *this_gen,
oss_driver_t *this = (oss_driver_t *) this_gen;
int tmp;
- printf ("audio_oss_out: ao_open rate=%d, mode=%d\n", rate, mode);
+ printf ("audio_oss_out: ao_open rate=%d, mode=%d, dev=%s\n",
+ rate, mode, this->audio_dev);
if ( (mode & this->capabilities) == 0 ) {
printf ("audio_oss_out: unsupported mode %08x\n", mode);
@@ -597,6 +598,9 @@ ao_driver_t *init_audio_out_plugin (config_values_t *config) {
* open that device
*/
+ printf ("audio_oss_out: using device >%s<\n",
+ this->audio_dev);
+
audio_fd=open(this->audio_dev, O_WRONLY|O_NONBLOCK);
if(audio_fd < 0) {
diff --git a/src/demuxers/demux_asf.c b/src/demuxers/demux_asf.c
index 25cb96b9c..960a48a1b 100644
--- a/src/demuxers/demux_asf.c
+++ b/src/demuxers/demux_asf.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: demux_asf.c,v 1.19 2002/01/06 00:25:56 guenter Exp $
+ * $Id: demux_asf.c,v 1.20 2002/01/14 00:34:22 guenter Exp $
*
* demultiplexer for asf streams
*
@@ -1005,7 +1005,7 @@ static void *demux_asf_loop (void *this_gen) {
demux_asf_t *this = (demux_asf_t *) this_gen;
- /* printf ("demux_asf: demux loop starting...\n"); */
+ printf ("demux_asf: demux loop starting...\n");
this->send_end_buffers = 1;
diff --git a/src/xine-engine/metronom.c b/src/xine-engine/metronom.c
index 65d62966d..e3e34b052 100644
--- a/src/xine-engine/metronom.c
+++ b/src/xine-engine/metronom.c
@@ -1,5 +1,5 @@
/*
- * Copyright (C) 2000-2001 the xine project
+ * Copyright (C) 2000-2002 the xine project
*
* This file is part of xine, a unix video player.
*
@@ -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.48 2002/01/06 00:49:01 guenter Exp $
+ * $Id: metronom.c,v 1.49 2002/01/14 00:34:22 guenter Exp $
*/
#ifdef HAVE_CONFIG_H
diff --git a/src/xine-engine/video_decoder.c b/src/xine-engine/video_decoder.c
index 4573e56e9..d4fef6664 100644
--- a/src/xine-engine/video_decoder.c
+++ b/src/xine-engine/video_decoder.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_decoder.c,v 1.69 2002/01/05 18:14:27 jcdutton Exp $
+ * $Id: video_decoder.c,v 1.70 2002/01/14 00:34:22 guenter Exp $
*
*/
@@ -188,7 +188,6 @@ void *video_decoder_loop (void *this_gen) {
this->metronom->expect_video_discontinuity (this->metronom);
this->video_in_discontinuity = 0;
- this->video_out->still_counter = 0;
break;
case BUF_VIDEO_FILL:
diff --git a/src/xine-engine/video_out.c b/src/xine-engine/video_out.c
index 869fbba57..f5a13d71d 100644
--- a/src/xine-engine/video_out.c
+++ b/src/xine-engine/video_out.c
@@ -1,5 +1,5 @@
/*
- * Copyright (C) 2000, 2001 the xine project
+ * Copyright (C) 2000-2002 the xine project
*
* This file is part of xine, a unix video player.
*
@@ -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.64 2002/01/08 01:04:30 miguelfreitas Exp $
+ * $Id: video_out.c,v 1.65 2002/01/14 00:34:22 guenter Exp $
*
*/
@@ -194,7 +194,6 @@ static void *video_out_loop (void *this_gen) {
static int prof_spu_blend = -1;
sigset_t vo_mask;
- uint32_t last_draw_vpts = 0;
int flush_sent = 0;
/* printf ("%d video_out start\n", getpid()); */
@@ -205,7 +204,8 @@ static void *video_out_loop (void *this_gen) {
prof_spu_blend = xine_profiler_allocate_slot ("spu blend");
img_backup = NULL;
-
+ this->last_draw_vpts = 0;
+
/*
* set up timer signal
*/
@@ -265,18 +265,18 @@ static void *video_out_loop (void *this_gen) {
/* update timer for inactivity flush */
if( img ) {
- last_draw_vpts = cur_pts;
+ this->last_draw_vpts = cur_pts;
} else {
/* start timer when decoder receives the first packet */
- if( !last_draw_vpts && this->decoder_started_flag )
- last_draw_vpts = cur_pts;
+ if( !this->last_draw_vpts && this->decoder_started_flag )
+ this->last_draw_vpts = cur_pts;
- if( last_draw_vpts && (cur_pts - last_draw_vpts) > (8 * this->pts_per_frame) ) {
+ if( this->last_draw_vpts && (cur_pts - this->last_draw_vpts) > (8 * this->pts_per_frame) ) {
#ifdef VIDEO_OUT_LOG
printf("video_out : sending decoder flush due to inactivity\n");
#endif
video_out_send_decoder_flush( this->xine->video_fifo );
- last_draw_vpts = cur_pts;
+ this->last_draw_vpts = cur_pts;
flush_sent = 1;
}
}
@@ -745,6 +745,7 @@ static int vo_frame_draw (vo_frame_t *img) {
this->num_frames_delivered++;
cur_vpts = this->metronom->get_current_time(this->metronom);
+ this->last_draw_vpts = cur_vpts;
diff = pic_vpts - cur_vpts;
frames_to_skip = ((-1 * diff) / this->pts_per_frame + 3) * 2;
diff --git a/src/xine-engine/video_out.h b/src/xine-engine/video_out.h
index d5e7f1590..1dfbf70da 100644
--- a/src/xine-engine/video_out.h
+++ b/src/xine-engine/video_out.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: video_out.h,v 1.36 2002/01/10 12:20:17 jcdutton Exp $
+ * $Id: video_out.h,v 1.37 2002/01/14 00:34:22 guenter Exp $
*
*
* xine version of video_out.h
@@ -181,7 +181,7 @@ struct vo_instance_s {
int num_frames_discarded;
int decoder_started_flag;
- int still_counter;/* still_counter>8 => still frames will be generated */
+ uint32_t last_draw_vpts;
} ;
/* constants for the get/set property functions */