mirror of
https://gitlab.freedesktop.org/gstreamer/gstreamer.git
synced 2025-01-27 09:38:17 +00:00
some jack fixes, alsa touchups, and add rtp by default to the build if there are any problems building rtp, we're mov...
Original commit message from CVS: some jack fixes, alsa touchups, and add rtp by default to the build if there are any problems building rtp, we're moving it back to experimental ;)
This commit is contained in:
parent
1c087c8a15
commit
773b7da81f
4 changed files with 37 additions and 18 deletions
|
@ -49,11 +49,9 @@ GST_CHECK_FEATURE(EXPERIMENTAL, [enable building of experimental plugins],,
|
|||
[HAVE_EXPERIMENTAL=yes],disabled,
|
||||
[
|
||||
AC_MSG_WARN(building experimental plugins)
|
||||
USE_RTP="yes"
|
||||
USE_TARKIN="yes"
|
||||
],[
|
||||
AC_MSG_NOTICE(not building experimental plugins)
|
||||
USE_RTP="no"
|
||||
USE_TARKIN="no"
|
||||
])
|
||||
|
||||
|
|
|
@ -1,3 +1,4 @@
|
|||
/* -*- Mode: C; c-basic-offset: 4 -*- */
|
||||
/*
|
||||
Copyright (C) 2002 Andy Wingo <wingo@pobox.com>
|
||||
|
||||
|
|
|
@ -1,3 +1,4 @@
|
|||
/* -*- Mode: C; c-basic-offset: 4 -*- */
|
||||
/*
|
||||
Copyright (C) 2002 Andy Wingo <wingo@pobox.com>
|
||||
|
||||
|
@ -109,6 +110,10 @@ struct _GstJackBin {
|
|||
|
||||
guint rate;
|
||||
nframes_t nframes;
|
||||
|
||||
/* the scheduler needs to be setup from within the jack client thread; this
|
||||
variable is to keep track of whether or not we have been set up yet */
|
||||
gboolean sched_setup;
|
||||
};
|
||||
|
||||
struct _GstJackBinClass {
|
||||
|
|
|
@ -1,3 +1,4 @@
|
|||
/* -*- Mode: C; c-basic-offset: 4 -*- */
|
||||
/*
|
||||
Copyright (C) 2002 Andy Wingo <wingo@pobox.com>
|
||||
|
||||
|
@ -37,23 +38,23 @@ static void shutdown (void *arg);
|
|||
GType
|
||||
gst_jack_bin_get_type (void)
|
||||
{
|
||||
static GType jack_bin_type = 0;
|
||||
static GType jack_bin_type = 0;
|
||||
|
||||
if (!jack_bin_type) {
|
||||
static const GTypeInfo jack_bin_info = {
|
||||
sizeof(GstJackBinClass),
|
||||
NULL,
|
||||
NULL,
|
||||
(GClassInitFunc)gst_jack_bin_class_init,
|
||||
NULL,
|
||||
NULL,
|
||||
sizeof(GstJackBin),
|
||||
0,
|
||||
(GInstanceInitFunc)gst_jack_bin_init,
|
||||
};
|
||||
jack_bin_type = g_type_register_static (GST_TYPE_BIN, "GstJackBin", &jack_bin_info, 0);
|
||||
}
|
||||
return jack_bin_type;
|
||||
if (!jack_bin_type) {
|
||||
static const GTypeInfo jack_bin_info = {
|
||||
sizeof(GstJackBinClass),
|
||||
NULL,
|
||||
NULL,
|
||||
(GClassInitFunc)gst_jack_bin_class_init,
|
||||
NULL,
|
||||
NULL,
|
||||
sizeof(GstJackBin),
|
||||
0,
|
||||
(GInstanceInitFunc)gst_jack_bin_init,
|
||||
};
|
||||
jack_bin_type = g_type_register_static (GST_TYPE_BIN, "GstJackBin", &jack_bin_info, 0);
|
||||
}
|
||||
return jack_bin_type;
|
||||
}
|
||||
|
||||
static void
|
||||
|
@ -73,6 +74,14 @@ gst_jack_bin_class_init(GstJackClass *klass)
|
|||
static void
|
||||
gst_jack_bin_init(GstJack *this)
|
||||
{
|
||||
GST_DEBUG (GST_CAT_THREAD, "initializing jack bin");
|
||||
|
||||
/* jack bins are managing bins and iterate themselves */
|
||||
GST_FLAG_SET (this, GST_BIN_FLAG_MANAGER);
|
||||
GST_FLAG_SET (this, GST_BIN_SELF_SCHEDULABLE);
|
||||
|
||||
/* make a new scheduler and associate it with the bin */
|
||||
gst_scheduler_factory_make (NULL, GST_ELEMENT (this));
|
||||
}
|
||||
|
||||
static GstElementStateReturn
|
||||
|
@ -237,6 +246,12 @@ sample_rate (nframes_t nframes, void *arg)
|
|||
GstJackBin *bin = (GstJackBin*) arg;
|
||||
printf ("the sample rate is now %lu/sec\n", nframes);
|
||||
bin->rate = nframes;
|
||||
|
||||
if (!bin->sched_setup) {
|
||||
gst_scheduler_setup (GST_ELEMENT_SCHED (bin));
|
||||
bin->sched_setup = TRUE;
|
||||
}
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in a new issue