summaryrefslogtreecommitdiff
path: root/xine/xvdr_metronom.c
diff options
context:
space:
mode:
authorcvs2svn <admin@example.com>2009-10-21 00:02:02 +0000
committercvs2svn <admin@example.com>2009-10-21 00:02:02 +0000
commit97a97ca3358eb48de3eb7a222e487e800566569f (patch)
tree97c920d0225a1c9773a3bce2207f261d7d230123 /xine/xvdr_metronom.c
parenta61961358c5a2ec92340b3f8e056bab55438f103 (diff)
downloadxineliboutput-CVS.tar.gz
xineliboutput-CVS.tar.bz2
This commit was manufactured by cvs2svn to create branch 'CVS'.CVS
Diffstat (limited to 'xine/xvdr_metronom.c')
-rw-r--r--xine/xvdr_metronom.c164
1 files changed, 0 insertions, 164 deletions
diff --git a/xine/xvdr_metronom.c b/xine/xvdr_metronom.c
deleted file mode 100644
index 1a2316ab..00000000
--- a/xine/xvdr_metronom.c
+++ /dev/null
@@ -1,164 +0,0 @@
-/*
- * xvdr_metronom.c:
- *
- * See the main source file 'xineliboutput.c' for copyright information and
- * how to reach the author.
- *
- * $Id: xvdr_metronom.c,v 1.1 2009-05-22 21:02:30 phintuka Exp $
- *
- */
-
-#include <stdlib.h>
-
-#include <xine/xine_internal.h>
-#include <xine/metronom.h>
-
-#define LOG_MODULENAME "[metronom ] "
-#define SysLogLevel iSysLogLevel
-#include "../logdefs.h"
-
-#define XVDR_METRONOM_COMPILE
-#include "xvdr_metronom.h"
-
-
-static void got_video_frame(metronom_t *metronom, vo_frame_t *frame)
-{
- xvdr_metronom_t *this = (xvdr_metronom_t *)metronom;
-
- this->video_frames++;
-
- if (this->frame_decoded)
- this->frame_decoded(this->handle, this->video_frames, this->audio_frames);
-
- return this->orig_metronom->got_video_frame (this->orig_metronom, frame);
-}
-
-static int64_t got_audio_samples(metronom_t *metronom, int64_t pts, int nsamples)
-{
- xvdr_metronom_t *this = (xvdr_metronom_t *)metronom;
-
- this->audio_frames++;
-
- if (this->frame_decoded)
- this->frame_decoded(this->handle, this->video_frames, this->audio_frames);
-
- return this->orig_metronom->got_audio_samples (this->orig_metronom, pts, nsamples);
-}
-
-/*
- * dummy hooks
- */
-
-static int64_t got_spu_packet(metronom_t *metronom, int64_t pts)
-{
- xvdr_metronom_t *this = (xvdr_metronom_t *)metronom;
- return this->orig_metronom->got_spu_packet(this->orig_metronom, pts);
-}
-
-static void handle_audio_discontinuity(metronom_t *metronom, int type, int64_t disc_off)
-{
- xvdr_metronom_t *this = (xvdr_metronom_t *)metronom;
- this->orig_metronom->handle_audio_discontinuity(this->orig_metronom, type, disc_off);
-}
-
-static void handle_video_discontinuity(metronom_t *metronom, int type, int64_t disc_off)
-{
- xvdr_metronom_t *this = (xvdr_metronom_t *)metronom;
- this->orig_metronom->handle_video_discontinuity(this->orig_metronom, type, disc_off);
-}
-
-static void set_audio_rate(metronom_t *metronom, int64_t pts_per_smpls)
-{
- xvdr_metronom_t *this = (xvdr_metronom_t *)metronom;
- this->orig_metronom->set_audio_rate(this->orig_metronom, pts_per_smpls);
-}
-
-static void set_option(metronom_t *metronom, int option, int64_t value)
-{
- xvdr_metronom_t *this = (xvdr_metronom_t *)metronom;
- this->orig_metronom->set_option(this->orig_metronom, option, value);
-}
-
-static int64_t get_option(metronom_t *metronom, int option)
-{
- xvdr_metronom_t *this = (xvdr_metronom_t *)metronom;
- return this->orig_metronom->get_option(this->orig_metronom, option);
-}
-
-static void set_master(metronom_t *metronom, metronom_t *master)
-{
- xvdr_metronom_t *this = (xvdr_metronom_t *)metronom;
- this->orig_metronom->set_master(this->orig_metronom, master);
-}
-
-static void metronom_exit(metronom_t *metronom)
-{
- xvdr_metronom_t *this = (xvdr_metronom_t *)metronom;
-
- LOGERR("xvdr_metronom: metronom_exit() called !");
-
- /* un-hook */
- this->stream->metronom = this->orig_metronom;
- this->orig_metronom = NULL;
- this->stream = NULL;
-
- this->orig_metronom->exit(this->orig_metronom);
-}
-
-/*
- * xvdr_metronom_t
- */
-
-static void xvdr_metronom_set_cb(xvdr_metronom_t *this,
- void (*cb)(void*, uint, uint),
- void *handle)
-{
- this->handle = handle;
- this->frame_decoded = cb;
-}
-
-static void xvdr_metronom_dispose(xvdr_metronom_t *this)
-{
- if (this->stream && this->orig_metronom)
- this->stream->metronom = this->orig_metronom;
-
- free(this);
-}
-
-static void xvdr_metronom_reset_frames(xvdr_metronom_t *this)
-{
- this->video_frames = this->audio_frames = 0;
-}
-
-/*
- * init
- */
-
-xvdr_metronom_t *xvdr_metronom_init(xine_stream_t *stream)
-{
- xvdr_metronom_t *this = calloc(1, sizeof(xvdr_metronom_t));
-
- this->stream = stream;
- this->orig_metronom = stream->metronom;
-
- this->set_cb = xvdr_metronom_set_cb;
- this->reset_frames = xvdr_metronom_reset_frames;
- this->dispose = xvdr_metronom_dispose;
-
- this->metronom.set_audio_rate = set_audio_rate;
- this->metronom.got_video_frame = got_video_frame;
- this->metronom.got_audio_samples = got_audio_samples;
- this->metronom.got_spu_packet = got_spu_packet;
- this->metronom.handle_audio_discontinuity = handle_audio_discontinuity;
- this->metronom.handle_video_discontinuity = handle_video_discontinuity;
- this->metronom.set_option = set_option;
- this->metronom.get_option = get_option;
- this->metronom.set_master = set_master;
-
- this->metronom.exit = metronom_exit;
-
- /* hook up to stream */
- this->stream->metronom = &this->metronom;
-
- return this;
-}