1 /* gstreamer-audio-0.10.vapi generated by vapigen, do not modify. */
3 [CCode (cprefix = "Gst", lower_case_cprefix = "gst_")]
5 [CCode (cheader_filename = "gst/audio/gstaudioclock.h")]
6 public class AudioClock : Gst.SystemClock {
8 public weak Gst.AudioClockGetTimeFunc func;
9 public Gst.ClockTime last_time;
10 public void* user_data;
11 [CCode (type = "GstClock*", has_construct_function = false)]
12 public AudioClock (string name, Gst.AudioClockGetTimeFunc func);
13 public void reset (Gst.ClockTime time);
15 [CCode (cheader_filename = "gst/audio/gstaudiofilter.h")]
16 public class AudioFilter : Gst.BaseTransform {
17 public weak Gst.RingBufferSpec format;
18 [CCode (cname = "gst_audio_filter_class_add_pad_templates")]
19 public class void add_pad_templates (Gst.Caps allowed_caps);
21 public virtual bool setup (Gst.RingBufferSpec format);
23 [CCode (cheader_filename = "gst/audio/gstaudiosink.h")]
24 public class AudioSink : Gst.BaseAudioSink {
25 public weak GLib.Thread thread;
27 public virtual bool close ();
29 public virtual uint delay ();
31 public virtual bool open ();
33 public virtual bool prepare (Gst.RingBufferSpec spec);
35 public virtual void reset ();
37 public virtual bool unprepare ();
39 public virtual uint write (void* data, uint length);
41 [CCode (cheader_filename = "gst/audio/gstaudiosrc.h")]
42 public class AudioSrc : Gst.BaseAudioSrc {
43 public weak GLib.Thread thread;
45 public virtual bool close ();
47 public virtual uint delay ();
49 public virtual bool open ();
51 public virtual bool prepare (Gst.RingBufferSpec spec);
53 public virtual uint read (void* data, uint length);
55 public virtual void reset ();
57 public virtual bool unprepare ();
59 [CCode (cheader_filename = "gst/audio/gstaudiosink.h")]
60 public class BaseAudioSink : Gst.BaseSink {
61 public uint64 next_sample;
62 public weak Gst.Clock provided_clock;
63 public weak Gst.RingBuffer ringbuffer;
64 public virtual unowned Gst.RingBuffer create_ringbuffer ();
65 public bool get_provide_clock ();
66 public Gst.BaseAudioSinkSlaveMethod get_slave_method ();
67 public void set_provide_clock (bool provide);
68 public void set_slave_method (Gst.BaseAudioSinkSlaveMethod method);
70 public int64 buffer_time { get; set; }
72 public int64 latency_time { get; set; }
73 public bool provide_clock { get; set; }
74 public Gst.BaseAudioSinkSlaveMethod slave_method { get; set; }
76 [CCode (cheader_filename = "gst/audio/gstaudiosrc.h")]
77 public class BaseAudioSrc : Gst.PushSrc {
78 public weak Gst.Clock clock;
79 public uint64 next_sample;
80 public weak Gst.RingBuffer ringbuffer;
81 public virtual unowned Gst.RingBuffer create_ringbuffer ();
82 public bool get_provide_clock ();
83 public Gst.BaseAudioSrcSlaveMethod get_slave_method ();
84 public void set_provide_clock (bool provide);
85 public void set_slave_method (Gst.BaseAudioSrcSlaveMethod method);
87 public int64 actual_buffer_time { get; }
89 public int64 actual_latency_time { get; }
91 public int64 buffer_time { get; set; }
93 public int64 latency_time { get; set; }
94 public bool provide_clock { get; set; }
95 public Gst.BaseAudioSrcSlaveMethod slave_method { get; set; }
97 [CCode (cheader_filename = "gst/audio/gstaudiofilter.h")]
98 public class RingBuffer : Gst.Object {
100 public bool acquired;
101 public weak Gst.RingBufferCallback callback;
102 public void* cb_data;
103 public weak GLib.Cond cond;
104 public weak Gst.Buffer data;
105 public uchar empty_seg;
107 public int samples_per_seg;
110 public Gst.RingBufferSegState segstate;
111 public weak Gst.RingBufferSpec spec;
114 public virtual bool acquire (Gst.RingBufferSpec spec);
115 public virtual bool activate (bool active);
116 public void advance (uint advance);
117 public void clear (int segment);
118 public void clear_all ();
119 public virtual bool close_device ();
120 public uint commit (uint64 sample, uchar[] data, uint len);
121 public uint commit_full (uint64 sample, uchar[] data, int in_samples, int out_samples, ref int accum);
122 public bool convert (Gst.Format src_fmt, int64 src_val, Gst.Format dest_fmt, out int64 dest_val);
123 public static void debug_spec_buff (Gst.RingBufferSpec spec);
124 public static void debug_spec_caps (Gst.RingBufferSpec spec);
125 public virtual uint delay ();
126 public bool device_is_open ();
127 public bool is_acquired ();
128 public bool is_active ();
129 public void may_start (bool allowed);
130 public virtual bool open_device ();
131 public static bool parse_caps (Gst.RingBufferSpec spec, Gst.Caps caps);
132 public virtual bool pause ();
133 public bool prepare_read (int segment, uchar readptr, int len);
134 public uint read (uint64 sample, uchar[] data, uint len);
135 public virtual bool release ();
137 public virtual bool resume ();
138 public uint64 samples_done ();
139 public void set_callback (Gst.RingBufferCallback cb);
140 public void set_flushing (bool flushing);
141 public void set_sample (uint64 sample);
142 public virtual bool start ();
143 public virtual bool stop ();
146 [CCode (cheader_filename = "gst/audio/gstaudiofilter.h")]
147 public class RingBufferSpec {
149 public uint64 buffer_time;
150 public int bytes_per_sample;
151 public weak Gst.Caps caps;
154 public Gst.BufferFormat format;
155 public uint64 latency_time;
157 public int seglatency;
161 [CCode (array_length = false)]
162 public weak uchar[] silence_sample;
163 public Gst.BufferFormatType type;
166 [CCode (cprefix = "GST_AUDIO_CHANNEL_POSITION_", cheader_filename = "gst/audio/multichannel.h")]
167 public enum AudioChannelPosition {
177 FRONT_LEFT_OF_CENTER,
178 FRONT_RIGHT_OF_CENTER,
184 [CCode (cprefix = "GST_AUDIO_FIELD_", has_type_id = "0", cheader_filename = "gst/audio/audio.h")]
185 public enum AudioFieldFlag {
193 [CCode (cprefix = "GST_BASE_AUDIO_SINK_SLAVE_", cheader_filename = "gst/audio/gstbaseaudiosink.h")]
194 public enum BaseAudioSinkSlaveMethod {
199 [CCode (cprefix = "GST_BASE_AUDIO_SRC_SLAVE_", cheader_filename = "gst/audio/audio.h")]
200 public enum BaseAudioSrcSlaveMethod {
206 [CCode (cprefix = "GST_", cheader_filename = "gst/audio/gstringbuffer.h")]
207 public enum BufferFormat {
249 [CCode (cprefix = "GST_BUFTYPE_", cheader_filename = "gst/audio/gstringbuffer.h")]
250 public enum BufferFormatType {
263 [CCode (cprefix = "GST_SEGSTATE_", cheader_filename = "gst/audio/gstringbuffer.h")]
264 public enum RingBufferSegState {
270 [CCode (cprefix = "GST_RING_BUFFER_STATE_", cheader_filename = "gst/audio/gstringbuffer.h")]
271 public enum RingBufferState {
276 [CCode (cheader_filename = "gst/audio/gstaudioclock.h")]
277 public delegate Gst.ClockTime AudioClockGetTimeFunc (Gst.Clock clock);
278 [CCode (cheader_filename = "gst/audio/mixerutils.h")]
279 public delegate bool AudioMixerFilterFunc (Gst.Mixer mixer);
280 [CCode (cheader_filename = "gst/audio/gstringbuffer.h")]
281 public delegate void RingBufferCallback (Gst.RingBuffer rbuf, uchar data, uint len);
282 [CCode (cheader_filename = "gst/audio/audio.h")]
283 public const int AUDIO_DEF_RATE;
284 [CCode (cheader_filename = "gst/audio/audio.h")]
285 public const string AUDIO_FLOAT_PAD_TEMPLATE_CAPS;
286 [CCode (cheader_filename = "gst/audio/audio.h")]
287 public const string AUDIO_FLOAT_STANDARD_PAD_TEMPLATE_CAPS;
288 [CCode (cheader_filename = "gst/audio/audio.h")]
289 public const string AUDIO_INT_PAD_TEMPLATE_CAPS;
290 [CCode (cheader_filename = "gst/audio/audio.h")]
291 public const string AUDIO_INT_STANDARD_PAD_TEMPLATE_CAPS;
292 [CCode (cheader_filename = "gst/audio/audio.h")]
293 public static unowned Gst.Buffer audio_buffer_clip (Gst.Buffer buffer, Gst.Segment segment, int rate, int frame_size);
294 [CCode (cheader_filename = "gst/audio/audio.h")]
295 public static bool audio_check_channel_positions (Gst.AudioChannelPosition pos, uint channels);
296 [CCode (cheader_filename = "gst/audio/mixerutils.h")]
297 public static unowned GLib.List audio_default_registry_mixer_filter (Gst.AudioMixerFilterFunc filter_func, bool first);
298 [CCode (cheader_filename = "gst/audio/audio.h")]
299 public static Gst.ClockTime audio_duration_from_pad_buffer (Gst.Pad pad, Gst.Buffer buf);
300 [CCode (cheader_filename = "gst/audio/multichannel.h")]
301 public static Gst.AudioChannelPosition audio_fixate_channel_positions (Gst.Structure str);
302 [CCode (cheader_filename = "gst/audio/audio.h")]
303 public static int audio_frame_byte_size (Gst.Pad pad);
304 [CCode (cheader_filename = "gst/audio/audio.h")]
305 public static long audio_frame_length (Gst.Pad pad, Gst.Buffer buf);
306 [CCode (cheader_filename = "gst/audio/audio.h")]
307 public static Gst.AudioChannelPosition audio_get_channel_positions (Gst.Structure str);
308 [CCode (cheader_filename = "gst/audio/audio.h")]
309 public static bool audio_is_buffer_framed (Gst.Pad pad, Gst.Buffer buf);
310 [CCode (cheader_filename = "gst/audio/multichannel.h")]
311 public static void audio_set_caps_channel_positions_list (Gst.Caps caps, Gst.AudioChannelPosition pos, int num_positions);
312 [CCode (cheader_filename = "gst/audio/audio.h")]
313 public static void audio_set_channel_positions (Gst.Structure str, Gst.AudioChannelPosition pos);
314 [CCode (cheader_filename = "gst/audio/multichannel.h")]
315 public static void audio_set_structure_channel_positions_list (Gst.Structure str, Gst.AudioChannelPosition pos, int num_positions);
316 [CCode (cheader_filename = "gst/audio/audio.h")]
317 public static void audio_structure_set_int (Gst.Structure structure, Gst.AudioFieldFlag flag);