From e88984ccbd4b2b7b5527cbc3ff488c5c85bb1e97 Mon Sep 17 00:00:00 2001 From: Vincent Penquerc'h Date: Sun, 15 Feb 2009 18:35:04 +0000 Subject: add new Kate plugin, for Kate overlay streams katedec: Kate decoder (text only) kateenc: Kate encoder (text and DVD SPU only) katetag: Kate tagger kateparse: Kate parser tiger: Kate renderer using the Tiger rendering library Fixes #525743. --- ext/kate/gstkateutil.h | 77 ++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 77 insertions(+) create mode 100644 ext/kate/gstkateutil.h (limited to 'ext/kate/gstkateutil.h') diff --git a/ext/kate/gstkateutil.h b/ext/kate/gstkateutil.h new file mode 100644 index 00000000..6e8ea2e0 --- /dev/null +++ b/ext/kate/gstkateutil.h @@ -0,0 +1,77 @@ +/* -*- c-basic-offset: 2 -*- + * GStreamer + * Copyright (C) <2008> Vincent Penquerc'h + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Library General Public + * License as published by the Free Software Foundation; either + * version 2 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Library General Public License for more details. + * + * 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. + */ + + +#ifndef __GST_KATE_UTIL_H__ +#define __GST_KATE_UTIL_H__ + +#include +#include + +G_BEGIN_DECLS enum +{ + ARG_DEC_BASE_0, + ARG_DEC_BASE_LANGUAGE, + ARG_DEC_BASE_CATEGORY, + ARG_DEC_BASE_ORIGINAL_CANVAS_WIDTH, + ARG_DEC_BASE_ORIGINAL_CANVAS_HEIGHT, + DECODER_BASE_ARG_COUNT +}; + +typedef struct +{ + kate_state k; + + gboolean initialized; + + GstTagList *tags; + + gchar *language; + gchar *category; + + gint original_canvas_width; + gint original_canvas_height; + +} GstKateDecoderBase; + +extern GstCaps *gst_kate_util_set_header_on_caps (GstElement * element, + GstCaps * caps, GList * headers); +extern void gst_kate_util_decode_base_init (GstKateDecoderBase * decoder); +extern void gst_kate_util_install_decoder_base_properties (GObjectClass * + gobject_class); +extern gboolean gst_kate_util_decoder_base_get_property (GstKateDecoderBase * + decoder, GObject * object, guint prop_id, GValue * value, + GParamSpec * pspec); +extern GstFlowReturn +gst_kate_util_decoder_base_chain_kate_packet (GstKateDecoderBase * decoder, + GstElement * element, GstPad * pad, GstBuffer * buffer, GstPad * srcpad, + const kate_event ** ev); +extern GstStateChangeReturn +gst_kate_decoder_base_change_state (GstKateDecoderBase * decoder, + GstElement * element, GstElementClass * parent_class, + GstStateChange transition); +extern gboolean gst_kate_decoder_base_convert (GstKateDecoderBase * decoder, + GstElement * element, GstPad * pad, GstFormat src_fmt, gint64 src_val, + GstFormat * dest_fmt, gint64 * dest_val); +extern gboolean gst_kate_decoder_base_sink_query (GstKateDecoderBase * decoder, + GstElement * element, GstPad * pad, GstQuery * query); + +G_END_DECLS +#endif /* __GST_KATE_UTIL_H__ */ -- cgit v1.2.1