summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/post/visualizations/fftscope.c11
-rw-r--r--src/post/visualizations/fooviz.c10
-rw-r--r--src/post/visualizations/oscope.c10
3 files changed, 27 insertions, 4 deletions
diff --git a/src/post/visualizations/fftscope.c b/src/post/visualizations/fftscope.c
index 7ce034779..c595e21be 100644
--- a/src/post/visualizations/fftscope.c
+++ b/src/post/visualizations/fftscope.c
@@ -22,7 +22,7 @@
*
* FFT code by Steve Haehnichen, originally licensed under GPL v1
*
- * $Id: fftscope.c,v 1.13 2003/04/30 06:58:51 tmattern Exp $
+ * $Id: fftscope.c,v 1.14 2003/07/26 17:44:30 tmattern Exp $
*
*/
@@ -538,7 +538,14 @@ static void fftscope_port_put_buffer (xine_audio_port_t *port_gen,
uint64_t vpts = buf->vpts;
int i, c;
-
+ /* HACK: compute a pts using metronom internals */
+ if (!vpts) {
+ metronom_t *metronom = this->stream->metronom;
+ pthread_mutex_lock(&metronom->lock);
+ vpts = metronom->audio_vpts - metronom->vpts_offset;
+ pthread_mutex_unlock(&metronom->lock);
+ }
+
/* make a copy of buf data for private use */
if( this->buf.mem_size < buf->mem_size ) {
this->buf.mem = realloc(this->buf.mem, buf->mem_size);
diff --git a/src/post/visualizations/fooviz.c b/src/post/visualizations/fooviz.c
index f5f11e739..c1aecb329 100644
--- a/src/post/visualizations/fooviz.c
+++ b/src/post/visualizations/fooviz.c
@@ -23,7 +23,7 @@
* process. It simply paints the screen a solid color and rotates through
* colors on each iteration.
*
- * $Id: fooviz.c,v 1.7 2003/05/31 18:33:30 miguelfreitas Exp $
+ * $Id: fooviz.c,v 1.8 2003/07/26 17:44:30 tmattern Exp $
*
*/
@@ -172,6 +172,14 @@ static void fooviz_port_put_buffer (xine_audio_port_t *port_gen,
uint64_t vpts = buf->vpts;
int i, j;
+ /* HACK: compute a pts using metronom internals */
+ if (!vpts) {
+ metronom_t *metronom = this->stream->metronom;
+ pthread_mutex_lock(&metronom->lock);
+ vpts = metronom->audio_vpts - metronom->vpts_offset;
+ pthread_mutex_unlock(&metronom->lock);
+ }
+
/* make a copy of buf data for private use */
if( this->buf.mem_size < buf->mem_size ) {
this->buf.mem = realloc(this->buf.mem, buf->mem_size);
diff --git a/src/post/visualizations/oscope.c b/src/post/visualizations/oscope.c
index b11e282bd..e143b8f27 100644
--- a/src/post/visualizations/oscope.c
+++ b/src/post/visualizations/oscope.c
@@ -20,7 +20,7 @@
* Basic Oscilloscope Visualization Post Plugin For xine
* by Mike Melanson (melanson@pcisys.net)
*
- * $Id: oscope.c,v 1.7 2003/04/30 06:58:51 tmattern Exp $
+ * $Id: oscope.c,v 1.8 2003/07/26 17:44:30 tmattern Exp $
*
*/
@@ -243,6 +243,14 @@ static void oscope_port_put_buffer (xine_audio_port_t *port_gen,
uint64_t vpts = buf->vpts;
int i, c;
+ /* HACK: compute a pts using metronom internals */
+ if (!vpts) {
+ metronom_t *metronom = this->stream->metronom;
+ pthread_mutex_lock(&metronom->lock);
+ vpts = metronom->audio_vpts - metronom->vpts_offset;
+ pthread_mutex_unlock(&metronom->lock);
+ }
+
/* make a copy of buf data for private use */
if( this->buf.mem_size < buf->mem_size ) {
this->buf.mem = realloc(this->buf.mem, buf->mem_size);