fixes for recent changes:

Original commit message from CVS:
fixes for recent changes:
- GstAlsaClock is not a GstSystemClock
- initialize debugging system correctly
This commit is contained in:
Benjamin Otte 2003-11-18 15:32:52 +00:00
parent 9ddf040472
commit 280c25766a
6 changed files with 16 additions and 14 deletions

View file

@ -697,7 +697,7 @@ gst_alsa_change_state (GstElement *element)
GST_ERROR_OBJECT (this, "Error unpausing sound: %s", snd_strerror (err)); GST_ERROR_OBJECT (this, "Error unpausing sound: %s", snd_strerror (err));
return GST_STATE_FAILURE; return GST_STATE_FAILURE;
} }
gst_alsa_clock_start (GST_ALSA_CLOCK (this->clock)); gst_alsa_clock_start (this->clock);
} }
break; break;
case GST_STATE_PLAYING_TO_PAUSED: case GST_STATE_PLAYING_TO_PAUSED:
@ -708,7 +708,7 @@ gst_alsa_change_state (GstElement *element)
GST_ERROR_OBJECT (this, "Error pausing sound: %s", snd_strerror (err)); GST_ERROR_OBJECT (this, "Error pausing sound: %s", snd_strerror (err));
return GST_STATE_FAILURE; return GST_STATE_FAILURE;
} }
gst_alsa_clock_stop (GST_ALSA_CLOCK (this->clock)); gst_alsa_clock_stop (this->clock);
} }
break; break;
} }
@ -946,7 +946,7 @@ gst_alsa_start (GstAlsa *this)
g_assert_not_reached (); g_assert_not_reached ();
break; break;
} }
gst_alsa_clock_start (GST_ALSA_CLOCK (this->clock)); gst_alsa_clock_start (this->clock);
return TRUE; return TRUE;
} }
void void
@ -1177,7 +1177,7 @@ gst_alsa_drain_audio (GstAlsa *this)
switch (snd_pcm_state (this->handle)) { switch (snd_pcm_state (this->handle)) {
case SND_PCM_STATE_XRUN: case SND_PCM_STATE_XRUN:
case SND_PCM_STATE_RUNNING: case SND_PCM_STATE_RUNNING:
gst_alsa_clock_stop (GST_ALSA_CLOCK (this->clock)); gst_alsa_clock_stop (this->clock);
/* fall through - clock is already stopped when paused */ /* fall through - clock is already stopped when paused */
case SND_PCM_STATE_PAUSED: case SND_PCM_STATE_PAUSED:
/* snd_pcm_drain only works in blocking mode */ /* snd_pcm_drain only works in blocking mode */
@ -1204,7 +1204,7 @@ gst_alsa_stop_audio (GstAlsa *this)
switch (snd_pcm_state (this->handle)) { switch (snd_pcm_state (this->handle)) {
case SND_PCM_STATE_XRUN: case SND_PCM_STATE_XRUN:
case SND_PCM_STATE_RUNNING: case SND_PCM_STATE_RUNNING:
gst_alsa_clock_stop (GST_ALSA_CLOCK (this->clock)); gst_alsa_clock_stop (this->clock);
/* fall through - clock is already stopped when paused */ /* fall through - clock is already stopped when paused */
case SND_PCM_STATE_PAUSED: case SND_PCM_STATE_PAUSED:
ERROR_CHECK (snd_pcm_drop (this->handle), ERROR_CHECK (snd_pcm_drop (this->handle),

View file

@ -29,7 +29,7 @@
#include <gst/gst.h> #include <gst/gst.h>
GST_DEBUG_CATEGORY_STATIC (alsa_debug); GST_DEBUG_CATEGORY_EXTERN (alsa_debug);
#define GST_CAT_DEFAULT alsa_debug #define GST_CAT_DEFAULT alsa_debug
@ -110,6 +110,9 @@ typedef enum {
else { (GST_ALSA (obj)->pcm_caps &= ~(1<<(flag))); } \ else { (GST_ALSA (obj)->pcm_caps &= ~(1<<(flag))); } \
}G_STMT_END }G_STMT_END
typedef struct _GstAlsaClock GstAlsaClock;
typedef struct _GstAlsaClockClass GstAlsaClockClass;
typedef struct _GstAlsa GstAlsa; typedef struct _GstAlsa GstAlsa;
typedef struct _GstAlsaClass GstAlsaClass; typedef struct _GstAlsaClass GstAlsaClass;
@ -143,7 +146,7 @@ struct _GstAlsa {
gboolean autorecover; gboolean autorecover;
/* clocking */ /* clocking */
GstSystemClock * clock; /* our provided clock */ GstAlsaClock * clock; /* our provided clock */
snd_pcm_uframes_t transmitted; /* samples transmitted since last sync snd_pcm_uframes_t transmitted; /* samples transmitted since last sync
This thing actually is our master clock. This thing actually is our master clock.
We will event insert silent samples or We will event insert silent samples or

View file

@ -32,9 +32,6 @@ G_BEGIN_DECLS
#define GST_IS_ALSA_CLOCK_CLASS(obj) (G_TYPE_CHECK_CLASS_TYPE((klass),GST_TYPE_ALSA_CLOCK)) #define GST_IS_ALSA_CLOCK_CLASS(obj) (G_TYPE_CHECK_CLASS_TYPE((klass),GST_TYPE_ALSA_CLOCK))
#define GST_TYPE_ALSA_CLOCK (gst_alsa_clock_get_type()) #define GST_TYPE_ALSA_CLOCK (gst_alsa_clock_get_type())
typedef struct _GstAlsaClock GstAlsaClock;
typedef struct _GstAlsaClockClass GstAlsaClockClass;
typedef GstClockTime (*GstAlsaClockGetTimeFunc) (GstAlsa *); typedef GstClockTime (*GstAlsaClockGetTimeFunc) (GstAlsa *);
struct _GstAlsaClock { struct _GstAlsaClock {

View file

@ -27,6 +27,8 @@
#include "gstalsasink.h" #include "gstalsasink.h"
#include "gstalsasrc.h" #include "gstalsasrc.h"
GST_DEBUG_CATEGORY (alsa_debug);
static gboolean static gboolean
plugin_init (GstPlugin * plugin) plugin_init (GstPlugin * plugin)
{ {

View file

@ -149,7 +149,7 @@ gst_alsa_sink_init (GstAlsaSink *sink)
gst_pad_set_getcaps_function (this->pad[0], gst_alsa_get_caps); gst_pad_set_getcaps_function (this->pad[0], gst_alsa_get_caps);
gst_element_add_pad (GST_ELEMENT (this), this->pad[0]); gst_element_add_pad (GST_ELEMENT (this), this->pad[0]);
this->clock = GST_SYSTEM_CLOCK (gst_alsa_clock_new ("alsasinkclock", gst_alsa_sink_get_time, this)); this->clock = gst_alsa_clock_new ("alsasinkclock", gst_alsa_sink_get_time, this);
/* we hold a ref to our clock until we're disposed */ /* we hold a ref to our clock until we're disposed */
gst_object_ref (GST_OBJECT (this->clock)); gst_object_ref (GST_OBJECT (this->clock));
gst_object_sink (GST_OBJECT (this->clock)); gst_object_sink (GST_OBJECT (this->clock));
@ -232,10 +232,10 @@ gst_alsa_sink_check_event (GstAlsaSink *sink, gint pad_nr)
} }
/* if the clock is running */ /* if the clock is running */
if (GST_CLOCK_TIME_IS_VALID (GST_ALSA_CLOCK (this->clock)->start_time)) { if (GST_CLOCK_TIME_IS_VALID (this->clock->start_time)) {
g_assert (this->format); g_assert (this->format);
/* adjust the start time */ /* adjust the start time */
GST_ALSA_CLOCK (this->clock)->start_time += this->clock->start_time +=
gst_alsa_samples_to_timestamp (this, this->transmitted) - gst_alsa_samples_to_timestamp (this, this->transmitted) -
gst_alsa_samples_to_timestamp (this, value); gst_alsa_samples_to_timestamp (this, value);
} }

View file

@ -144,7 +144,7 @@ gst_alsa_src_init (GstAlsaSrc *src)
gst_pad_set_getcaps_function (this->pad[0], gst_alsa_get_caps); gst_pad_set_getcaps_function (this->pad[0], gst_alsa_get_caps);
gst_element_add_pad (GST_ELEMENT (this), this->pad[0]); gst_element_add_pad (GST_ELEMENT (this), this->pad[0]);
this->clock = GST_SYSTEM_CLOCK (gst_alsa_clock_new ("alsasrcclock", gst_alsa_src_get_time, this)); this->clock = gst_alsa_clock_new ("alsasrcclock", gst_alsa_src_get_time, this);
/* we hold a ref to our clock until we're disposed */ /* we hold a ref to our clock until we're disposed */
gst_object_ref (GST_OBJECT (this->clock)); gst_object_ref (GST_OBJECT (this->clock));
gst_object_sink (GST_OBJECT (this->clock)); gst_object_sink (GST_OBJECT (this->clock));