clutter-gstreamer 2.2.4-x64-mingw32

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (66) hide show
  1. checksums.yaml +7 -0
  2. data/Rakefile +70 -0
  3. data/lib/clutter-gst.rb +79 -0
  4. data/lib/clutter-gstreamer.rb +17 -0
  5. data/sample/media-actions-pause.png +0 -0
  6. data/sample/media-actions-start.png +0 -0
  7. data/sample/vid-panel.png +0 -0
  8. data/sample/video-player.rb +376 -0
  9. data/sample/video-sink-navigation.rb +98 -0
  10. data/sample/video-sink.rb +87 -0
  11. data/test/clutter-gstreamer-test-utils.rb +41 -0
  12. data/test/run-test.rb +63 -0
  13. data/test/test-clutter-gst.rb +26 -0
  14. data/vendor/local/bin/libclutter-gst-3.0-0.dll +0 -0
  15. data/vendor/local/include/clutter-gst-3.0/clutter-gst/clutter-gst-aspectratio.h +105 -0
  16. data/vendor/local/include/clutter-gst-3.0/clutter-gst/clutter-gst-camera-device.h +119 -0
  17. data/vendor/local/include/clutter-gst-3.0/clutter-gst/clutter-gst-camera-manager.h +100 -0
  18. data/vendor/local/include/clutter-gst-3.0/clutter-gst/clutter-gst-camera.h +206 -0
  19. data/vendor/local/include/clutter-gst-3.0/clutter-gst/clutter-gst-content.h +107 -0
  20. data/vendor/local/include/clutter-gst-3.0/clutter-gst/clutter-gst-crop.h +104 -0
  21. data/vendor/local/include/clutter-gst-3.0/clutter-gst/clutter-gst-enum-types.h +23 -0
  22. data/vendor/local/include/clutter-gst-3.0/clutter-gst/clutter-gst-playback.h +169 -0
  23. data/vendor/local/include/clutter-gst-3.0/clutter-gst/clutter-gst-player.h +157 -0
  24. data/vendor/local/include/clutter-gst-3.0/clutter-gst/clutter-gst-types.h +167 -0
  25. data/vendor/local/include/clutter-gst-3.0/clutter-gst/clutter-gst-util.h +53 -0
  26. data/vendor/local/include/clutter-gst-3.0/clutter-gst/clutter-gst-version.h +98 -0
  27. data/vendor/local/include/clutter-gst-3.0/clutter-gst/clutter-gst-video-sink.h +124 -0
  28. data/vendor/local/include/clutter-gst-3.0/clutter-gst/clutter-gst.h +47 -0
  29. data/vendor/local/lib/girepository-1.0/ClutterGst-3.0.typelib +0 -0
  30. data/vendor/local/lib/gstreamer-1.0/libgstclutter-3.0.dll +0 -0
  31. data/vendor/local/lib/gstreamer-1.0/libgstclutter-3.0.dll.a +0 -0
  32. data/vendor/local/lib/gstreamer-1.0/libgstclutter-3.0.la +41 -0
  33. data/vendor/local/lib/libclutter-gst-3.0.dll.a +0 -0
  34. data/vendor/local/lib/libclutter-gst-3.0.la +41 -0
  35. data/vendor/local/lib/pkgconfig/clutter-gst-3.0.pc +12 -0
  36. data/vendor/local/share/gir-1.0/ClutterGst-3.0.gir +3308 -0
  37. data/vendor/local/share/gtk-doc/html/clutter-gst-3.0/ClutterGstAspectratio.html +171 -0
  38. data/vendor/local/share/gtk-doc/html/clutter-gst-3.0/ClutterGstCamera.html +1528 -0
  39. data/vendor/local/share/gtk-doc/html/clutter-gst-3.0/ClutterGstCameraDevice.html +418 -0
  40. data/vendor/local/share/gtk-doc/html/clutter-gst-3.0/ClutterGstContent.html +551 -0
  41. data/vendor/local/share/gtk-doc/html/clutter-gst-3.0/ClutterGstCrop.html +198 -0
  42. data/vendor/local/share/gtk-doc/html/clutter-gst-3.0/ClutterGstPlayback.html +1559 -0
  43. data/vendor/local/share/gtk-doc/html/clutter-gst-3.0/ClutterGstPlayer.html +805 -0
  44. data/vendor/local/share/gtk-doc/html/clutter-gst-3.0/ch01.html +33 -0
  45. data/vendor/local/share/gtk-doc/html/clutter-gst-3.0/ch02.html +42 -0
  46. data/vendor/local/share/gtk-doc/html/clutter-gst-3.0/ch03.html +45 -0
  47. data/vendor/local/share/gtk-doc/html/clutter-gst-3.0/ch04.html +35 -0
  48. data/vendor/local/share/gtk-doc/html/clutter-gst-3.0/ch05.html +39 -0
  49. data/vendor/local/share/gtk-doc/html/clutter-gst-3.0/clutter-gst-3.0.devhelp2 +197 -0
  50. data/vendor/local/share/gtk-doc/html/clutter-gst-3.0/clutter-gst-Utilities.html +316 -0
  51. data/vendor/local/share/gtk-doc/html/clutter-gst-3.0/clutter-gst-Versioning-Macros.html +176 -0
  52. data/vendor/local/share/gtk-doc/html/clutter-gst-3.0/clutter-gst-Video-Sink.html +560 -0
  53. data/vendor/local/share/gtk-doc/html/clutter-gst-3.0/home.png +0 -0
  54. data/vendor/local/share/gtk-doc/html/clutter-gst-3.0/index.html +98 -0
  55. data/vendor/local/share/gtk-doc/html/clutter-gst-3.0/index.sgml +273 -0
  56. data/vendor/local/share/gtk-doc/html/clutter-gst-3.0/left-insensitive.png +0 -0
  57. data/vendor/local/share/gtk-doc/html/clutter-gst-3.0/left.png +0 -0
  58. data/vendor/local/share/gtk-doc/html/clutter-gst-3.0/license.html +59 -0
  59. data/vendor/local/share/gtk-doc/html/clutter-gst-3.0/right-insensitive.png +0 -0
  60. data/vendor/local/share/gtk-doc/html/clutter-gst-3.0/right.png +0 -0
  61. data/vendor/local/share/gtk-doc/html/clutter-gst-3.0/style.css +476 -0
  62. data/vendor/local/share/gtk-doc/html/clutter-gst-3.0/up-insensitive.png +0 -0
  63. data/vendor/local/share/gtk-doc/html/clutter-gst-3.0/up.png +0 -0
  64. data/vendor/local/share/license/clutter-gst/AUTHORS +7 -0
  65. data/vendor/local/share/license/clutter-gst/COPYING +502 -0
  66. metadata +163 -0
@@ -0,0 +1,100 @@
1
+ /*
2
+ * Clutter-GStreamer.
3
+ *
4
+ * GStreamer integration library for Clutter.
5
+ *
6
+ * clutter-gst-camera-manager.h - a component to list available cameras
7
+ *
8
+ * Authored By Lionel Landwerlin <lionel.g.landwerlin@linux.intel.com>
9
+ *
10
+ * Copyright (C) 2013 Intel Corporation
11
+ *
12
+ * This library is free software; you can redistribute it and/or
13
+ * modify it under the terms of the GNU Lesser General Public
14
+ * License as published by the Free Software Foundation; either
15
+ * version 2 of the License, or (at your option) any later version.
16
+ *
17
+ * This library is distributed in the hope that it will be useful,
18
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
19
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
20
+ * Lesser General Public License for more details.
21
+ *
22
+ * You should have received a copy of the GNU Lesser General Public
23
+ * License along with this library; if not, write to the
24
+ * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
25
+ * Boston, MA 02111-1307, USA.
26
+ */
27
+
28
+ #ifndef __CLUTTER_GST_CAMERA_MANAGER_H__
29
+ #define __CLUTTER_GST_CAMERA_MANAGER_H__
30
+
31
+ #if !defined(__CLUTTER_GST_H_INSIDE__) && !defined(CLUTTER_GST_COMPILATION)
32
+ #error "Only <clutter-gst/clutter-gst.h> can be included directly."
33
+ #endif
34
+
35
+ #include <glib-object.h>
36
+
37
+ G_BEGIN_DECLS
38
+
39
+ #define CLUTTER_GST_TYPE_CAMERA_MANAGER clutter_gst_camera_manager_get_type()
40
+
41
+ #define CLUTTER_GST_CAMERA_MANAGER(obj) \
42
+ (G_TYPE_CHECK_INSTANCE_CAST ((obj), \
43
+ CLUTTER_GST_TYPE_CAMERA_MANAGER, ClutterGstCameraManager))
44
+
45
+ #define CLUTTER_GST_CAMERA_MANAGER_CLASS(klass) \
46
+ (G_TYPE_CHECK_CLASS_CAST ((klass), \
47
+ CLUTTER_GST_TYPE_CAMERA_MANAGER, ClutterGstCameraManagerClass))
48
+
49
+ #define CLUTTER_GST_IS_CAMERA_MANAGER(obj) \
50
+ (G_TYPE_CHECK_INSTANCE_TYPE ((obj), \
51
+ CLUTTER_GST_TYPE_CAMERA_MANAGER))
52
+
53
+ #define CLUTTER_GST_IS_CAMERA_MANAGER_CLASS(klass) \
54
+ (G_TYPE_CHECK_CLASS_TYPE ((klass), \
55
+ CLUTTER_GST_TYPE_CAMERA_MANAGER))
56
+
57
+ #define CLUTTER_GST_CAMERA_MANAGER_GET_CLASS(obj) \
58
+ (G_TYPE_INSTANCE_GET_CLASS ((obj), \
59
+ CLUTTER_GST_TYPE_CAMERA_MANAGER, ClutterGstCameraManagerClass))
60
+
61
+ typedef struct _ClutterGstCameraManager ClutterGstCameraManager;
62
+ typedef struct _ClutterGstCameraManagerClass ClutterGstCameraManagerClass;
63
+ typedef struct _ClutterGstCameraManagerPrivate ClutterGstCameraManagerPrivate;
64
+
65
+ /**
66
+ * ClutterGstCameraManager:
67
+ *
68
+ * An object to list available cameras on the system.
69
+ *
70
+ * The #ClutterGstCameraManager structure contains only private data and
71
+ * should not be accessed directly.
72
+ */
73
+ struct _ClutterGstCameraManager
74
+ {
75
+ /*< private >*/
76
+ GObject parent;
77
+
78
+ ClutterGstCameraManagerPrivate *priv;
79
+ };
80
+
81
+ /**
82
+ * ClutterGstCameraManagerClass:
83
+ *
84
+ * Base class for #ClutterGstCamera.
85
+ */
86
+ struct _ClutterGstCameraManagerClass
87
+ {
88
+ /*< private >*/
89
+ GObjectClass parent_class;
90
+ };
91
+
92
+ GType clutter_gst_camera_manager_get_type (void) G_GNUC_CONST;
93
+
94
+ ClutterGstCameraManager *clutter_gst_camera_manager_get_default (void);
95
+
96
+ const GPtrArray *clutter_gst_camera_manager_get_camera_devices (ClutterGstCameraManager *self);
97
+
98
+ G_END_DECLS
99
+
100
+ #endif /* __CLUTTER_GST_CAMERA_MANAGER_H__ */
@@ -0,0 +1,206 @@
1
+ /*
2
+ * Clutter-GStreamer.
3
+ *
4
+ * GStreamer integration library for Clutter.
5
+ *
6
+ * clutter-gst-camera-actor.h - ClutterActor using GStreamer to display/manipulate a
7
+ * camera stream.
8
+ *
9
+ * Authored By Andre Moreira Magalhaes <andre.magalhaes@collabora.co.uk>
10
+ *
11
+ * Copyright (C) 2012 Collabora Ltd. <http://www.collabora.co.uk/>
12
+ *
13
+ * This library is free software; you can redistribute it and/or
14
+ * modify it under the terms of the GNU Lesser General Public
15
+ * License as published by the Free Software Foundation; either
16
+ * version 2 of the License, or (at your option) any later version.
17
+ *
18
+ * This library is distributed in the hope that it will be useful,
19
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
20
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
21
+ * Lesser General Public License for more details.
22
+ *
23
+ * You should have received a copy of the GNU Lesser General Public
24
+ * License along with this library; if not, write to the
25
+ * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
26
+ * Boston, MA 02111-1307, USA.
27
+ */
28
+
29
+ #if !defined(__CLUTTER_GST_H_INSIDE__) && !defined(CLUTTER_GST_COMPILATION)
30
+ #error "Only <clutter-gst/clutter-gst.h> can be included directly."
31
+ #endif
32
+
33
+ #ifndef __CLUTTER_GST_CAMERA_H__
34
+ #define __CLUTTER_GST_CAMERA_H__
35
+
36
+ #include <clutter/clutter.h>
37
+ #include <gdk-pixbuf/gdk-pixbuf.h>
38
+ #include <glib-object.h>
39
+ #include <gst/gstelement.h>
40
+ #include <gst/pbutils/encoding-profile.h>
41
+
42
+ #include <clutter-gst/clutter-gst-camera-device.h>
43
+ #include <clutter-gst/clutter-gst-types.h>
44
+
45
+ G_BEGIN_DECLS
46
+
47
+ #define CLUTTER_GST_TYPE_CAMERA clutter_gst_camera_get_type()
48
+
49
+ #define CLUTTER_GST_CAMERA(obj) \
50
+ (G_TYPE_CHECK_INSTANCE_CAST ((obj), \
51
+ CLUTTER_GST_TYPE_CAMERA, ClutterGstCamera))
52
+
53
+ #define CLUTTER_GST_CAMERA_CLASS(klass) \
54
+ (G_TYPE_CHECK_CLASS_CAST ((klass), \
55
+ CLUTTER_GST_TYPE_CAMERA, ClutterGstCameraClass))
56
+
57
+ #define CLUTTER_GST_IS_CAMERA(obj) \
58
+ (G_TYPE_CHECK_INSTANCE_TYPE ((obj), \
59
+ CLUTTER_GST_TYPE_CAMERA))
60
+
61
+ #define CLUTTER_GST_IS_CAMERA_CLASS(klass) \
62
+ (G_TYPE_CHECK_CLASS_TYPE ((klass), \
63
+ CLUTTER_GST_TYPE_CAMERA))
64
+
65
+ #define CLUTTER_GST_CAMERA_GET_CLASS(obj) \
66
+ (G_TYPE_INSTANCE_GET_CLASS ((obj), \
67
+ CLUTTER_GST_TYPE_CAMERA, ClutterGstCameraClass))
68
+
69
+ typedef struct _ClutterGstCamera ClutterGstCamera;
70
+ typedef struct _ClutterGstCameraClass ClutterGstCameraClass;
71
+ typedef struct _ClutterGstCameraPrivate ClutterGstCameraPrivate;
72
+
73
+ /**
74
+ * ClutterGstCamera:
75
+ *
76
+ * Implementation of #ClutterGstPlayer that displays camera streams
77
+ * using GStreamer.
78
+ *
79
+ * The #ClutterGstCamera structure contains only private data and
80
+ * should not be accessed directly.
81
+ */
82
+ struct _ClutterGstCamera
83
+ {
84
+ /*< private >*/
85
+ GObject parent;
86
+ ClutterGstCameraPrivate *priv;
87
+ };
88
+
89
+ /**
90
+ * ClutterGstCameraClass:
91
+ *
92
+ * Base class for #ClutterGstCamera.
93
+ */
94
+ struct _ClutterGstCameraClass
95
+ {
96
+ /*< private >*/
97
+ GObjectClass parent_class;
98
+
99
+ void (* ready_for_capture) (ClutterGstCamera *self,
100
+ gboolean ready);
101
+ void (* photo_saved) (ClutterGstCamera *self);
102
+ void (* photo_taken) (ClutterGstCamera *self,
103
+ GdkPixbuf *pixbuf);
104
+ void (* video_saved) (ClutterGstCamera *self);
105
+
106
+ /* Future padding */
107
+ void (* _clutter_reserved1) (void);
108
+ void (* _clutter_reserved2) (void);
109
+ void (* _clutter_reserved3) (void);
110
+ void (* _clutter_reserved4) (void);
111
+ void (* _clutter_reserved5) (void);
112
+ void (* _clutter_reserved6) (void);
113
+ };
114
+
115
+ GType clutter_gst_camera_get_type (void) G_GNUC_CONST;
116
+
117
+ ClutterGstCamera * clutter_gst_camera_new (void);
118
+
119
+ ClutterGstCameraDevice *
120
+ clutter_gst_camera_get_camera_device (ClutterGstCamera *self);
121
+ gboolean clutter_gst_camera_set_camera_device (ClutterGstCamera *self,
122
+ ClutterGstCameraDevice *device);
123
+
124
+ gboolean clutter_gst_camera_supports_gamma_correction
125
+ (ClutterGstCamera *self);
126
+ gboolean clutter_gst_camera_get_gamma_range (ClutterGstCamera *self,
127
+ gdouble *min_value,
128
+ gdouble *max_value,
129
+ gdouble *default_value);
130
+ gboolean clutter_gst_camera_get_gamma (ClutterGstCamera *self,
131
+ gdouble *cur_value);
132
+ gboolean clutter_gst_camera_set_gamma (ClutterGstCamera *self,
133
+ gdouble value);
134
+
135
+ gboolean clutter_gst_camera_supports_color_balance
136
+ (ClutterGstCamera *self);
137
+ gboolean clutter_gst_camera_get_color_balance_property_range
138
+ (ClutterGstCamera *self,
139
+ const gchar *property,
140
+ gdouble *min_value,
141
+ gdouble *max_value,
142
+ gdouble *default_value);
143
+ gboolean clutter_gst_camera_get_color_balance_property
144
+ (ClutterGstCamera *self,
145
+ const gchar *property,
146
+ gdouble *cur_value);
147
+ gboolean clutter_gst_camera_set_color_balance_property
148
+ (ClutterGstCamera *self,
149
+ const gchar *property,
150
+ gdouble value);
151
+ gboolean clutter_gst_camera_get_brightness_range (ClutterGstCamera *self,
152
+ gdouble *min_value,
153
+ gdouble *max_value,
154
+ gdouble *default_value);
155
+ gboolean clutter_gst_camera_get_brightness (ClutterGstCamera *self,
156
+ gdouble *cur_value);
157
+ gboolean clutter_gst_camera_set_brightness (ClutterGstCamera *self,
158
+ gdouble value);
159
+ gboolean clutter_gst_camera_get_contrast_range (ClutterGstCamera *self,
160
+ gdouble *min_value,
161
+ gdouble *max_value,
162
+ gdouble *default_value);
163
+ gboolean clutter_gst_camera_get_contrast (ClutterGstCamera *self,
164
+ gdouble *cur_value);
165
+ gboolean clutter_gst_camera_set_contrast (ClutterGstCamera *self,
166
+ gdouble value);
167
+ gboolean clutter_gst_camera_get_saturation_range (ClutterGstCamera *self,
168
+ gdouble *min_value,
169
+ gdouble *max_value,
170
+ gdouble *default_value);
171
+ gboolean clutter_gst_camera_get_saturation (ClutterGstCamera *self,
172
+ gdouble *cur_value);
173
+ gboolean clutter_gst_camera_set_saturation (ClutterGstCamera *self,
174
+ gdouble value);
175
+ gboolean clutter_gst_camera_get_hue_range (ClutterGstCamera *self,
176
+ gdouble *min_value,
177
+ gdouble *max_value,
178
+ gdouble *default_value);
179
+ gboolean clutter_gst_camera_get_hue (ClutterGstCamera *self,
180
+ gdouble *cur_value);
181
+ gboolean clutter_gst_camera_set_hue (ClutterGstCamera *self,
182
+ gdouble value);
183
+
184
+ GstElement * clutter_gst_camera_get_filter (ClutterGstCamera *self);
185
+ gboolean clutter_gst_camera_set_filter (ClutterGstCamera *self,
186
+ GstElement *filter);
187
+ gboolean clutter_gst_camera_remove_filter (ClutterGstCamera *self);
188
+
189
+ gboolean clutter_gst_camera_is_ready_for_capture (ClutterGstCamera *self);
190
+
191
+ void clutter_gst_camera_set_video_profile (ClutterGstCamera *self,
192
+ GstEncodingProfile *profile);
193
+ gboolean clutter_gst_camera_is_recording_video (ClutterGstCamera *self);
194
+ gboolean clutter_gst_camera_start_video_recording (ClutterGstCamera *self,
195
+ const gchar *filename);
196
+ void clutter_gst_camera_stop_video_recording (ClutterGstCamera *self);
197
+
198
+ void clutter_gst_camera_set_photo_profile (ClutterGstCamera *self,
199
+ GstEncodingProfile *profile);
200
+ gboolean clutter_gst_camera_take_photo (ClutterGstCamera *self,
201
+ const gchar *filename);
202
+ gboolean clutter_gst_camera_take_photo_pixbuf (ClutterGstCamera *self);
203
+
204
+ G_END_DECLS
205
+
206
+ #endif /* __CLUTTER_GST_CAMERA_H__ */
@@ -0,0 +1,107 @@
1
+ /*
2
+ * Clutter-GStreamer.
3
+ *
4
+ * GStreamer integration library for Clutter.
5
+ *
6
+ * Copyright (C) 2013 Bastian Winkler <buz@netbuz.org>
7
+ *
8
+ * This library is free software; you can redistribute it and/or
9
+ * modify it under the terms of the GNU Library General Public
10
+ * License as published by the Free Software Foundation; either
11
+ * version 2 of the License, or (at your option) any later version.
12
+ *
13
+ * This library is distributed in the hope that it will be useful,
14
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
15
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
16
+ * Library General Public License for more details.
17
+ *
18
+ * You should have received a copy of the GNU Library General Public
19
+ * License along with this library; if not, write to the
20
+ * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
21
+ * Boston, MA 02111-1307, USA.
22
+ */
23
+
24
+ #ifndef __CLUTTER_GST_CONTENT_H__
25
+ #define __CLUTTER_GST_CONTENT_H__
26
+
27
+ #include <glib-object.h>
28
+
29
+ #include <clutter/clutter.h>
30
+ #include <clutter-gst/clutter-gst-player.h>
31
+
32
+ G_BEGIN_DECLS
33
+
34
+
35
+ #define CLUTTER_GST_TYPE_CONTENT (clutter_gst_content_get_type())
36
+ #define CLUTTER_GST_CONTENT(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), CLUTTER_GST_TYPE_CONTENT, ClutterGstContent))
37
+ #define CLUTTER_GST_IS_CONTENT(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), CLUTTER_GST_TYPE_CONTENT))
38
+ #define CLUTTER_GST_CONTENT_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), CLUTTER_GST_TYPE_CONTENT, ClutterGstContentClass))
39
+ #define CLUTTER_GST_IS_CONTENT_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), CLUTTER_GST_TYPE_CONTENT))
40
+ #define CLUTTER_GST_CONTENT_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), CLUTTER_GST_TYPE_CONTENT, ClutterGstContentClass))
41
+
42
+
43
+ typedef struct _ClutterGstContent ClutterGstContent;
44
+ typedef struct _ClutterGstContentPrivate ClutterGstContentPrivate;
45
+ typedef struct _ClutterGstContentClass ClutterGstContentClass;
46
+
47
+
48
+ /**
49
+ * ClutterGstContent:
50
+ *
51
+ * The #ClutterGstContent structure contains only private data
52
+ * and should be accessed using the provided API
53
+ *
54
+ * Since: 0.0
55
+ */
56
+ struct _ClutterGstContent
57
+ {
58
+ /*< private >*/
59
+ GObject parent;
60
+
61
+ ClutterGstContentPrivate *priv;
62
+ };
63
+
64
+ /**
65
+ * ClutterGstContentClass:
66
+ *
67
+ * The #ClutterGstContentClass structure contains only private data
68
+ * and should be accessed using the provided API
69
+ *
70
+ * Since: 0.0
71
+ */
72
+ struct _ClutterGstContentClass
73
+ {
74
+ /*< private >*/
75
+ GObjectClass parent_class;
76
+
77
+ gboolean (* has_painting_content) (ClutterGstContent *self);
78
+
79
+ void *_padding_dummy[10];
80
+ };
81
+
82
+ GType clutter_gst_content_get_type (void) G_GNUC_CONST;
83
+
84
+ ClutterContent * clutter_gst_content_new (void);
85
+
86
+ ClutterContent * clutter_gst_content_new_with_sink (ClutterGstVideoSink *sink);
87
+
88
+ ClutterGstFrame * clutter_gst_content_get_frame (ClutterGstContent *self);
89
+
90
+ void clutter_gst_content_set_frame (ClutterGstContent *self,
91
+ ClutterGstFrame *frame);
92
+
93
+ ClutterGstOverlays * clutter_gst_content_get_overlays (ClutterGstContent *self);
94
+
95
+ void clutter_gst_content_set_sink (ClutterGstContent *self,
96
+ ClutterGstVideoSink *sink);
97
+
98
+ ClutterGstVideoSink * clutter_gst_content_get_sink (ClutterGstContent *self);
99
+
100
+ ClutterGstPlayer * clutter_gst_content_get_player (ClutterGstContent *self);
101
+
102
+ void clutter_gst_content_set_player (ClutterGstContent *self,
103
+ ClutterGstPlayer *player);
104
+
105
+ G_END_DECLS
106
+
107
+ #endif /* __CLUTTER_GST_CONTENT_H__ */
@@ -0,0 +1,104 @@
1
+ /*
2
+ * Clutter-GStreamer.
3
+ *
4
+ * GStreamer integration library for Clutter.
5
+ *
6
+ * clutter-gst-aspectratio.c - An actor rendering a video with respect
7
+ * to its aspect ratio.
8
+ *
9
+ * Authored by Lionel Landwerlin <lionel.g.landwerlin@linux.intel.com>
10
+ *
11
+ * Copyright (C) 2013 Intel Corporation
12
+ *
13
+ * This library is free software; you can redistribute it and/or
14
+ * modify it under the terms of the GNU Lesser General Public
15
+ * License as published by the Free Software Foundation; either
16
+ * version 2 of the License, or (at your option) any later version.
17
+ *
18
+ * This library is distributed in the hope that it will be useful,
19
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
20
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
21
+ * Lesser General Public License for more details.
22
+ *
23
+ * You should have received a copy of the GNU Lesser General Public
24
+ * License along with this library; if not, write to the
25
+ * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
26
+ * Boston, MA 02111-1307, USA.
27
+ */
28
+
29
+ #if !defined(__CLUTTER_GST_H_INSIDE__) && !defined(CLUTTER_GST_COMPILATION)
30
+ #error "Only <clutter-gst/clutter-gst.h> can be include directly."
31
+ #endif
32
+
33
+ #ifndef __CLUTTER_GST_CROP_H__
34
+ #define __CLUTTER_GST_CROP_H__
35
+
36
+ #include <glib-object.h>
37
+
38
+ #include <clutter-gst/clutter-gst-content.h>
39
+
40
+ G_BEGIN_DECLS
41
+
42
+ #define CLUTTER_GST_TYPE_CROP clutter_gst_crop_get_type()
43
+
44
+ #define CLUTTER_GST_CROP(obj) \
45
+ (G_TYPE_CHECK_INSTANCE_CAST ((obj), \
46
+ CLUTTER_GST_TYPE_CROP, ClutterGstCrop))
47
+
48
+ #define CLUTTER_GST_CROP_CLASS(klass) \
49
+ (G_TYPE_CHECK_CLASS_CAST ((klass), \
50
+ CLUTTER_GST_TYPE_CROP, ClutterGstCropClass))
51
+
52
+ #define CLUTTER_GST_IS_CROP(obj) \
53
+ (G_TYPE_CHECK_INSTANCE_TYPE ((obj), \
54
+ CLUTTER_GST_TYPE_CROP))
55
+
56
+ #define CLUTTER_GST_IS_CROP_CLASS(klass) \
57
+ (G_TYPE_CHECK_CLASS_TYPE ((klass), \
58
+ CLUTTER_GST_TYPE_CROP))
59
+
60
+ #define CLUTTER_GST_CROP_GET_CLASS(obj) \
61
+ (G_TYPE_INSTANCE_GET_CLASS ((obj), \
62
+ CLUTTER_GST_TYPE_CROP, ClutterGstCropClass))
63
+
64
+ typedef struct _ClutterGstCrop ClutterGstCrop;
65
+ typedef struct _ClutterGstCropClass ClutterGstCropClass;
66
+ typedef struct _ClutterGstCropPrivate ClutterGstCropPrivate;
67
+
68
+ /**
69
+ * ClutterGstCrop:
70
+ *
71
+ * Implementation of #ClutterGstContent that displays a sub region of
72
+ * video streams.
73
+ *
74
+ * The #ClutterGstCrop structure contains only private data and
75
+ * should not be accessed directly.
76
+ */
77
+ struct _ClutterGstCrop
78
+ {
79
+ /*< private >*/
80
+ ClutterGstContent parent;
81
+
82
+ ClutterGstCropPrivate *priv;
83
+ };
84
+
85
+ /**
86
+ * ClutterGstCropClass:
87
+ *
88
+ * Base class for #ClutterGstCrop.
89
+ */
90
+ struct _ClutterGstCropClass
91
+ {
92
+ /*< private >*/
93
+ ClutterGstContentClass parent_class;
94
+
95
+ void *_padding_dummy[8];
96
+ };
97
+
98
+ GType clutter_gst_crop_get_type (void) G_GNUC_CONST;
99
+
100
+ ClutterActor *clutter_gst_crop_new (void);
101
+
102
+ G_END_DECLS
103
+
104
+ #endif /* __CLUTTER_GST_CROP_H__ */