27 #include <gst/gstplugin.h> |
27 #include <gst/gstplugin.h> |
28 #include <gst/gstpluginfeature.h> |
28 #include <gst/gstpluginfeature.h> |
29 |
29 |
30 G_BEGIN_DECLS |
30 G_BEGIN_DECLS |
31 |
31 |
32 #define GST_TYPE_TYPE_FIND (gst_type_find_get_type()) |
32 #define GST_TYPE_TYPE_FIND (gst_type_find_get_type()) |
33 |
33 |
34 typedef struct _GstTypeFind GstTypeFind; |
34 typedef struct _GstTypeFind GstTypeFind; |
35 |
35 |
36 /** |
36 /** |
37 * GstTypeFindFunction: |
37 * GstTypeFindFunction: |
70 * |
70 * |
71 * Object that stores typefind callbacks. To use with #GstTypeFindFactory. |
71 * Object that stores typefind callbacks. To use with #GstTypeFindFactory. |
72 */ |
72 */ |
73 struct _GstTypeFind { |
73 struct _GstTypeFind { |
74 /* private to the caller of the typefind function */ |
74 /* private to the caller of the typefind function */ |
75 guint8 * (* peek) (gpointer data, |
75 guint8 * (* peek) (gpointer data, |
76 gint64 offset, |
76 gint64 offset, |
77 guint size); |
77 guint size); |
|
78 void (* suggest) (gpointer data, |
|
79 guint probability, |
|
80 const GstCaps * caps); |
78 |
81 |
79 void (* suggest) (gpointer data, |
82 gpointer data; |
80 guint probability, |
|
81 const GstCaps * caps); |
|
82 |
|
83 gpointer data; |
|
84 |
83 |
85 /* optional */ |
84 /* optional */ |
86 guint64 (* get_length) (gpointer data); |
85 guint64 (* get_length) (gpointer data); |
87 |
86 |
88 /* <private> */ |
87 /* <private> */ |
89 gpointer _gst_reserved[GST_PADDING]; |
88 gpointer _gst_reserved[GST_PADDING]; |
90 }; |
89 }; |
91 #ifdef __SYMBIAN32__ |
90 #ifdef __SYMBIAN32__ |
92 IMPORT_C |
91 IMPORT_C |
93 #endif |
92 #endif |
94 |
93 |
95 |
94 |
96 GType gst_type_find_get_type (void); |
95 GType gst_type_find_get_type (void); |
97 |
96 |
98 /* typefind function interface */ |
97 /* typefind function interface */ |
99 #ifdef __SYMBIAN32__ |
98 #ifdef __SYMBIAN32__ |
100 IMPORT_C |
99 IMPORT_C |
101 #endif |
100 #endif |
102 |
101 |
103 guint8 * gst_type_find_peek (GstTypeFind * find, |
102 guint8 * gst_type_find_peek (GstTypeFind * find, |
104 gint64 offset, |
103 gint64 offset, |
105 guint size); |
104 guint size); |
106 #ifdef __SYMBIAN32__ |
105 #ifdef __SYMBIAN32__ |
107 IMPORT_C |
106 IMPORT_C |
108 #endif |
107 #endif |
109 |
108 |
110 |
109 void gst_type_find_suggest (GstTypeFind * find, |
111 void gst_type_find_suggest (GstTypeFind * find, |
110 guint probability, |
112 guint probability, |
111 const GstCaps * caps); |
113 const GstCaps * caps); |
|
114 #ifdef __SYMBIAN32__ |
112 #ifdef __SYMBIAN32__ |
115 IMPORT_C |
113 IMPORT_C |
116 #endif |
114 #endif |
117 |
115 |
118 |
116 guint64 gst_type_find_get_length (GstTypeFind * find); |
119 void gst_type_find_suggest_simple (GstTypeFind * find, |
|
120 guint probability, |
|
121 const char * media_type, |
|
122 const char * fieldname, ...); |
|
123 #ifdef __SYMBIAN32__ |
|
124 IMPORT_C |
|
125 #endif |
|
126 |
|
127 |
|
128 guint64 gst_type_find_get_length (GstTypeFind * find); |
|
129 |
117 |
130 /* registration interface */ |
118 /* registration interface */ |
131 #ifdef __SYMBIAN32__ |
119 #ifdef __SYMBIAN32__ |
132 IMPORT_C |
120 IMPORT_C |
133 #endif |
121 #endif |
134 |
122 |
135 gboolean gst_type_find_register (GstPlugin * plugin, |
123 gboolean gst_type_find_register (GstPlugin * plugin, |
136 const gchar * name, |
124 const gchar * name, |
137 guint rank, |
125 guint rank, |
138 GstTypeFindFunction func, |
126 GstTypeFindFunction func, |
139 gchar ** extensions, |
127 gchar ** extensions, |
140 const GstCaps * possible_caps, |
128 const GstCaps * possible_caps, |
141 gpointer data, |
129 gpointer data, |
142 GDestroyNotify data_notify); |
130 GDestroyNotify data_notify); |
143 |
131 |
144 G_END_DECLS |
132 G_END_DECLS |
145 |
133 |
146 #endif /* __GST_TYPE_FIND_H__ */ |
134 #endif /* __GST_TYPE_FIND_H__ */ |