mirror of
https://gitlab.freedesktop.org/gstreamer/gstreamer.git
synced 2024-11-27 04:01:08 +00:00
+ changes for new float caps without slope/intercept + some category changes for plugins
Original commit message from CVS: + changes for new float caps without slope/intercept + some category changes for plugins
This commit is contained in:
parent
6f797dcdce
commit
6fcc950836
5 changed files with 26 additions and 27 deletions
|
@ -21,6 +21,7 @@
|
||||||
#include <string.h>
|
#include <string.h>
|
||||||
#include <math.h>
|
#include <math.h>
|
||||||
#include <gst/control/control.h>
|
#include <gst/control/control.h>
|
||||||
|
#include <gst/audio/audio.h>
|
||||||
|
|
||||||
#include "gstladspa.h"
|
#include "gstladspa.h"
|
||||||
#include <ladspa.h> /* main ladspa sdk include file */
|
#include <ladspa.h> /* main ladspa sdk include file */
|
||||||
|
@ -35,14 +36,10 @@ ladspa_sink_factory (gchar *name)
|
||||||
name,
|
name,
|
||||||
GST_PAD_SINK,
|
GST_PAD_SINK,
|
||||||
GST_PAD_ALWAYS,
|
GST_PAD_ALWAYS,
|
||||||
GST_CAPS_NEW (
|
gst_caps_new (
|
||||||
"ladspa_sink",
|
"ladspa_sink",
|
||||||
"audio/x-raw-float",
|
"audio/x-raw-float",
|
||||||
"width", GST_PROPS_INT (32),
|
GST_AUDIO_FLOAT_STANDARD_PAD_TEMPLATE_PROPS
|
||||||
"endianness", GST_PROPS_INT (G_BYTE_ORDER),
|
|
||||||
"rate", GST_PROPS_INT_RANGE (4000, 96000),
|
|
||||||
"buffer-frames", GST_PROPS_INT_RANGE (1, G_MAXINT),
|
|
||||||
"channels", GST_PROPS_INT (1)
|
|
||||||
)
|
)
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
@ -55,14 +52,10 @@ ladspa_src_factory (gchar *name)
|
||||||
name,
|
name,
|
||||||
GST_PAD_SRC,
|
GST_PAD_SRC,
|
||||||
GST_PAD_ALWAYS,
|
GST_PAD_ALWAYS,
|
||||||
GST_CAPS_NEW (
|
gst_caps_new (
|
||||||
"ladspa_src",
|
"ladspa_src",
|
||||||
"audio/x-raw-float",
|
"audio/x-raw-float",
|
||||||
"width", GST_PROPS_INT (32),
|
GST_AUDIO_FLOAT_STANDARD_PAD_TEMPLATE_PROPS
|
||||||
"endianness", GST_PROPS_INT (G_BYTE_ORDER),
|
|
||||||
"rate", GST_PROPS_INT_RANGE (4000, 96000),
|
|
||||||
"buffer-frames", GST_PROPS_INT_RANGE (1, G_MAXINT),
|
|
||||||
"channels", GST_PROPS_INT (1)
|
|
||||||
)
|
)
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
@ -91,6 +84,13 @@ static GstElementClass *parent_class = NULL;
|
||||||
static GstPlugin *ladspa_plugin;
|
static GstPlugin *ladspa_plugin;
|
||||||
static GHashTable *ladspa_descriptors;
|
static GHashTable *ladspa_descriptors;
|
||||||
|
|
||||||
|
enum {
|
||||||
|
ARG_0,
|
||||||
|
ARG_SAMPLERATE,
|
||||||
|
ARG_BUFFERSIZE,
|
||||||
|
ARG_LAST,
|
||||||
|
};
|
||||||
|
|
||||||
GST_DEBUG_CATEGORY_STATIC (ladspa_debug);
|
GST_DEBUG_CATEGORY_STATIC (ladspa_debug);
|
||||||
#define DEBUG(...) \
|
#define DEBUG(...) \
|
||||||
GST_CAT_LEVEL_LOG (ladspa_debug, GST_LEVEL_DEBUG, NULL, __VA_ARGS__)
|
GST_CAT_LEVEL_LOG (ladspa_debug, GST_LEVEL_DEBUG, NULL, __VA_ARGS__)
|
||||||
|
@ -477,25 +477,24 @@ gst_ladspa_force_src_caps(GstLADSPA *ladspa, GstPad *pad)
|
||||||
if (!ladspa->buffer_frames) {
|
if (!ladspa->buffer_frames) {
|
||||||
ladspa->buffer_frames = 256; /* 5 ms at 44100 kHz (just a default...) */
|
ladspa->buffer_frames = 256; /* 5 ms at 44100 kHz (just a default...) */
|
||||||
g_return_if_fail (ladspa->bufpool == NULL);
|
g_return_if_fail (ladspa->bufpool == NULL);
|
||||||
ladspa->bufpool = gst_buffer_pool_get_default (ladspa->buffer_frames * sizeof(gfloat),
|
ladspa->bufpool =
|
||||||
3);
|
gst_buffer_pool_get_default (ladspa->buffer_frames * sizeof(gfloat), 3);
|
||||||
}
|
}
|
||||||
|
|
||||||
DEBUG_OBJ (ladspa, "forcing caps with rate=%d, buffer-frames=%d",
|
DEBUG_OBJ (ladspa, "forcing caps with rate=%d, buffer-frames=%d",
|
||||||
ladspa->samplerate, ladspa->buffer_frames);
|
ladspa->samplerate, ladspa->buffer_frames);
|
||||||
|
|
||||||
gst_pad_try_set_caps (pad, gst_caps_new (
|
gst_pad_try_set_caps (pad,
|
||||||
|
gst_caps_new (
|
||||||
"ladspa_src_caps",
|
"ladspa_src_caps",
|
||||||
"audio/x-raw-float",
|
"audio/x-raw-float",
|
||||||
gst_props_new (
|
gst_props_new (
|
||||||
"width", GST_PROPS_INT (32),
|
"width", GST_PROPS_INT (32),
|
||||||
"endianness", GST_PROPS_INT (G_BYTE_ORDER),
|
"endianness", GST_PROPS_INT (G_BYTE_ORDER),
|
||||||
|
"rate", GST_PROPS_INT (ladspa->samplerate),
|
||||||
"buffer-frames", GST_PROPS_INT (ladspa->buffer_frames),
|
"buffer-frames", GST_PROPS_INT (ladspa->buffer_frames),
|
||||||
"rate", GST_PROPS_INT (ladspa->samplerate),
|
|
||||||
"channels", GST_PROPS_INT (1),
|
"channels", GST_PROPS_INT (1),
|
||||||
NULL
|
NULL)));
|
||||||
)
|
|
||||||
));
|
|
||||||
}
|
}
|
||||||
|
|
||||||
static void
|
static void
|
||||||
|
@ -504,7 +503,7 @@ gst_ladspa_set_property (GObject *object, guint prop_id, const GValue *value, GP
|
||||||
GstLADSPA *ladspa = (GstLADSPA*)object;
|
GstLADSPA *ladspa = (GstLADSPA*)object;
|
||||||
GstLADSPAClass *oclass;
|
GstLADSPAClass *oclass;
|
||||||
ladspa_control_info *control_info;
|
ladspa_control_info *control_info;
|
||||||
|
|
||||||
oclass = (GstLADSPAClass*)(G_OBJECT_GET_CLASS (object));
|
oclass = (GstLADSPAClass*)(G_OBJECT_GET_CLASS (object));
|
||||||
|
|
||||||
/* remember, properties have an offset of 1 */
|
/* remember, properties have an offset of 1 */
|
||||||
|
@ -512,7 +511,7 @@ gst_ladspa_set_property (GObject *object, guint prop_id, const GValue *value, GP
|
||||||
|
|
||||||
/* verify it exists */
|
/* verify it exists */
|
||||||
g_return_if_fail (prop_id < oclass->numcontrols);
|
g_return_if_fail (prop_id < oclass->numcontrols);
|
||||||
|
|
||||||
control_info = &(oclass->control_info[prop_id]);
|
control_info = &(oclass->control_info[prop_id]);
|
||||||
g_return_if_fail (control_info->name != NULL);
|
g_return_if_fail (control_info->name != NULL);
|
||||||
|
|
||||||
|
|
|
@ -27,7 +27,7 @@
|
||||||
|
|
||||||
|
|
||||||
GstElementDetails gst_pngenc_details = {
|
GstElementDetails gst_pngenc_details = {
|
||||||
"png encoder",
|
"PNG encoder",
|
||||||
"Codec/Image/Encoder",
|
"Codec/Image/Encoder",
|
||||||
"LGPL",
|
"LGPL",
|
||||||
"Encode a video frame to a .png image",
|
"Encode a video frame to a .png image",
|
||||||
|
|
|
@ -29,7 +29,7 @@
|
||||||
/* elementfactory information */
|
/* elementfactory information */
|
||||||
static GstElementDetails gst_dv1394src_details = {
|
static GstElementDetails gst_dv1394src_details = {
|
||||||
"Firewire (1394) DV Source",
|
"Firewire (1394) DV Source",
|
||||||
"Source/1394/DV",
|
"Source/Video",
|
||||||
"LGPL",
|
"LGPL",
|
||||||
"Source for DV video data from firewire port",
|
"Source for DV video data from firewire port",
|
||||||
VERSION,
|
VERSION,
|
||||||
|
|
|
@ -27,7 +27,7 @@
|
||||||
/* elementfactory information */
|
/* elementfactory information */
|
||||||
static GstElementDetails shout2send_details = {
|
static GstElementDetails shout2send_details = {
|
||||||
"An Icecast plugin",
|
"An Icecast plugin",
|
||||||
"Sink/Network/Icecast2",
|
"Sink/Network",
|
||||||
"LGPL",
|
"LGPL",
|
||||||
"Sends data to an icecast server",
|
"Sends data to an icecast server",
|
||||||
VERSION,
|
VERSION,
|
||||||
|
|
|
@ -27,7 +27,7 @@
|
||||||
|
|
||||||
static GstElementDetails gst_smoothwave_details = {
|
static GstElementDetails gst_smoothwave_details = {
|
||||||
"Smooth waveform",
|
"Smooth waveform",
|
||||||
"Sink/Visualization",
|
"Visualization",
|
||||||
"LGPL",
|
"LGPL",
|
||||||
"Fading grayscale waveform display",
|
"Fading grayscale waveform display",
|
||||||
VERSION,
|
VERSION,
|
||||||
|
|
Loading…
Reference in a new issue