static GstStateChangeReturn gst_auto_audio_sink_change_state (GstElement * element, GstStateChange transition); static void gst_auto_audio_sink_dispose (GstAutoAudioSink * sink); static void gst_auto_audio_sink_clear_kid (GstAutoAudioSink * sink); static void gst_auto_audio_sink_set_property (GObject * object, guint prop_id, const GValue * value, GParamSpec * pspec); static void gst_auto_audio_sink_get_property (GObject * object, guint prop_id, GValue * value, GParamSpec * pspec); #define gst_auto_audio_sink_parent_class parent_class G_DEFINE_TYPE (GstAutoAudioSink, gst_auto_audio_sink, GST_TYPE_BIN); static GstStaticPadTemplate sink_template = GST_STATIC_PAD_TEMPLATE ("sink", GST_PAD_SINK, GST_PAD_ALWAYS, GST_STATIC_CAPS_ANY); static void gst_auto_audio_sink_class_init (GstAutoAudioSinkClass * klass) { GObjectClass *gobject_class; GstElementClass *eklass; gobject_class = G_OBJECT_CLASS (klass); eklass = GST_ELEMENT_CLASS (klass); gobject_class->dispose = (GObjectFinalizeFunc) gst_auto_audio_sink_dispose; gobject_class->set_property = gst_auto_audio_sink_set_property; gobject_class->get_property = gst_auto_audio_sink_get_property;
#include "gstglfilter.h" #define GST_CAT_DEFAULT gst_gl_filter_debug GST_DEBUG_CATEGORY_STATIC (GST_CAT_DEFAULT); /* *INDENT-OFF* */ static GstStaticPadTemplate gst_gl_filter_src_pad_template = GST_STATIC_PAD_TEMPLATE ("src", GST_PAD_SRC, GST_PAD_ALWAYS, GST_STATIC_CAPS ("video/x-raw(" GST_CAPS_FEATURE_MEMORY_GL_MEMORY "), " "format = (string) RGBA, " "width = " GST_VIDEO_SIZE_RANGE ", " "height = " GST_VIDEO_SIZE_RANGE ", " "framerate = " GST_VIDEO_FPS_RANGE "," "texture-target = (string) 2D ; " "video/x-raw(ANY), " "format = (string) RGBA, " "width = " GST_VIDEO_SIZE_RANGE ", " "height = " GST_VIDEO_SIZE_RANGE ", " "framerate = " GST_VIDEO_FPS_RANGE "," "texture-target = (string) 2D" )); static GstStaticPadTemplate gst_gl_filter_sink_pad_template = GST_STATIC_PAD_TEMPLATE ("sink", GST_PAD_SINK, GST_PAD_ALWAYS, GST_STATIC_CAPS ("video/x-raw(ANY), " "format = (string) RGBA, " "width = " GST_VIDEO_SIZE_RANGE ", "
#include <gst/base/gstadapter.h> #define GST_TYPE_ADPCM_DEC \ (adpcmdec_get_type ()) #define GST_ADPCM_DEC(obj) \ (G_TYPE_CHECK_INSTANCE_CAST ((obj), GST_TYPE_ADPCM_DEC, ADPCMDec)) #define GST_CAT_DEFAULT adpcmdec_debug GST_DEBUG_CATEGORY_STATIC (adpcmdec_debug); static GstStaticPadTemplate adpcmdec_sink_template = GST_STATIC_PAD_TEMPLATE ("sink", GST_PAD_SINK, GST_PAD_ALWAYS, GST_STATIC_CAPS ("audio/x-adpcm, " " layout=(string){microsoft, dvi}, " " block_align = (int) [64, 8192], " " rate = (int)[ 1, MAX ], " "channels = (int)[1,2];") ); static GstStaticPadTemplate adpcmdec_src_template = GST_STATIC_PAD_TEMPLATE ("src", GST_PAD_SRC, GST_PAD_ALWAYS, GST_STATIC_CAPS ("audio/x-raw-int, " "depth = (int)16, " "width = (int)16, " "endianness = (int)" G_STRINGIFY (G_BYTE_ORDER) ", " "signed = (boolean)TRUE, " "channels = (int) [1,2], " "rate = (int)[1, MAX]") );
/* FILL ME */ }; #define PROP_METHOD_DEFAULT GST_VIDEO_FLIP_METHOD_IDENTITY GST_DEBUG_CATEGORY_STATIC (video_flip_debug); #define GST_CAT_DEFAULT video_flip_debug static GstStaticPadTemplate gst_video_flip_src_template = GST_STATIC_PAD_TEMPLATE ("src", GST_PAD_SRC, GST_PAD_ALWAYS, GST_STATIC_CAPS (GST_VIDEO_CAPS_YUV ("AYUV") ";" GST_VIDEO_CAPS_ARGB ";" GST_VIDEO_CAPS_BGRA ";" GST_VIDEO_CAPS_ABGR ";" GST_VIDEO_CAPS_RGBA ";" GST_VIDEO_CAPS_YUV ("Y444") ";" GST_VIDEO_CAPS_xRGB ";" GST_VIDEO_CAPS_RGBx ";" GST_VIDEO_CAPS_xBGR ";" GST_VIDEO_CAPS_BGRx ";" GST_VIDEO_CAPS_RGB ";" GST_VIDEO_CAPS_BGR ";" GST_VIDEO_CAPS_YUV ("I420") ";" GST_VIDEO_CAPS_YUV ("YV12") ";" GST_VIDEO_CAPS_YUV ("IYUV") ) ); static GstStaticPadTemplate gst_video_flip_sink_template = GST_STATIC_PAD_TEMPLATE ("sink", GST_PAD_SINK, GST_PAD_ALWAYS, GST_STATIC_CAPS (GST_VIDEO_CAPS_YUV ("AYUV") ";" GST_VIDEO_CAPS_ARGB ";" GST_VIDEO_CAPS_BGRA ";" GST_VIDEO_CAPS_ABGR ";" GST_VIDEO_CAPS_RGBA ";" GST_VIDEO_CAPS_YUV ("Y444") ";"
#include <gst/video/video.h> #include <gst/check/gstcheck.h> gboolean have_eos = FALSE; /* For ease of programming we use globals to keep refs for our floating * src and sink pads we create; otherwise we always have to do get_pad, * get_peer, and then remove references in every test function */ GstPad *mysrcpad, *mysinkpad; #define VIDEO_CAPS_TEMPLATE_STRING \ GST_VIDEO_CAPS_MAKE ("{ I420, AYUV, YUY2, UYVY, YVYU, xRGB }") static GstStaticPadTemplate sinktemplate = GST_STATIC_PAD_TEMPLATE ("sink", GST_PAD_SINK, GST_PAD_ALWAYS, GST_STATIC_CAPS (VIDEO_CAPS_TEMPLATE_STRING) ); static GstStaticPadTemplate srctemplate = GST_STATIC_PAD_TEMPLATE ("src", GST_PAD_SRC, GST_PAD_ALWAYS, GST_STATIC_CAPS (VIDEO_CAPS_TEMPLATE_STRING) ); /* takes over reference for outcaps */ static GstElement * setup_filter (const gchar * name, const gchar * prop, va_list var_args) { GstElement *element; GST_DEBUG ("setup_element");
enum { PROP_0, PROP_PLANES }; #define gst_quarktv_parent_class parent_class G_DEFINE_TYPE (GstQuarkTV, gst_quarktv, GST_TYPE_VIDEO_FILTER); static void gst_quarktv_planetable_clear (GstQuarkTV * filter); static GstStaticPadTemplate gst_quarktv_src_template = GST_STATIC_PAD_TEMPLATE ("src", GST_PAD_SRC, GST_PAD_ALWAYS, GST_STATIC_CAPS (GST_VIDEO_CAPS_MAKE ("{ xRGB, xBGR, BGRx, RGBx }")) ); static GstStaticPadTemplate gst_quarktv_sink_template = GST_STATIC_PAD_TEMPLATE ("sink", GST_PAD_SINK, GST_PAD_ALWAYS, GST_STATIC_CAPS (GST_VIDEO_CAPS_MAKE ("{ xRGB, xBGR, BGRx, RGBx }")) ); static gboolean gst_quarktv_set_info (GstVideoFilter * vfilter, GstCaps * incaps, GstVideoInfo * in_info, GstCaps * outcaps, GstVideoInfo * out_info) { GstQuarkTV *filter = GST_QUARKTV (vfilter);
* * You should have received a copy of the GNU Lesser General Public * License along with this library; if not, write to the Free Software * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA */ #include "config.h" #include "DataSourceGStreamer.h" #include <gio/gio.h> #include <glib.h> #include <gst/gst.h> #include <gst/pbutils/missing-plugins.h> static GstStaticPadTemplate src_template = GST_STATIC_PAD_TEMPLATE("src", GST_PAD_SRC, GST_PAD_ALWAYS, GST_STATIC_CAPS_ANY); GST_DEBUG_CATEGORY_STATIC(webkit_data_src_debug); #define GST_CAT_DEFAULT webkit_data_src_debug static void webkit_data_src_uri_handler_init(gpointer g_iface, gpointer iface_data); static void webkit_data_src_finalize(WebkitDataSrc* src); static GstStateChangeReturn webkit_data_src_change_state(GstElement* element, GstStateChange transition); static const GInterfaceInfo urihandler_info = { webkit_data_src_uri_handler_init, 0, 0
#include "config.h" #endif #include <string.h> #include <gst/gst.h> #include <gst/base/gstcollectpads.h> #include <gst/video/video.h> #include "gstcompare.h" GST_DEBUG_CATEGORY_STATIC (compare_debug); #define GST_CAT_DEFAULT compare_debug static GstStaticPadTemplate src_factory = GST_STATIC_PAD_TEMPLATE ("src", GST_PAD_SRC, GST_PAD_ALWAYS, GST_STATIC_CAPS_ANY); static GstStaticPadTemplate sink_factory = GST_STATIC_PAD_TEMPLATE ("sink", GST_PAD_SINK, GST_PAD_ALWAYS, GST_STATIC_CAPS_ANY); static GstStaticPadTemplate check_sink_factory = GST_STATIC_PAD_TEMPLATE ("check", GST_PAD_SINK, GST_PAD_ALWAYS, GST_STATIC_CAPS_ANY); enum GstCompareMethod {
#endif #include <gst/gst.h> #include "gstjp2kdecimator.h" #include "jp2kcodestream.h" #include <gst/base/gstbytereader.h> #include <gst/base/gstbitreader.h> #include <gst/base/gstbytewriter.h> #include <string.h> static GstStaticPadTemplate sink_pad_template = GST_STATIC_PAD_TEMPLATE ("sink", GST_PAD_SINK, GST_PAD_ALWAYS, GST_STATIC_CAPS ("image/x-jpc")); static GstStaticPadTemplate src_pad_template = GST_STATIC_PAD_TEMPLATE ("src", GST_PAD_SRC, GST_PAD_ALWAYS, GST_STATIC_CAPS ("image/x-jpc")); enum { PROP_0, PROP_MAX_LAYERS, PROP_MAX_DECOMPOSITION_LEVELS }; #define DEFAULT_MAX_LAYERS (0) #define DEFAULT_MAX_DECOMPOSITION_LEVELS (-1)
} #define GST_AMRNBENC_BANDMODE_TYPE (gst_amrnbenc_bandmode_get_type()) #define BANDMODE_DEFAULT MR122 enum { PROP_0, PROP_BANDMODE }; static GstStaticPadTemplate sink_template = GST_STATIC_PAD_TEMPLATE ("sink", GST_PAD_SINK, GST_PAD_ALWAYS, GST_STATIC_CAPS ("audio/x-raw-int, " "width = (int) 16, " "depth = (int) 16, " "signed = (boolean) TRUE, " "endianness = (int) BYTE_ORDER, " "rate = (int) 8000," "channels = (int) 1") ); static GstStaticPadTemplate src_template = GST_STATIC_PAD_TEMPLATE ("src", GST_PAD_SRC, GST_PAD_ALWAYS, GST_STATIC_CAPS ("audio/AMR, " "rate = (int) 8000, " "channels = (int) 1") ); GST_DEBUG_CATEGORY_STATIC (gst_amrnbenc_debug); #define GST_CAT_DEFAULT gst_amrnbenc_debug static void gst_amrnbenc_finalize (GObject * object);
#ifdef HAVE_CONFIG_H # include <config.h> #endif #include <gst/gst.h> #include "gstopencvutils.h" #include "gstcvsobel.h" #include <opencv2/imgproc/imgproc_c.h> GST_DEBUG_CATEGORY_STATIC (gst_cv_sobel_debug); #define GST_CAT_DEFAULT gst_cv_sobel_debug static GstStaticPadTemplate sink_factory = GST_STATIC_PAD_TEMPLATE ("sink", GST_PAD_SINK, GST_PAD_ALWAYS, GST_STATIC_CAPS (GST_VIDEO_CAPS_MAKE ("GRAY8")) ); #if G_BYTE_ORDER == G_BIG_ENDIAN static GstStaticPadTemplate src_factory = GST_STATIC_PAD_TEMPLATE ("src", GST_PAD_SRC, GST_PAD_ALWAYS, GST_STATIC_CAPS (GST_VIDEO_CAPS_MAKE ("GRAY16_BE")) ); #else static GstStaticPadTemplate src_factory = GST_STATIC_PAD_TEMPLATE ("src", GST_PAD_SRC, GST_PAD_ALWAYS, GST_STATIC_CAPS (GST_VIDEO_CAPS_MAKE ("GRAY16_LE"))
* * You should have received a copy of the GNU Library General Public * License along with this library; if not, write to the * Free Software Foundation, Inc., 59 Temple Place - Suite 330, * Boston, MA 02111-1307, USA. */ #include <gst/check/gstcheck.h> #include "parser.h" #define SRC_CAPS_TMPL "video/x-h264, parsed=(boolean)false" #define SINK_CAPS_TMPL "video/x-h264, parsed=(boolean)true" GstStaticPadTemplate sinktemplate_bs_nal = GST_STATIC_PAD_TEMPLATE ("sink", GST_PAD_SINK, GST_PAD_ALWAYS, GST_STATIC_CAPS (SINK_CAPS_TMPL ", stream-format = (string) byte-stream, alignment = (string) nal") ); GstStaticPadTemplate sinktemplate_avc_au = GST_STATIC_PAD_TEMPLATE ("sink", GST_PAD_SINK, GST_PAD_ALWAYS, GST_STATIC_CAPS (SINK_CAPS_TMPL ", stream-format = (string) avc, alignment = (string) au") ); GstStaticPadTemplate srctemplate = GST_STATIC_PAD_TEMPLATE ("src", GST_PAD_SRC, GST_PAD_ALWAYS, GST_STATIC_CAPS (SRC_CAPS_TMPL) );
"StreamTitle='" TEST_METADATA "';\0\0\0\0" #define ICY_DATA \ "aaaaaaaa" \ "\x02" \ ICY_METADATA \ "bbbbbbbb" #define ICYCAPS "application/x-icy, metadata-interval = (int)8" #define SRC_CAPS "application/x-icy, metadata-interval = (int)[0, MAX]" #define SINK_CAPS "ANY" static GstStaticPadTemplate srctemplate = GST_STATIC_PAD_TEMPLATE ("src", GST_PAD_SRC, GST_PAD_ALWAYS, GST_STATIC_CAPS (SRC_CAPS) ); static GstStaticPadTemplate sinktemplate = GST_STATIC_PAD_TEMPLATE ("sink", GST_PAD_SINK, GST_PAD_ALWAYS, GST_STATIC_CAPS (SINK_CAPS) ); static GstElement *icydemux; static GstBus *bus; GstPad *srcpad, *sinkpad; static GstStaticCaps typefind_caps = GST_STATIC_CAPS ("application/octet-stream");
#ifdef HAVE_CONFIG_H #include "config.h" #endif #include "gstscreamqueue.h" #include <gst/rtp/gstrtpbuffer.h> #include <gst/video/video.h> GST_DEBUG_CATEGORY(gst_scream_queue_debug_category); #define GST_CAT_DEFAULT gst_scream_queue_debug_category #define gst_scream_queue_parent_class parent_class G_DEFINE_TYPE(GstScreamQueue, gst_scream_queue, GST_TYPE_ELEMENT); static GstStaticPadTemplate sink_template = GST_STATIC_PAD_TEMPLATE("sink", GST_PAD_SINK, GST_PAD_ALWAYS, GST_STATIC_CAPS("application/x-rtp")); static GstStaticPadTemplate src_template = GST_STATIC_PAD_TEMPLATE("src", GST_PAD_SRC, GST_PAD_ALWAYS, GST_STATIC_CAPS("application/x-rtp")); typedef enum { GST_SCREAM_DATA_QUEUE_ITEM_TYPE_RTP, GST_SCREAM_DATA_QUEUE_ITEM_TYPE_RTCP } GstScreamDataQueueItemType; typedef struct { GstDataQueueItem item; GstScreamDataQueueItemType type; guint32 rtp_ssrc;
* </programlisting> * </para> * </refsect2> */ #ifdef HAVE_CONFIG_H #include "config.h" #endif #include "gstopenni2src.h" GST_DEBUG_CATEGORY_STATIC (openni2src_debug); #define GST_CAT_DEFAULT openni2src_debug static GstStaticPadTemplate srctemplate = GST_STATIC_PAD_TEMPLATE ("src", GST_PAD_SRC, GST_PAD_ALWAYS, GST_STATIC_CAPS (GST_VIDEO_CAPS_MAKE ("{RGBA, RGB, GRAY16_LE}")) ); enum { PROP_0, PROP_LOCATION, PROP_SOURCETYPE }; typedef enum { SOURCETYPE_DEPTH, SOURCETYPE_COLOR, SOURCETYPE_BOTH } GstOpenni2SourceType;
/* This was removed from the base class, this is used as a temporary return to signal the need to call _drop_frame, and does not leave daalaenc. */ #define GST_CUSTOM_FLOW_DROP GST_FLOW_CUSTOM_SUCCESS_1 enum { PROP_0 }; static GstStaticPadTemplate daala_dec_src_factory = GST_STATIC_PAD_TEMPLATE ("src", GST_PAD_SRC, GST_PAD_ALWAYS, GST_STATIC_CAPS ("video/x-raw, " "format = (string) { I420, Y444 }, " "framerate = (fraction) [0/1, MAX], " "width = (int) [ 1, MAX ], " "height = (int) [ 1, MAX ]") ); static GstStaticPadTemplate daala_dec_sink_factory = GST_STATIC_PAD_TEMPLATE ("sink", GST_PAD_SINK, GST_PAD_ALWAYS, GST_STATIC_CAPS ("video/x-daala") ); #define gst_daala_dec_parent_class parent_class G_DEFINE_TYPE (GstDaalaDec, gst_daala_dec, GST_TYPE_VIDEO_DECODER); static gboolean daala_dec_start (GstVideoDecoder * decoder);
LAST_SIGNAL }; enum { PROP_0, PROP_SILENT, }; /* the capabilities of the inputs and outputs. * * FIXME:describe the real formats here. */ static GstStaticPadTemplate sink_template = GST_STATIC_PAD_TEMPLATE ("sink", GST_PAD_SINK, GST_PAD_ALWAYS, GST_STATIC_CAPS ("video/mpeg, " "mpegversion=[1,2]," "systemstream=false") ); static GstStaticPadTemplate src_template = GST_STATIC_PAD_TEMPLATE ("src", GST_PAD_SRC, GST_PAD_ALWAYS, GST_STATIC_CAPS (GST_VIDEO_CAPS_YUV ("NV12")) ); #define gst_omx_decoder_parent_class parent_class G_DEFINE_TYPE (GstOmxDecoder, gst_omx_decoder, GST_TYPE_ELEMENT); static void gst_omx_decoder_set_property (GObject * object, guint prop_id, const GValue * value, GParamSpec * pspec); static void gst_omx_decoder_get_property (GObject * object, guint prop_id,
/* signals and args */ enum { /* FILL ME */ LAST_SIGNAL }; enum { ARG_0 /* FILL ME */ }; static GstStaticPadTemplate src_template = GST_STATIC_PAD_TEMPLATE ("src", GST_PAD_SRC, GST_PAD_ALWAYS, GST_STATIC_CAPS (GST_VIDEO_CAPS_xRGB_HOST_ENDIAN) ); static GstStaticPadTemplate sink_template = GST_STATIC_PAD_TEMPLATE ("sink", /* the name of the pads */ GST_PAD_SINK, /* type of the pad */ GST_PAD_ALWAYS, /* ALWAYS/SOMETIMES */ GST_STATIC_CAPS ("audio/x-raw-int, " "endianness = (int) BYTE_ORDER, " "signed = (boolean) TRUE, " "width = (int) 16, " "depth = (int) 16, " "rate = (int) [ 8000, 96000 ], " "channels = (int) { 1, 2 }") );
#ifdef HAVE_CONFIG_H #include "config.h" #endif #include "nle.h" /** * SECTION:element-nlesource * * The NleSource encapsulates a pipeline which produces data for processing * in a #NleComposition. */ static GstStaticPadTemplate nle_source_src_template = GST_STATIC_PAD_TEMPLATE ("src", GST_PAD_SRC, GST_PAD_ALWAYS, GST_STATIC_CAPS_ANY); GST_DEBUG_CATEGORY_STATIC (nlesource); #define GST_CAT_DEFAULT nlesource #define _do_init \ GST_DEBUG_CATEGORY_INIT (nlesource, "nlesource", GST_DEBUG_FG_BLUE | GST_DEBUG_BOLD, "GNonLin Source Element"); #define nle_source_parent_class parent_class G_DEFINE_TYPE_WITH_CODE (NleSource, nle_source, NLE_TYPE_OBJECT, _do_init); struct _NleSourcePrivate { gboolean dispose_has_run; gboolean dynamicpads; /* TRUE if the controlled element has dynamic pads */
GstPad *rtcp_src; }; /* pad templates */ #define RTP_SRC_CAPS "application/x-srtp;application/x-rtp" #define RTCP_SRC_CAPS "application/x-srtcp;application/x-rtcp" #define SINK_CAPS "application/x-srtcp;application/x-srtp;" \ "application/x-srtcp-mux;" \ "application/x-rtcp;application/x-rtp;" \ "application/x-rtcp-mux;" static GstStaticPadTemplate sink_template = GST_STATIC_PAD_TEMPLATE ("sink", GST_PAD_SINK, GST_PAD_ALWAYS, GST_STATIC_CAPS (SINK_CAPS) ); static GstStaticPadTemplate rtp_src_template = GST_STATIC_PAD_TEMPLATE ("rtp_src", GST_PAD_SRC, GST_PAD_ALWAYS, GST_STATIC_CAPS (RTP_SRC_CAPS) ); static GstStaticPadTemplate rtcp_src_template = GST_STATIC_PAD_TEMPLATE ("rtcp_src", GST_PAD_SRC, GST_PAD_ALWAYS, GST_STATIC_CAPS (RTCP_SRC_CAPS)
* Boston, MA 02111-1307, USA. */ #ifdef HAVE_CONFIG_H #include "config.h" #endif #include <gst/audio/audio.h> #include "alaw-encode.h" #include "alaw-decode.h" GstStaticPadTemplate alaw_dec_src_factory = GST_STATIC_PAD_TEMPLATE ("src", GST_PAD_SRC, GST_PAD_ALWAYS, GST_STATIC_CAPS ("audio/x-raw, " "format = (string) " GST_AUDIO_NE (S16) ", " "layout = (string) interleaved, " "rate = (int) [ 8000, 192000 ], " "channels = (int) [ 1, 2 ]") ); GstStaticPadTemplate alaw_dec_sink_factory = GST_STATIC_PAD_TEMPLATE ("sink", GST_PAD_SINK, GST_PAD_ALWAYS, GST_STATIC_CAPS ("audio/x-alaw, " "rate = [ 8000 , 192000 ], " "channels = [ 1 , 2 ]") ); GstStaticPadTemplate alaw_enc_sink_factory = GST_STATIC_PAD_TEMPLATE ("sink", GST_PAD_SINK, GST_PAD_ALWAYS, GST_STATIC_CAPS ("audio/x-raw, "
NULL, sizeof (GstPngDec), 0, (GInstanceInitFunc) gst_pngdec_init, }; pngdec_type = g_type_register_static (GST_TYPE_ELEMENT, "GstPngDec", &pngdec_info, 0); } return pngdec_type; } static GstStaticPadTemplate gst_pngdec_src_pad_template = GST_STATIC_PAD_TEMPLATE ("src", GST_PAD_SRC, GST_PAD_ALWAYS, GST_STATIC_CAPS (GST_VIDEO_CAPS_RGBA ";" GST_VIDEO_CAPS_RGB) ); static GstStaticPadTemplate gst_pngdec_sink_pad_template = GST_STATIC_PAD_TEMPLATE ("sink", GST_PAD_SINK, GST_PAD_ALWAYS, GST_STATIC_CAPS ("image/png") ); static void gst_pngdec_base_init (gpointer g_class) { GstElementClass *element_class = GST_ELEMENT_CLASS (g_class);
GstClockTime earliest_time; }; struct _GstVisualGLClass { GstElementClass parent_class; VisPluginRef *plugin; }; GType gst_visual_gl_get_type (void); static GstStaticPadTemplate src_template = GST_STATIC_PAD_TEMPLATE ("src", GST_PAD_SRC, GST_PAD_ALWAYS, GST_STATIC_CAPS (GST_GL_VIDEO_CAPS) ); static GstStaticPadTemplate sink_template = GST_STATIC_PAD_TEMPLATE ("sink", GST_PAD_SINK, GST_PAD_ALWAYS, GST_STATIC_CAPS ("audio/x-raw-int, " "width = (int) 16, " "depth = (int) 16, " "endianness = (int) BYTE_ORDER, " "signed = (boolean) TRUE, " "channels = (int) { 1, 2 }, " "rate = (int) { 8000, 11250, 22500, 32000, 44100, 48000, 96000 }") );
PROP_CAMERA_NAME, PROP_CAMERA, PROP_GAIN, PROP_GAIN_AUTO, PROP_EXPOSURE, PROP_EXPOSURE_AUTO, PROP_H_BINNING, PROP_V_BINNING, PROP_OFFSET_X, PROP_OFFSET_Y }; GST_BOILERPLATE (GstAravis, gst_aravis, GstPushSrc, GST_TYPE_PUSH_SRC); static GstStaticPadTemplate aravis_src_template = GST_STATIC_PAD_TEMPLATE ("src", GST_PAD_SRC, GST_PAD_ALWAYS, GST_STATIC_CAPS ("ANY")); static GstCaps * gst_aravis_get_all_camera_caps (GstAravis *gst_aravis) { GstCaps *caps; gint64 *pixel_formats; double min_frame_rate, max_frame_rate; int min_height, min_width; int max_height, max_width; unsigned int n_pixel_formats, i; g_return_val_if_fail (GST_IS_ARAVIS (gst_aravis), NULL); if (!ARV_IS_CAMERA (gst_aravis->camera))
#endif #include "gstalphacolor.h" #include <gst/gst.h> #include <gst/video/video.h> #include <string.h> GST_DEBUG_CATEGORY_STATIC (alpha_color_debug); #define GST_CAT_DEFAULT alpha_color_debug /* elementfactory information */ static GstStaticPadTemplate sink_template = GST_STATIC_PAD_TEMPLATE ("sink", GST_PAD_SINK, GST_PAD_ALWAYS, GST_STATIC_CAPS (GST_VIDEO_CAPS_MAKE ("{ RGBA, BGRA, ARGB, ABGR, AYUV }")) ); static GstStaticPadTemplate src_template = GST_STATIC_PAD_TEMPLATE ("src", GST_PAD_SRC, GST_PAD_ALWAYS, GST_STATIC_CAPS (GST_VIDEO_CAPS_MAKE ("{ RGBA, BGRA, ARGB, ABGR, AYUV }")) ); G_DEFINE_TYPE (GstAlphaColor, gst_alpha_color, GST_TYPE_VIDEO_FILTER); static GstCaps *gst_alpha_color_transform_caps (GstBaseTransform * btrans, GstPadDirection direction, GstCaps * caps, GstCaps * filter); static gboolean gst_alpha_color_set_info (GstVideoFilter * filter,
#define GST_TYPE_FFMPEGDEINTERLACE \ (gst_ffmpegdeinterlace_get_type()) #define GST_FFMPEGDEINTERLACE(obj) \ (G_TYPE_CHECK_INSTANCE_CAST((obj),GST_TYPE_FFMPEGDEINTERLACE,GstFFMpegDeinterlace)) #define GST_FFMPEGDEINTERLACE_CLASS(klass) \ (G_TYPE_CHECK_CLASS_CAST((klass),GST_TYPE_FFMPEGDEINTERLACE,GstFFMpegDeinterlace)) #define GST_IS_FFMPEGDEINTERLACE(obj) \ (G_TYPE_CHECK_INSTANCE_TYPE((obj),GST_TYPE_FFMPEGDEINTERLACE)) #define GST_IS_FFMPEGDEINTERLACE_CLASS(klass) \ (G_TYPE_CHECK_CLASS_TYPE((klass),GST_TYPE_FFMPEGDEINTERLACE)) GType gst_ffmpegdeinterlace_get_type (void); static GstStaticPadTemplate src_factory = GST_STATIC_PAD_TEMPLATE ("src", GST_PAD_SRC, GST_PAD_ALWAYS, GST_STATIC_CAPS (GST_VIDEO_CAPS_YUV ("I420")) ); static GstStaticPadTemplate sink_factory = GST_STATIC_PAD_TEMPLATE ("sink", GST_PAD_SINK, GST_PAD_ALWAYS, GST_STATIC_CAPS (GST_VIDEO_CAPS_YUV ("I420")) ); GST_BOILERPLATE (GstFFMpegDeinterlace, gst_ffmpegdeinterlace, GstElement, GST_TYPE_ELEMENT); static GstFlowReturn gst_ffmpegdeinterlace_chain (GstPad * pad, GstBuffer * inbuf);
1152, 1254, 1728}}, { 640, { 1280, 1393, 1920}}, { 640, { 1280, 1394, 1920}} }; static const guint fscod_rates[4] = { 48000, 44100, 32000, 0 }; static const guint acmod_chans[8] = { 2, 1, 2, 3, 3, 4, 4, 5 }; static const guint numblks[4] = { 1, 2, 3, 6 }; static GstStaticPadTemplate src_template = GST_STATIC_PAD_TEMPLATE ("src", GST_PAD_SRC, GST_PAD_ALWAYS, GST_STATIC_CAPS ("audio/x-ac3, framed = (boolean) true, " " channels = (int) [ 1, 6 ], rate = (int) [ 8000, 48000 ], " " alignment = (string) { iec61937, frame}; " "audio/x-eac3, framed = (boolean) true, " " channels = (int) [ 1, 6 ], rate = (int) [ 8000, 48000 ], " " alignment = (string) { iec61937, frame}; ")); static GstStaticPadTemplate sink_template = GST_STATIC_PAD_TEMPLATE ("sink", GST_PAD_SINK, GST_PAD_ALWAYS, GST_STATIC_CAPS ("audio/x-ac3; " "audio/x-eac3; " "audio/ac3")); static void gst_ac3_parse_finalize (GObject * object); static gboolean gst_ac3_parse_start (GstBaseParse * parse); static gboolean gst_ac3_parse_stop (GstBaseParse * parse); static GstFlowReturn gst_ac3_parse_handle_frame (GstBaseParse * parse,
#endif #include <string.h> #include <gst/rtp/gstrtpbuffer.h> #include <gst/rtp/gstrtcpbuffer.h> #include "gstrtpssrcdemux.h" GST_DEBUG_CATEGORY_STATIC (gst_rtp_ssrc_demux_debug); #define GST_CAT_DEFAULT gst_rtp_ssrc_demux_debug /* generic templates */ static GstStaticPadTemplate rtp_ssrc_demux_sink_template = GST_STATIC_PAD_TEMPLATE ("sink", GST_PAD_SINK, GST_PAD_ALWAYS, GST_STATIC_CAPS ("application/x-rtp") ); static GstStaticPadTemplate rtp_ssrc_demux_rtcp_sink_template = GST_STATIC_PAD_TEMPLATE ("rtcp_sink", GST_PAD_SINK, GST_PAD_ALWAYS, GST_STATIC_CAPS ("application/x-rtcp") ); static GstStaticPadTemplate rtp_ssrc_demux_src_template = GST_STATIC_PAD_TEMPLATE ("src_%u", GST_PAD_SRC, GST_PAD_SOMETIMES, GST_STATIC_CAPS ("application/x-rtp")
static GstCaps *gst_fbdevsink_getcaps (GstBaseSink * bsink, GstCaps * filter); static gboolean gst_fbdevsink_setcaps (GstBaseSink * bsink, GstCaps * caps); static void gst_fbdevsink_finalize (GObject * object); static void gst_fbdevsink_set_property (GObject * object, guint prop_id, const GValue * value, GParamSpec * pspec); static void gst_fbdevsink_get_property (GObject * object, guint prop_id, GValue * value, GParamSpec * pspec); static GstStateChangeReturn gst_fbdevsink_change_state (GstElement * element, GstStateChange transition); #define VIDEO_CAPS "{ RGB, BGR, BGRx, xBGR, RGB, RGBx, xRGB, RGB15, RGB16 }" static GstStaticPadTemplate sink_template = GST_STATIC_PAD_TEMPLATE ("sink", GST_PAD_SINK, GST_PAD_ALWAYS, GST_STATIC_CAPS (GST_VIDEO_CAPS_MAKE (VIDEO_CAPS)) ); #define parent_class gst_fbdevsink_parent_class G_DEFINE_TYPE (GstFBDEVSink, gst_fbdevsink, GST_TYPE_VIDEO_SINK); static void gst_fbdevsink_init (GstFBDEVSink * fbdevsink) { /* nothing to do here yet */ } #if 0 static void gst_fbdevsink_get_times (GstBaseSink * basesink, GstBuffer * buffer,
GST_DEBUG_CATEGORY_STATIC (cdxaparse_debug); #define GST_CAT_DEFAULT cdxaparse_debug static gboolean gst_cdxa_parse_sink_activate (GstPad * sinkpad); static void gst_cdxa_parse_loop (GstPad * sinkpad); static gboolean gst_cdxa_parse_sink_activate_pull (GstPad * sinkpad, gboolean active); static GstStateChangeReturn gst_cdxa_parse_change_state (GstElement * element, GstStateChange transition); static gboolean gst_cdxa_parse_src_event (GstPad * srcpad, GstEvent * event); static gboolean gst_cdxa_parse_src_query (GstPad * srcpad, GstQuery * query); static GstStaticPadTemplate sink_template_factory = GST_STATIC_PAD_TEMPLATE ("sink", GST_PAD_SINK, GST_PAD_ALWAYS, GST_STATIC_CAPS ("video/x-cdxa") ); static GstStaticPadTemplate src_template_factory = GST_STATIC_PAD_TEMPLATE ("src", GST_PAD_SRC, GST_PAD_ALWAYS, GST_STATIC_CAPS ("video/mpeg, " "systemstream = (boolean) TRUE") ); GST_BOILERPLATE (GstCDXAParse, gst_cdxa_parse, GstElement, GST_TYPE_ELEMENT); static void gst_cdxa_parse_base_init (gpointer g_class) {