⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 gstcontrollerprivate.h

📁 GStreamer是一个开源的多媒体框架库。利用它
💻 H
字号:
/* GStreamer * * Copyright (C) <2005> Stefan Kost <ensonic at users dot sf dot net> * * gstcontrollerprivate.h: dynamic parameter control subsystem * * 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_CONTROLLER_PRIVATE_H__#define __GST_CONTROLLER_PRIVATE_H__#include <glib.h>#include <glib-object.h>#include <gst/gst.h>#include "gstcontroller.h"G_BEGIN_DECLSstruct _GstControlledProperty;typedef GValue *(*InterpolateGet) (struct _GstControlledProperty * prop,        GstClockTime timestamp);typedef gboolean (*InterpolateGetValueArray) (struct _GstControlledProperty * prop,        GstClockTime timestamp, GstValueArray * value_array);/** * GstInterpolateMethod: * * Function pointer structure to do user-defined interpolation methods */typedef struct _GstInterpolateMethod{  InterpolateGet get_int;  InterpolateGetValueArray get_int_value_array;  InterpolateGet get_uint;  InterpolateGetValueArray get_uint_value_array;  InterpolateGet get_long;  InterpolateGetValueArray get_long_value_array;  InterpolateGet get_ulong;  InterpolateGetValueArray get_ulong_value_array;  InterpolateGet get_float;  InterpolateGetValueArray get_float_value_array;  InterpolateGet get_double;  InterpolateGetValueArray get_double_value_array;  InterpolateGet get_boolean;  InterpolateGetValueArray get_boolean_value_array;  InterpolateGet get_enum;  InterpolateGetValueArray get_enum_value_array;  InterpolateGet get_string;  InterpolateGetValueArray get_string_value_array;} GstInterpolateMethod;/** * GstControlPoint: * * a internal structure for value+time and various temporary * values used for interpolation. This "inherits" from * GstTimedValue. *//* FIXME 0.11: This should be merged with GstTimedValue for 0.11 */typedef struct _GstControlPoint{  /* fields from GstTimedValue. DO NOT CHANGE! */  GstClockTime timestamp;       /* timestamp of the value change */  GValue value;                 /* the new value */  /* internal fields */} GstControlPoint;/** * GstControlledProperty: */typedef struct _GstControlledProperty{  gchar *name;                  /* name of the property */  GType type;                   /* type of the handled property */  GType base;                   /* base-type of the handled property */  GValue default_value;         /* default value for the handled property */  GValue result_value;          /* result value location for the interpolation method */  GstControlPoint last_value;     /* the last value a _sink call wrote */  GstControlPoint live_value;     /* temporary value override for live input */  gulong notify_handler_id;     /* id of the notify::<name> signal handler */  GstInterpolateMode interpolation;     /* Interpolation mode */  /* TODO instead of *method, have pointers to get() and get_value_array() here     gst_controller_set_interpolation_mode() will pick the right ones for the     properties value type     GstInterpolateMethod *method; // User-implemented handler (if interpolation == GST_INTERPOLATE_USER)  */  InterpolateGet get;  InterpolateGetValueArray get_value_array;  GList *values;                /* List of GstControlPoint */  GList *last_requested_value;  /* last search result, can be used for incremental searches */  /*< private >*/  gpointer       _gst_reserved[GST_PADDING];} GstControlledProperty;#define GST_CONTROLLED_PROPERTY(obj)    ((GstControlledProperty *)(obj))G_END_DECLS#endif /* __GST_CONTROLLER_PRIVATE_H__ */

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -