clutter-gstreamer 2.2.3-x86-mingw32 → 2.2.4-x86-mingw32

Sign up to get free protection for your applications and to get access to all the features.
Files changed (74) hide show
  1. checksums.yaml +4 -4
  2. data/Rakefile +4 -3
  3. data/lib/clutter-gst.rb +1 -0
  4. data/vendor/local/bin/libclutter-gst-3.0-0.dll +0 -0
  5. data/vendor/local/include/clutter-gst-3.0/clutter-gst/clutter-gst-aspectratio.h +105 -0
  6. data/vendor/local/include/clutter-gst-3.0/clutter-gst/clutter-gst-camera-device.h +119 -0
  7. data/vendor/local/include/clutter-gst-3.0/clutter-gst/clutter-gst-camera-manager.h +100 -0
  8. data/vendor/local/include/clutter-gst-3.0/clutter-gst/clutter-gst-camera.h +206 -0
  9. data/vendor/local/include/clutter-gst-3.0/clutter-gst/clutter-gst-content.h +107 -0
  10. data/vendor/local/include/clutter-gst-3.0/clutter-gst/clutter-gst-crop.h +104 -0
  11. data/vendor/local/include/{clutter-gst-2.0 → clutter-gst-3.0}/clutter-gst/clutter-gst-enum-types.h +0 -0
  12. data/vendor/local/include/clutter-gst-3.0/clutter-gst/clutter-gst-playback.h +169 -0
  13. data/vendor/local/include/clutter-gst-3.0/clutter-gst/clutter-gst-player.h +157 -0
  14. data/vendor/local/include/clutter-gst-3.0/clutter-gst/clutter-gst-types.h +167 -0
  15. data/vendor/local/include/{clutter-gst-2.0 → clutter-gst-3.0}/clutter-gst/clutter-gst-util.h +1 -1
  16. data/vendor/local/include/{clutter-gst-2.0 → clutter-gst-3.0}/clutter-gst/clutter-gst-version.h +4 -4
  17. data/vendor/local/include/{clutter-gst-2.0 → clutter-gst-3.0}/clutter-gst/clutter-gst-video-sink.h +47 -34
  18. data/vendor/local/include/{clutter-gst-2.0 → clutter-gst-3.0}/clutter-gst/clutter-gst.h +13 -7
  19. data/vendor/local/lib/girepository-1.0/ClutterGst-3.0.typelib +0 -0
  20. data/vendor/local/lib/gstreamer-1.0/libgstclutter-3.0.dll +0 -0
  21. data/vendor/local/lib/gstreamer-1.0/libgstclutter-3.0.dll.a +0 -0
  22. data/vendor/local/lib/gstreamer-1.0/libgstclutter-3.0.la +41 -0
  23. data/vendor/local/lib/libclutter-gst-3.0.dll.a +0 -0
  24. data/vendor/local/lib/libclutter-gst-3.0.la +41 -0
  25. data/vendor/local/lib/pkgconfig/clutter-gst-3.0.pc +12 -0
  26. data/vendor/local/share/gir-1.0/ClutterGst-3.0.gir +3308 -0
  27. data/vendor/local/share/gtk-doc/html/clutter-gst-3.0/ClutterGstAspectratio.html +171 -0
  28. data/vendor/local/share/gtk-doc/html/clutter-gst-3.0/ClutterGstCamera.html +1528 -0
  29. data/vendor/local/share/gtk-doc/html/clutter-gst-3.0/ClutterGstCameraDevice.html +418 -0
  30. data/vendor/local/share/gtk-doc/html/clutter-gst-3.0/ClutterGstContent.html +551 -0
  31. data/vendor/local/share/gtk-doc/html/clutter-gst-3.0/ClutterGstCrop.html +198 -0
  32. data/vendor/local/share/gtk-doc/html/clutter-gst-3.0/ClutterGstPlayback.html +1559 -0
  33. data/vendor/local/share/gtk-doc/html/clutter-gst-3.0/ClutterGstPlayer.html +805 -0
  34. data/vendor/local/share/gtk-doc/html/{clutter-gst → clutter-gst-3.0}/ch01.html +10 -10
  35. data/vendor/local/share/gtk-doc/html/clutter-gst-3.0/ch02.html +42 -0
  36. data/vendor/local/share/gtk-doc/html/clutter-gst-3.0/ch03.html +45 -0
  37. data/vendor/local/share/gtk-doc/html/clutter-gst-3.0/ch04.html +35 -0
  38. data/vendor/local/share/gtk-doc/html/clutter-gst-3.0/ch05.html +39 -0
  39. data/vendor/local/share/gtk-doc/html/clutter-gst-3.0/clutter-gst-3.0.devhelp2 +197 -0
  40. data/vendor/local/share/gtk-doc/html/clutter-gst-3.0/clutter-gst-Utilities.html +316 -0
  41. data/vendor/local/share/gtk-doc/html/clutter-gst-3.0/clutter-gst-Versioning-Macros.html +176 -0
  42. data/vendor/local/share/gtk-doc/html/clutter-gst-3.0/clutter-gst-Video-Sink.html +560 -0
  43. data/vendor/local/share/gtk-doc/html/{clutter-gst → clutter-gst-3.0}/home.png +0 -0
  44. data/vendor/local/share/gtk-doc/html/{clutter-gst → clutter-gst-3.0}/index.html +33 -10
  45. data/vendor/local/share/gtk-doc/html/clutter-gst-3.0/index.sgml +273 -0
  46. data/vendor/local/share/gtk-doc/html/{clutter-gst → clutter-gst-3.0}/left-insensitive.png +0 -0
  47. data/vendor/local/share/gtk-doc/html/{clutter-gst → clutter-gst-3.0}/left.png +0 -0
  48. data/vendor/local/share/gtk-doc/html/{clutter-gst → clutter-gst-3.0}/license.html +7 -7
  49. data/vendor/local/share/gtk-doc/html/{clutter-gst → clutter-gst-3.0}/right-insensitive.png +0 -0
  50. data/vendor/local/share/gtk-doc/html/{clutter-gst → clutter-gst-3.0}/right.png +0 -0
  51. data/vendor/local/share/gtk-doc/html/{clutter-gst → clutter-gst-3.0}/style.css +260 -105
  52. data/vendor/local/share/gtk-doc/html/{clutter-gst → clutter-gst-3.0}/up-insensitive.png +0 -0
  53. data/vendor/local/share/gtk-doc/html/{clutter-gst → clutter-gst-3.0}/up.png +0 -0
  54. metadata +70 -42
  55. data/vendor/local/bin/libclutter-gst-2.0-0.dll +0 -0
  56. data/vendor/local/include/clutter-gst-2.0/clutter-gst/clutter-gst-player.h +0 -186
  57. data/vendor/local/include/clutter-gst-2.0/clutter-gst/clutter-gst-types.h +0 -65
  58. data/vendor/local/include/clutter-gst-2.0/clutter-gst/clutter-gst-video-texture.h +0 -132
  59. data/vendor/local/lib/girepository-1.0/ClutterGst-2.0.typelib +0 -0
  60. data/vendor/local/lib/gstreamer-1.0/libgstclutter.dll +0 -0
  61. data/vendor/local/lib/gstreamer-1.0/libgstclutter.dll.a +0 -0
  62. data/vendor/local/lib/gstreamer-1.0/libgstclutter.la +0 -41
  63. data/vendor/local/lib/libclutter-gst-2.0.dll.a +0 -0
  64. data/vendor/local/lib/libclutter-gst-2.0.la +0 -41
  65. data/vendor/local/lib/pkgconfig/clutter-gst-2.0.pc +0 -12
  66. data/vendor/local/share/gir-1.0/ClutterGst-2.0.gir +0 -1795
  67. data/vendor/local/share/gtk-doc/html/clutter-gst/ClutterGstPlayer.html +0 -1003
  68. data/vendor/local/share/gtk-doc/html/clutter-gst/ClutterGstVideoSink.html +0 -177
  69. data/vendor/local/share/gtk-doc/html/clutter-gst/ClutterGstVideoTexture.html +0 -624
  70. data/vendor/local/share/gtk-doc/html/clutter-gst/ch02.html +0 -48
  71. data/vendor/local/share/gtk-doc/html/clutter-gst/clutter-gst-Utilities.html +0 -284
  72. data/vendor/local/share/gtk-doc/html/clutter-gst/clutter-gst-Versioning-Macros.html +0 -144
  73. data/vendor/local/share/gtk-doc/html/clutter-gst/clutter-gst.devhelp2 +0 -79
  74. data/vendor/local/share/gtk-doc/html/clutter-gst/index.sgml +0 -97
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 180f0307a9cfedc30d7d451d1b15d8ee10e46621
4
- data.tar.gz: 19dabbbb59010e1749fd228e458d6ef010b26562
3
+ metadata.gz: 2a7ecae0b383ff74102532c5cda32ef760f32680
4
+ data.tar.gz: 0166300571840840dffe8ea6585ec842be01b994
5
5
  SHA512:
6
- metadata.gz: 38161f4c61995e2951f91dc2535776def6518833d309fddcee1cc9cca4848f9d058c0f8e2fb0ee080e135918221245db85fab47fd315760f01ebdb82dc30a6c3
7
- data.tar.gz: 21b1789c1edb1490b426c8eef8e378a604427b7f0fd93426ff6d3e1301e44951fe9c868914a6d1834f236697b24ac137331bc6c986387ad909bd0fdd65e05800
6
+ metadata.gz: c0151e5b586043badae660682b259bc99178676e7efdf1be4e6c81db77e7e738959759dc3bf47cb0406bdcdce34ea40c5680dfa322e27146fa95c9d8e98f0c9c
7
+ data.tar.gz: 81a961f834449214511449f938904dec77390b139a9dbbe2dd60e531f0b5d88a7481b0307fee46a53276dd1a450af61bdf19dac4fd112552f5d977a43c030ba4
data/Rakefile CHANGED
@@ -22,7 +22,7 @@ require "gnome2/rake/package-task"
22
22
  package_task = GNOME2::Rake::PackageTask.new do |package|
23
23
  package.summary = "Ruby/ClutterGStreamer is a Ruby binding of Clutter-GStreamer."
24
24
  package.description = "Ruby/ClutterGStreamer is a Ruby binding of Clutter-GStreamer."
25
- package.dependency.gem.runtime = ["clutter", "gstreamer"]
25
+ package.dependency.gem.runtime = ["gdk_pixbuf2", "clutter", "gstreamer"]
26
26
  package.dependency.gem.development = ["test-unit-notify"]
27
27
  package.windows.packages = []
28
28
  package.windows.dependencies = []
@@ -38,6 +38,7 @@ package_task = GNOME2::Rake::PackageTask.new do |package|
38
38
  package.windows.gobject_introspection_dependencies = [
39
39
  "atk",
40
40
  "pango",
41
+ "gdk_pixbuf2",
41
42
  "clutter",
42
43
  "gstreamer",
43
44
  ]
@@ -46,13 +47,13 @@ package_task = GNOME2::Rake::PackageTask.new do |package|
46
47
  :name => "clutter-gst",
47
48
  :download_site => :gnome,
48
49
  :label => "Clutter-GStreamer",
49
- :version => "2.0.12",
50
+ :version => "3.0.0",
50
51
  :compression_method => "xz",
51
52
  :windows => {
52
53
  :configure_args => [
53
54
  "--enable-introspection",
54
55
  ],
55
- :built_file => "bin/libclutter-gst-2.0-0.dll",
56
+ :built_file => "bin/libclutter-gst-3.0-0.dll",
56
57
  },
57
58
  }
58
59
  ]
data/lib/clutter-gst.rb CHANGED
@@ -14,6 +14,7 @@
14
14
  # License along with this library; if not, write to the Free Software
15
15
  # Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
16
16
 
17
+ require "gdk_pixbuf2"
17
18
  require "clutter"
18
19
  require "gst"
19
20
 
@@ -0,0 +1,105 @@
1
+ /*
2
+ * Clutter-GStreamer.
3
+ *
4
+ * GStreamer integration library for Clutter.
5
+ *
6
+ * clutter-gst-aspectratio.c - An object implementing the
7
+ * ClutterContent interface to render a video with respect to its
8
+ * aspect ratio.
9
+ *
10
+ * Authored by Lionel Landwerlin <lionel.g.landwerlin@linux.intel.com>
11
+ *
12
+ * Copyright (C) 2013 Intel Corporation
13
+ *
14
+ * This library is free software; you can redistribute it and/or
15
+ * modify it under the terms of the GNU Lesser General Public
16
+ * License as published by the Free Software Foundation; either
17
+ * version 2 of the License, or (at your option) any later version.
18
+ *
19
+ * This library is distributed in the hope that it will be useful,
20
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
21
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
22
+ * Lesser General Public License for more details.
23
+ *
24
+ * You should have received a copy of the GNU Lesser General Public
25
+ * License along with this library; if not, write to the
26
+ * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
27
+ * Boston, MA 02111-1307, USA.
28
+ */
29
+
30
+ #if !defined(__CLUTTER_GST_H_INSIDE__) && !defined(CLUTTER_GST_COMPILATION)
31
+ #error "Only <clutter-gst/clutter-gst.h> can be include directly."
32
+ #endif
33
+
34
+ #ifndef __CLUTTER_GST_ASPECTRATIO_H__
35
+ #define __CLUTTER_GST_ASPECTRATIO_H__
36
+
37
+ #include <glib-object.h>
38
+
39
+ #include <clutter-gst/clutter-gst-content.h>
40
+
41
+ G_BEGIN_DECLS
42
+
43
+ #define CLUTTER_GST_TYPE_ASPECTRATIO clutter_gst_aspectratio_get_type()
44
+
45
+ #define CLUTTER_GST_ASPECTRATIO(obj) \
46
+ (G_TYPE_CHECK_INSTANCE_CAST ((obj), \
47
+ CLUTTER_GST_TYPE_ASPECTRATIO, ClutterGstAspectratio))
48
+
49
+ #define CLUTTER_GST_ASPECTRATIO_CLASS(klass) \
50
+ (G_TYPE_CHECK_CLASS_CAST ((klass), \
51
+ CLUTTER_GST_TYPE_ASPECTRATIO, ClutterGstAspectratioClass))
52
+
53
+ #define CLUTTER_GST_IS_ASPECTRATIO(obj) \
54
+ (G_TYPE_CHECK_INSTANCE_TYPE ((obj), \
55
+ CLUTTER_GST_TYPE_ASPECTRATIO))
56
+
57
+ #define CLUTTER_GST_IS_ASPECTRATIO_CLASS(klass) \
58
+ (G_TYPE_CHECK_CLASS_TYPE ((klass), \
59
+ CLUTTER_GST_TYPE_ASPECTRATIO))
60
+
61
+ #define CLUTTER_GST_ASPECTRATIO_GET_CLASS(obj) \
62
+ (G_TYPE_INSTANCE_GET_CLASS ((obj), \
63
+ CLUTTER_GST_TYPE_ASPECTRATIO, ClutterGstAspectratioClass))
64
+
65
+ typedef struct _ClutterGstAspectratio ClutterGstAspectratio;
66
+ typedef struct _ClutterGstAspectratioClass ClutterGstAspectratioClass;
67
+ typedef struct _ClutterGstAspectratioPrivate ClutterGstAspectratioPrivate;
68
+
69
+ /**
70
+ * ClutterGstAspectratio:
71
+ *
72
+ * Implementation of #ClutterGstContent that displays video streams
73
+ * with respects to their aspect ratio.
74
+ *
75
+ * The #ClutterGstAspectratio structure contains only private data and
76
+ * should not be accessed directly.
77
+ */
78
+ struct _ClutterGstAspectratio
79
+ {
80
+ /*< private >*/
81
+ ClutterGstContent parent;
82
+
83
+ ClutterGstAspectratioPrivate *priv;
84
+ };
85
+
86
+ /**
87
+ * ClutterGstAspectratioClass:
88
+ *
89
+ * Base class for #ClutterGstAspectratio.
90
+ */
91
+ struct _ClutterGstAspectratioClass
92
+ {
93
+ /*< private >*/
94
+ ClutterGstContentClass parent_class;
95
+
96
+ void *_padding_dummy[8];
97
+ };
98
+
99
+ GType clutter_gst_aspectratio_get_type (void) G_GNUC_CONST;
100
+
101
+ ClutterContent *clutter_gst_aspectratio_new (void);
102
+
103
+ G_END_DECLS
104
+
105
+ #endif /* __CLUTTER_GST_ASPECTRATIO_H__ */
@@ -0,0 +1,119 @@
1
+ /*
2
+ * Clutter-GStreamer.
3
+ *
4
+ * GStreamer integration library for Clutter.
5
+ *
6
+ * clutter-gst-camera-device.h - GObject representing a camera device using GStreamer.
7
+ *
8
+ * Authored By Andre Moreira Magalhaes <andre.magalhaes@collabora.co.uk>
9
+ *
10
+ * Copyright (C) 2012 Collabora Ltd. <http://www.collabora.co.uk/>
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
+ #if !defined(__CLUTTER_GST_H_INSIDE__) && !defined(CLUTTER_GST_COMPILATION)
29
+ #error "Only <clutter-gst/clutter-gst.h> can be included directly."
30
+ #endif
31
+
32
+ #ifndef __CLUTTER_GST_CAMERA_DEVICE_H__
33
+ #define __CLUTTER_GST_CAMERA_DEVICE_H__
34
+
35
+ #include <glib-object.h>
36
+ #include <gst/gstelement.h>
37
+
38
+ G_BEGIN_DECLS
39
+
40
+ #define CLUTTER_GST_TYPE_CAMERA_DEVICE clutter_gst_camera_device_get_type()
41
+
42
+ #define CLUTTER_GST_CAMERA_DEVICE(obj) \
43
+ (G_TYPE_CHECK_INSTANCE_CAST ((obj), \
44
+ CLUTTER_GST_TYPE_CAMERA_DEVICE, ClutterGstCameraDevice))
45
+
46
+ #define CLUTTER_GST_CAMERA_DEVICE_CLASS(klass) \
47
+ (G_TYPE_CHECK_CLASS_CAST ((klass), \
48
+ CLUTTER_GST_TYPE_CAMERA_DEVICE, ClutterGstCameraDeviceClass))
49
+
50
+ #define CLUTTER_GST_IS_CAMERA_DEVICE(obj) \
51
+ (G_TYPE_CHECK_INSTANCE_TYPE ((obj), \
52
+ CLUTTER_GST_TYPE_CAMERA_DEVICE))
53
+
54
+ #define CLUTTER_GST_IS_CAMERA_DEVICE_CLASS(klass) \
55
+ (G_TYPE_CHECK_CLASS_TYPE ((klass), \
56
+ CLUTTER_GST_TYPE_CAMERA_DEVICE))
57
+
58
+ #define CLUTTER_GST_CAMERA_DEVICE_GET_CLASS(obj) \
59
+ (G_TYPE_INSTANCE_GET_CLASS ((obj), \
60
+ CLUTTER_GST_TYPE_CAMERA_DEVICE, ClutterGstCameraDeviceClass))
61
+
62
+ typedef struct _ClutterGstCameraDevice ClutterGstCameraDevice;
63
+ typedef struct _ClutterGstCameraDeviceClass ClutterGstCameraDeviceClass;
64
+ typedef struct _ClutterGstCameraDevicePrivate ClutterGstCameraDevicePrivate;
65
+
66
+ /**
67
+ * ClutterGstCameraDevice:
68
+ *
69
+ * GObject representing a camera device using GStreamer.
70
+ *
71
+ * The #ClutterGstCameraDevice structure contains only private data and
72
+ * should not be accessed directly.
73
+ */
74
+ struct _ClutterGstCameraDevice
75
+ {
76
+ /*< private >*/
77
+ GObject parent;
78
+ ClutterGstCameraDevicePrivate *priv;
79
+ };
80
+
81
+ /**
82
+ * ClutterGstCameraDeviceClass:
83
+ *
84
+ * Base class for #ClutterGstCameraDevice.
85
+ */
86
+ struct _ClutterGstCameraDeviceClass
87
+ {
88
+ /*< private >*/
89
+ GObjectClass parent_class;
90
+
91
+ void (* capture_resolution_changed) (ClutterGstCameraDevice *device,
92
+ gint width,
93
+ gint height);
94
+
95
+ /* Future padding */
96
+ void (* _clutter_reserved1) (void);
97
+ void (* _clutter_reserved2) (void);
98
+ void (* _clutter_reserved3) (void);
99
+ void (* _clutter_reserved4) (void);
100
+ void (* _clutter_reserved5) (void);
101
+ void (* _clutter_reserved6) (void);
102
+ };
103
+
104
+ GType clutter_gst_camera_device_get_type (void) G_GNUC_CONST;
105
+
106
+ const gchar * clutter_gst_camera_device_get_node (ClutterGstCameraDevice *device);
107
+ const gchar * clutter_gst_camera_device_get_name (ClutterGstCameraDevice *device);
108
+
109
+ const GPtrArray * clutter_gst_camera_device_get_supported_resolutions (ClutterGstCameraDevice *device);
110
+ void clutter_gst_camera_device_get_capture_resolution (ClutterGstCameraDevice *device,
111
+ gint *width,
112
+ gint *height);
113
+ void clutter_gst_camera_device_set_capture_resolution (ClutterGstCameraDevice *device,
114
+ gint width,
115
+ gint height);
116
+
117
+ G_END_DECLS
118
+
119
+ #endif /* __CLUTTER_GST_CAMERA_DEVICE_H__ */
@@ -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__ */