gtk+-4.0: Update to 3.94.0+4e868584
[vala-gnome.git] / vapi / gstreamer-audio-1.0.vapi
blobf31324f0cee0d97c06377497206a33cf3f03c74d
1 /* gstreamer-audio-1.0.vapi generated by vapigen, do not modify. */
3 [CCode (cprefix = "Gst", gir_namespace = "GstAudio", gir_version = "1.0", lower_case_cprefix = "gst_")]
4 namespace Gst {
5         namespace Audio {
6                 [CCode (cheader_filename = "gst/audio/audio.h", type_id = "gst_audio_aggregator_get_type ()")]
7                 [GIR (name = "AudioAggregator")]
8                 public abstract class Aggregator : Gst.Base.Aggregator {
9                         public weak Gst.Caps current_caps;
10                         [CCode (has_construct_function = false)]
11                         protected Aggregator ();
12                         [NoWrapper]
13                         public virtual bool aggregate_one_buffer (Gst.Audio.AggregatorPad pad, Gst.Buffer inbuf, uint in_offset, Gst.Buffer outbuf, uint out_offset, uint num_frames);
14                         [NoWrapper]
15                         public virtual Gst.Buffer create_output_buffer (uint num_frames);
16                         public void set_sink_caps (Gst.Audio.AggregatorPad pad, Gst.Caps caps);
17                         [NoAccessorMethod]
18                         public uint64 alignment_threshold { get; set; }
19                         [NoAccessorMethod]
20                         public uint64 discont_wait { get; set; }
21                         [NoAccessorMethod]
22                         public uint64 output_buffer_duration { get; set; }
23                 }
24                 [CCode (cheader_filename = "gst/audio/audio.h", type_id = "gst_audio_aggregator_convert_pad_get_type ()")]
25                 [GIR (name = "AudioAggregatorConvertPad")]
26                 public class AggregatorConvertPad : Gst.Audio.AggregatorPad {
27                         [CCode (has_construct_function = false)]
28                         protected AggregatorConvertPad ();
29                         [NoAccessorMethod]
30                         public Gst.Structure converter_config { owned get; set; }
31                 }
32                 [CCode (cheader_filename = "gst/audio/audio.h", type_id = "gst_audio_aggregator_pad_get_type ()")]
33                 [GIR (name = "AudioAggregatorPad")]
34                 public class AggregatorPad : Gst.Base.AggregatorPad {
35                         public weak Gst.Audio.Info info;
36                         [CCode (has_construct_function = false)]
37                         protected AggregatorPad ();
38                         [NoWrapper]
39                         public virtual Gst.Buffer convert_buffer (Gst.Audio.Info in_info, Gst.Audio.Info out_info, Gst.Buffer buffer);
40                         [NoWrapper]
41                         public virtual void update_conversion_info ();
42                 }
43                 [CCode (cheader_filename = "gst/audio/audio.h", type_id = "gst_audio_base_sink_get_type ()")]
44                 [GIR (name = "AudioBaseSink")]
45                 public class BaseSink : Gst.Base.Sink {
46                         public bool eos_rendering;
47                         public uint64 next_sample;
48                         public Gst.Clock provided_clock;
49                         public weak Gst.Audio.RingBuffer ringbuffer;
50                         [CCode (has_construct_function = false)]
51                         protected BaseSink ();
52                         public virtual unowned Gst.Audio.RingBuffer create_ringbuffer ();
53                         public Gst.ClockTime get_alignment_threshold ();
54                         public Gst.ClockTime get_discont_wait ();
55                         public int64 get_drift_tolerance ();
56                         public bool get_provide_clock ();
57                         public Gst.Audio.BaseSinkSlaveMethod get_slave_method ();
58                         [NoWrapper]
59                         public virtual Gst.Buffer payload (Gst.Buffer buffer);
60                         [Version (since = "1.6")]
61                         public void report_device_failure ();
62                         public void set_alignment_threshold (Gst.ClockTime alignment_threshold);
63                         [Version (since = "1.6")]
64                         public void set_custom_slaving_callback (owned Gst.Audio.BaseSinkCustomSlavingCallback callback);
65                         public void set_discont_wait (Gst.ClockTime discont_wait);
66                         public void set_drift_tolerance (int64 drift_tolerance);
67                         public void set_provide_clock (bool provide);
68                         public void set_slave_method (Gst.Audio.BaseSinkSlaveMethod method);
69                         public uint64 alignment_threshold { get; set; }
70                         [NoAccessorMethod]
71                         public int64 buffer_time { get; set; }
72                         [NoAccessorMethod]
73                         public bool can_activate_pull { get; set; }
74                         public uint64 discont_wait { get; set; }
75                         public int64 drift_tolerance { get; set; }
76                         [NoAccessorMethod]
77                         public int64 latency_time { get; set; }
78                         public bool provide_clock { get; set; }
79                         public Gst.Audio.BaseSinkSlaveMethod slave_method { get; set; }
80                 }
81                 [CCode (cheader_filename = "gst/audio/audio.h", type_id = "gst_audio_base_src_get_type ()")]
82                 [GIR (name = "AudioBaseSrc")]
83                 public class BaseSrc : Gst.Base.PushSrc {
84                         public weak Gst.Clock clock;
85                         public uint64 next_sample;
86                         public weak Gst.Audio.RingBuffer ringbuffer;
87                         [CCode (has_construct_function = false)]
88                         protected BaseSrc ();
89                         public virtual unowned Gst.Audio.RingBuffer create_ringbuffer ();
90                         public bool get_provide_clock ();
91                         public Gst.Audio.BaseSrcSlaveMethod get_slave_method ();
92                         public void set_provide_clock (bool provide);
93                         public void set_slave_method (Gst.Audio.BaseSrcSlaveMethod method);
94                         [NoAccessorMethod]
95                         public int64 actual_buffer_time { get; }
96                         [NoAccessorMethod]
97                         public int64 actual_latency_time { get; }
98                         [NoAccessorMethod]
99                         public int64 buffer_time { get; set; }
100                         [NoAccessorMethod]
101                         public int64 latency_time { get; set; }
102                         public bool provide_clock { get; set; }
103                         public Gst.Audio.BaseSrcSlaveMethod slave_method { get; set; }
104                 }
105                 [CCode (cheader_filename = "gst/audio/audio.h", type_id = "gst_audio_cd_src_get_type ()")]
106                 [GIR (name = "AudioCdSrc")]
107                 public class CdSrc : Gst.Base.PushSrc, Gst.URIHandler {
108                         public weak Gst.TagList tags;
109                         [CCode (has_construct_function = false)]
110                         protected CdSrc ();
111                         public bool add_track (Gst.Audio.CdSrcTrack track);
112                         [NoWrapper]
113                         public virtual void close ();
114                         [NoWrapper]
115                         public virtual bool open (string device);
116                         [NoWrapper]
117                         public virtual Gst.Buffer read_sector (int sector);
118                         [NoAccessorMethod]
119                         public string device { owned get; set; }
120                         [NoAccessorMethod]
121                         public Gst.Audio.CdSrcMode mode { get; set; }
122                         [NoAccessorMethod]
123                         public uint track { get; set; }
124                 }
125                 [CCode (cheader_filename = "gst/audio/audio.h", has_type_id = false)]
126                 [Compact]
127                 [GIR (name = "AudioChannelMixer")]
128                 public class ChannelMixer {
129                         public void free ();
130                         public bool is_passthrough ();
131                         public void samples (void* @in, void* @out, int samples);
132                 }
133                 [CCode (cheader_filename = "gst/audio/audio.h", type_id = "gst_audio_clock_get_type ()")]
134                 [GIR (name = "AudioClock")]
135                 public class Clock : Gst.SystemClock {
136                         [CCode (has_construct_function = false, type = "GstClock*")]
137                         public Clock (string name, owned Gst.Audio.ClockGetTimeFunc func);
138                         public Gst.ClockTime adjust (Gst.ClockTime time);
139                         public Gst.ClockTime get_time ();
140                         public void invalidate ();
141                         public void reset (Gst.ClockTime time);
142                 }
143                 [CCode (cheader_filename = "gst/audio/audio.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "gst_audio_converter_get_type ()")]
144                 [Compact]
145                 [GIR (name = "AudioConverter")]
146                 public class Converter {
147                         [CCode (has_construct_function = false)]
148                         public Converter (Gst.Audio.ConverterFlags flags, Gst.Audio.Info in_info, Gst.Audio.Info out_info, owned Gst.Structure? config);
149                         [Version (since = "1.14")]
150                         public bool convert (Gst.Audio.ConverterFlags flags, [CCode (array_length_cname = "in_size", array_length_pos = 2.5, array_length_type = "gsize")] uint8[] @in, [CCode (array_length_cname = "out_size", array_length_pos = 3.1, array_length_type = "gsize")] out uint8[] @out);
151                         public void free ();
152                         public unowned Gst.Structure get_config (out int in_rate, out int out_rate);
153                         public size_t get_in_frames (size_t out_frames);
154                         public size_t get_max_latency ();
155                         public size_t get_out_frames (size_t in_frames);
156                         public void reset ();
157                         public bool samples (Gst.Audio.ConverterFlags flags, void* @in, size_t in_frames, void* @out, size_t out_frames);
158                         public bool supports_inplace ();
159                         public bool update_config (int in_rate, int out_rate, owned Gst.Structure? config);
160                 }
161                 [CCode (cheader_filename = "gst/audio/audio.h", type_id = "gst_audio_decoder_get_type ()")]
162                 [GIR (name = "AudioDecoder")]
163                 public abstract class Decoder : Gst.Element {
164                         public weak Gst.Segment input_segment;
165                         public weak Gst.Segment output_segment;
166                         public weak Gst.Pad sinkpad;
167                         public weak Gst.Pad srcpad;
168                         public GLib.RecMutex stream_lock;
169                         [CCode (has_construct_function = false)]
170                         protected Decoder ();
171                         public Gst.Buffer allocate_output_buffer (size_t size);
172                         [NoWrapper]
173                         public virtual bool close ();
174                         [NoWrapper]
175                         public virtual bool decide_allocation (Gst.Query query);
176                         public Gst.FlowReturn finish_frame (Gst.Buffer buf, int frames);
177                         [NoWrapper]
178                         public virtual void flush (bool hard);
179                         public void get_allocator (out Gst.Allocator allocator, out Gst.AllocationParams @params);
180                         public Gst.Audio.Info get_audio_info ();
181                         public int get_delay ();
182                         public bool get_drainable ();
183                         public int get_estimate_rate ();
184                         public void get_latency (out Gst.ClockTime min, out Gst.ClockTime max);
185                         public int get_max_errors ();
186                         public Gst.ClockTime get_min_latency ();
187                         public bool get_needs_format ();
188                         public void get_parse_state (out bool sync, out bool eos);
189                         public bool get_plc ();
190                         public int get_plc_aware ();
191                         public Gst.ClockTime get_tolerance ();
192                         [NoWrapper]
193                         public virtual Gst.Caps getcaps (Gst.Caps filter);
194                         [NoWrapper]
195                         public virtual Gst.FlowReturn handle_frame (Gst.Buffer buffer);
196                         public void merge_tags (Gst.TagList? tags, Gst.TagMergeMode mode);
197                         public virtual bool negotiate ();
198                         [NoWrapper]
199                         public virtual bool open ();
200                         [NoWrapper]
201                         public virtual Gst.FlowReturn parse (Gst.Base.Adapter adapter, int offset, int length);
202                         [NoWrapper]
203                         public virtual Gst.FlowReturn pre_push (Gst.Buffer buffer);
204                         [NoWrapper]
205                         public virtual bool propose_allocation (Gst.Query query);
206                         [Version (since = "1.6")]
207                         public Gst.Caps proxy_getcaps (Gst.Caps? caps, Gst.Caps? filter);
208                         [Version (since = "1.10")]
209                         public void set_allocation_caps (Gst.Caps? allocation_caps);
210                         public void set_drainable (bool enabled);
211                         public void set_estimate_rate (bool enabled);
212                         [NoWrapper]
213                         public virtual bool set_format (Gst.Caps caps);
214                         public void set_latency (Gst.ClockTime min, Gst.ClockTime max);
215                         public void set_max_errors (int num);
216                         public void set_min_latency (Gst.ClockTime num);
217                         public void set_needs_format (bool enabled);
218                         public bool set_output_format (Gst.Audio.Info info);
219                         public void set_plc (bool enabled);
220                         public void set_plc_aware (bool plc);
221                         public void set_tolerance (Gst.ClockTime tolerance);
222                         [Version (since = "1.6")]
223                         public void set_use_default_pad_acceptcaps (bool use);
224                         [NoWrapper]
225                         public virtual bool sink_event (Gst.Event event);
226                         [NoWrapper]
227                         public virtual bool sink_query (Gst.Query query);
228                         [NoWrapper]
229                         public virtual bool src_event (Gst.Event event);
230                         [NoWrapper]
231                         public virtual bool src_query (Gst.Query query);
232                         [NoWrapper]
233                         public virtual bool start ();
234                         [NoWrapper]
235                         public virtual bool stop ();
236                         [NoWrapper]
237                         public virtual bool transform_meta (Gst.Buffer outbuf, Gst.Meta meta, Gst.Buffer inbuf);
238                         public int64 min_latency { get; set; }
239                         public bool plc { get; set; }
240                         public int64 tolerance { get; set; }
241                 }
242                 [CCode (cheader_filename = "gst/audio/audio.h", type_id = "gst_audio_encoder_get_type ()")]
243                 [GIR (name = "AudioEncoder")]
244                 public abstract class Encoder : Gst.Element, Gst.Preset {
245                         public weak Gst.Segment input_segment;
246                         public weak Gst.Segment output_segment;
247                         public weak Gst.Pad sinkpad;
248                         public weak Gst.Pad srcpad;
249                         public GLib.RecMutex stream_lock;
250                         [CCode (has_construct_function = false)]
251                         protected Encoder ();
252                         public Gst.Buffer allocate_output_buffer (size_t size);
253                         [NoWrapper]
254                         public virtual bool close ();
255                         [NoWrapper]
256                         public virtual bool decide_allocation (Gst.Query query);
257                         public Gst.FlowReturn finish_frame (Gst.Buffer buffer, int samples);
258                         [NoWrapper]
259                         public virtual void flush ();
260                         public void get_allocator (out Gst.Allocator allocator, out Gst.AllocationParams @params);
261                         public Gst.Audio.Info get_audio_info ();
262                         public bool get_drainable ();
263                         public int get_frame_max ();
264                         public int get_frame_samples_max ();
265                         public int get_frame_samples_min ();
266                         public bool get_hard_min ();
267                         public bool get_hard_resync ();
268                         public void get_latency (out Gst.ClockTime min, out Gst.ClockTime max);
269                         public int get_lookahead ();
270                         public bool get_mark_granule ();
271                         public bool get_perfect_timestamp ();
272                         public Gst.ClockTime get_tolerance ();
273                         [NoWrapper]
274                         public virtual Gst.Caps getcaps (Gst.Caps filter);
275                         [NoWrapper]
276                         public virtual Gst.FlowReturn handle_frame (Gst.Buffer buffer);
277                         public void merge_tags (Gst.TagList? tags, Gst.TagMergeMode mode);
278                         public virtual bool negotiate ();
279                         [NoWrapper]
280                         public virtual bool open ();
281                         [NoWrapper]
282                         public virtual Gst.FlowReturn pre_push (Gst.Buffer buffer);
283                         [NoWrapper]
284                         public virtual bool propose_allocation (Gst.Query query);
285                         public Gst.Caps proxy_getcaps (Gst.Caps? caps, Gst.Caps? filter);
286                         [Version (since = "1.10")]
287                         public void set_allocation_caps (Gst.Caps? allocation_caps);
288                         public void set_drainable (bool enabled);
289                         [NoWrapper]
290                         public virtual bool set_format (Gst.Audio.Info info);
291                         public void set_frame_max (int num);
292                         public void set_frame_samples_max (int num);
293                         public void set_frame_samples_min (int num);
294                         public void set_hard_min (bool enabled);
295                         public void set_hard_resync (bool enabled);
296                         public void set_headers (owned GLib.List<Gst.Buffer> headers);
297                         public void set_latency (Gst.ClockTime min, Gst.ClockTime max);
298                         public void set_lookahead (int num);
299                         public void set_mark_granule (bool enabled);
300                         public bool set_output_format (Gst.Caps caps);
301                         public void set_perfect_timestamp (bool enabled);
302                         public void set_tolerance (Gst.ClockTime tolerance);
303                         [NoWrapper]
304                         public virtual bool sink_event (Gst.Event event);
305                         [NoWrapper]
306                         public virtual bool sink_query (Gst.Query query);
307                         [NoWrapper]
308                         public virtual bool src_event (Gst.Event event);
309                         [NoWrapper]
310                         public virtual bool src_query (Gst.Query query);
311                         [NoWrapper]
312                         public virtual bool start ();
313                         [NoWrapper]
314                         public virtual bool stop ();
315                         [NoWrapper]
316                         public virtual bool transform_meta (Gst.Buffer outbuf, Gst.Meta meta, Gst.Buffer inbuf);
317                         public bool hard_resync { get; set; }
318                         public bool mark_granule { get; }
319                         public bool perfect_timestamp { get; set; }
320                         public int64 tolerance { get; set; }
321                 }
322                 [CCode (cheader_filename = "gst/audio/audio.h", type_id = "gst_audio_filter_get_type ()")]
323                 [GIR (name = "AudioFilter")]
324                 public abstract class Filter : Gst.Base.Transform {
325                         public weak Gst.Audio.Info info;
326                         [CCode (has_construct_function = false)]
327                         protected Filter ();
328                         [NoWrapper]
329                         public virtual bool setup (Gst.Audio.Info info);
330                 }
331                 [CCode (cheader_filename = "gst/audio/audio.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "gst_audio_info_get_type ()")]
332                 [Compact]
333                 [GIR (name = "AudioInfo")]
334                 public class Info {
335                         public int bpf;
336                         public int channels;
337                         public Gst.Audio.FormatInfo finfo;
338                         public Gst.Audio.Flags flags;
339                         public Gst.Audio.Layout layout;
340                         [CCode (array_length = false)]
341                         public weak Gst.Audio.ChannelPosition position[64];
342                         public int rate;
343                         [CCode (has_construct_function = false)]
344                         public Info ();
345                         public bool convert (Gst.Format src_fmt, int64 src_val, Gst.Format dest_fmt, out int64 dest_val);
346                         public Gst.Audio.Info copy ();
347                         public void free ();
348                         public bool from_caps (Gst.Caps caps);
349                         public void init ();
350                         [Version (since = "1.2")]
351                         public bool is_equal (Gst.Audio.Info other);
352                         public void set_format (Gst.Audio.Format format, int rate, int channels, [CCode (array_length = false)] Gst.Audio.ChannelPosition position[64]);
353                         public Gst.Caps to_caps ();
354                 }
355                 [CCode (cheader_filename = "gst/audio/audio.h", has_type_id = false)]
356                 [Compact]
357                 [GIR (name = "AudioQuantize")]
358                 public class Quantize {
359                         public void free ();
360                         public void reset ();
361                         public void samples (void* @in, void* @out, uint samples);
362                 }
363                 [CCode (cheader_filename = "gst/audio/audio.h", has_type_id = false)]
364                 [Compact]
365                 [GIR (name = "AudioResampler")]
366                 public class Resampler {
367                         [CCode (has_construct_function = false)]
368                         public Resampler (Gst.Audio.ResamplerMethod method, Gst.Audio.ResamplerFlags flags, Gst.Audio.Format format, int channels, int in_rate, int out_rate, Gst.Structure options);
369                         [Version (since = "1.6")]
370                         public void free ();
371                         public size_t get_in_frames (size_t out_frames);
372                         public size_t get_max_latency ();
373                         public size_t get_out_frames (size_t in_frames);
374                         public void resample (void* @in, size_t in_frames, void* @out, size_t out_frames);
375                         public void reset ();
376                         public bool update (int in_rate, int out_rate, Gst.Structure options);
377                 }
378                 [CCode (cheader_filename = "gst/audio/audio.h", type_id = "gst_audio_ring_buffer_get_type ()")]
379                 [GIR (name = "AudioRingBuffer")]
380                 public abstract class RingBuffer : Gst.Object {
381                         public bool acquired;
382                         public GLib.Cond cond;
383                         public uint8 empty_seg;
384                         public uint8 memory;
385                         public bool open;
386                         public int samples_per_seg;
387                         public int segbase;
388                         public int segdone;
389                         public size_t size;
390                         public Gst.Audio.RingBufferSpec spec;
391                         public int state;
392                         public int waiting;
393                         [CCode (has_construct_function = false)]
394                         protected RingBuffer ();
395                         public virtual bool acquire (Gst.Audio.RingBufferSpec spec);
396                         public virtual bool activate (bool active);
397                         public void advance (uint advance);
398                         public void clear (int segment);
399                         public virtual void clear_all ();
400                         public virtual bool close_device ();
401                         public virtual uint commit (uint64 sample, [CCode (array_length_cname = "in_samples", array_length_pos = 2.5)] uint8[] data, int out_samples, ref int accum);
402                         public bool convert (Gst.Format src_fmt, int64 src_val, Gst.Format dest_fmt, out int64 dest_val);
403                         public static void debug_spec_buff (Gst.Audio.RingBufferSpec spec);
404                         public static void debug_spec_caps (Gst.Audio.RingBufferSpec spec);
405                         public virtual uint delay ();
406                         public bool device_is_open ();
407                         public bool is_acquired ();
408                         public bool is_active ();
409                         public bool is_flushing ();
410                         public void may_start (bool allowed);
411                         public virtual bool open_device ();
412                         public static bool parse_caps (Gst.Audio.RingBufferSpec spec, Gst.Caps caps);
413                         public virtual bool pause ();
414                         public bool prepare_read (out int segment, [CCode (array_length_cname = "len", array_length_pos = 2.1)] out uint8[] readptr);
415                         public uint read (uint64 sample, [CCode (array_length_cname = "len", array_length_pos = 2.5, array_length_type = "guint")] uint8[] data, out Gst.ClockTime timestamp);
416                         public virtual bool release ();
417                         [NoWrapper]
418                         public virtual bool resume ();
419                         public uint64 samples_done ();
420                         [Version (since = "1.12")]
421                         public void set_callback_full (owned Gst.Audio.RingBufferCallback? cb);
422                         public void set_channel_positions ([CCode (array_length = false)] Gst.Audio.ChannelPosition[] position);
423                         public void set_flushing (bool flushing);
424                         public void set_sample (uint64 sample);
425                         public void set_timestamp (int readseg, Gst.ClockTime timestamp);
426                         public virtual bool start ();
427                         public virtual bool stop ();
428                 }
429                 [CCode (cheader_filename = "gst/audio/audio.h", type_id = "gst_audio_sink_get_type ()")]
430                 [GIR (name = "AudioSink")]
431                 public class Sink : Gst.Audio.BaseSink {
432                         [CCode (has_construct_function = false)]
433                         protected Sink ();
434                         [NoWrapper]
435                         public virtual bool close ();
436                         [NoWrapper]
437                         public virtual uint delay ();
438                         [NoWrapper]
439                         public virtual bool open ();
440                         [NoWrapper]
441                         public virtual bool prepare (Gst.Audio.RingBufferSpec spec);
442                         [NoWrapper]
443                         public virtual void reset ();
444                         [NoWrapper]
445                         public virtual bool unprepare ();
446                         [NoWrapper]
447                         public virtual int write ([CCode (array_length_cname = "length", array_length_pos = 1.1, array_length_type = "guint", type = "gpointer")] uint8[] data);
448                 }
449                 [CCode (cheader_filename = "gst/audio/audio.h", type_id = "gst_audio_src_get_type ()")]
450                 [GIR (name = "AudioSrc")]
451                 public class Src : Gst.Audio.BaseSrc {
452                         [CCode (has_construct_function = false)]
453                         protected Src ();
454                         [NoWrapper]
455                         public virtual bool close ();
456                         [NoWrapper]
457                         public virtual uint delay ();
458                         [NoWrapper]
459                         public virtual bool open ();
460                         [NoWrapper]
461                         public virtual bool prepare (Gst.Audio.RingBufferSpec spec);
462                         [NoWrapper]
463                         public virtual uint read ([CCode (array_length_cname = "length", array_length_pos = 1.5, array_length_type = "guint", type = "gpointer")] uint8[] data, Gst.ClockTime timestamp);
464                         [NoWrapper]
465                         public virtual void reset ();
466                         [NoWrapper]
467                         public virtual bool unprepare ();
468                 }
469                 [CCode (cheader_filename = "gst/audio/audio.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "gst_audio_stream_align_get_type ()")]
470                 [Compact]
471                 [GIR (name = "AudioStreamAlign")]
472                 [Version (since = "1.14")]
473                 public class StreamAlign {
474                         [CCode (has_construct_function = false)]
475                         public StreamAlign (int rate, Gst.ClockTime alignment_threshold, Gst.ClockTime discont_wait);
476                         public Gst.Audio.StreamAlign copy ();
477                         public void free ();
478                         public Gst.ClockTime get_alignment_threshold ();
479                         public Gst.ClockTime get_discont_wait ();
480                         public int get_rate ();
481                         public uint64 get_samples_since_discont ();
482                         public Gst.ClockTime get_timestamp_at_discont ();
483                         public void mark_discont ();
484                         public bool process (bool discont, Gst.ClockTime timestamp, uint n_samples, out Gst.ClockTime out_timestamp, out Gst.ClockTime out_duration, out uint64 out_sample_position);
485                         public void set_alignment_threshold (Gst.ClockTime alignment_threshold);
486                         public void set_discont_wait (Gst.ClockTime discont_wait);
487                         public void set_rate (int rate);
488                 }
489                 [CCode (cheader_filename = "gst/audio/audio.h", cname = "GstStreamVolume", lower_case_cprefix = "gst_stream_volume_", type_cname = "GstStreamVolumeInterface", type_id = "gst_stream_volume_get_type ()")]
490                 [GIR (name = "StreamVolume")]
491                 public interface StreamVolume : GLib.Object {
492                         public static double convert_volume (Gst.Audio.StreamVolumeFormat from, Gst.Audio.StreamVolumeFormat to, double val);
493                         public bool get_mute ();
494                         public double get_volume (Gst.Audio.StreamVolumeFormat format);
495                         public void set_mute (bool mute);
496                         public void set_volume (Gst.Audio.StreamVolumeFormat format, double val);
497                         [ConcreteAccessor]
498                         public abstract bool mute { get; set; }
499                         [NoAccessorMethod]
500                         public abstract double volume { get; set; }
501                 }
502                 [CCode (cheader_filename = "gst/audio/audio.h", has_type_id = false)]
503                 [GIR (name = "AudioBuffer")]
504                 [Version (since = "1.16")]
505                 public struct Buffer {
506                         public weak Gst.Audio.Info info;
507                         public size_t n_samples;
508                         public int n_planes;
509                         public void* planes;
510                         public weak Gst.Buffer buffer;
511                         public bool map (Gst.Audio.Info info, Gst.Buffer gstbuffer, Gst.MapFlags flags);
512                         public void unmap ();
513                 }
514                 [CCode (cheader_filename = "gst/audio/audio.h", has_type_id = false)]
515                 [GIR (name = "AudioCdSrcTrack")]
516                 public struct CdSrcTrack {
517                         public bool is_audio;
518                         public uint num;
519                         public uint start;
520                         public uint end;
521                         public weak Gst.TagList tags;
522                 }
523                 [CCode (cheader_filename = "gst/audio/audio.h", has_type_id = false)]
524                 [GIR (name = "AudioClippingMeta")]
525                 [Version (since = "1.8")]
526                 public struct ClippingMeta {
527                         public Gst.Meta meta;
528                         public Gst.Format format;
529                         public uint64 start;
530                         public uint64 end;
531                 }
532                 [CCode (cheader_filename = "gst/audio/audio.h", has_type_id = false)]
533                 [GIR (name = "AudioDownmixMeta")]
534                 public struct DownmixMeta {
535                         public Gst.Meta meta;
536                         public Gst.Audio.ChannelPosition from_position;
537                         public Gst.Audio.ChannelPosition to_position;
538                         public int from_channels;
539                         public int to_channels;
540                         public float matrix;
541                 }
542                 [CCode (cheader_filename = "gst/audio/audio.h", has_type_id = false)]
543                 [GIR (name = "AudioFormatInfo")]
544                 public struct FormatInfo {
545                         public Gst.Audio.Format format;
546                         public weak string name;
547                         public weak string description;
548                         public Gst.Audio.FormatFlags flags;
549                         public int endianness;
550                         public int width;
551                         public int depth;
552                         [CCode (array_length = false)]
553                         public weak uint8 silence[8];
554                         public Gst.Audio.Format unpack_format;
555                         public weak Gst.Audio.FormatUnpack unpack_func;
556                         public weak Gst.Audio.FormatPack pack_func;
557                 }
558                 [CCode (cheader_filename = "gst/audio/audio.h", has_type_id = false)]
559                 [GIR (name = "AudioMeta")]
560                 [Version (since = "1.16")]
561                 public struct Meta {
562                         public Gst.Meta meta;
563                         public weak Gst.Audio.Info info;
564                         public size_t samples;
565                         public size_t offsets;
566                 }
567                 [CCode (cheader_filename = "gst/audio/audio.h", has_type_id = false)]
568                 [GIR (name = "AudioRingBufferSpec")]
569                 public struct RingBufferSpec {
570                         public weak Gst.Caps caps;
571                         public Gst.Audio.RingBufferFormatType type;
572                         public weak Gst.Audio.Info info;
573                         public uint64 latency_time;
574                         public uint64 buffer_time;
575                         public int segsize;
576                         public int segtotal;
577                         public int seglatency;
578                 }
579                 [CCode (cheader_filename = "gst/audio/audio.h", cprefix = "GST_AUDIO_BASE_SINK_DISCONT_REASON_", type_id = "gst_audio_base_sink_discont_reason_get_type ()")]
580                 [GIR (name = "AudioBaseSinkDiscontReason")]
581                 [Version (since = "1.6")]
582                 public enum BaseSinkDiscontReason {
583                         NO_DISCONT,
584                         NEW_CAPS,
585                         FLUSH,
586                         SYNC_LATENCY,
587                         ALIGNMENT,
588                         DEVICE_FAILURE
589                 }
590                 [CCode (cheader_filename = "gst/audio/audio.h", cprefix = "GST_AUDIO_BASE_SINK_SLAVE_", type_id = "gst_audio_base_sink_slave_method_get_type ()")]
591                 [GIR (name = "AudioBaseSinkSlaveMethod")]
592                 public enum BaseSinkSlaveMethod {
593                         RESAMPLE,
594                         SKEW,
595                         NONE,
596                         CUSTOM
597                 }
598                 [CCode (cheader_filename = "gst/audio/audio.h", cprefix = "GST_AUDIO_BASE_SRC_SLAVE_", type_id = "gst_audio_base_src_slave_method_get_type ()")]
599                 [GIR (name = "AudioBaseSrcSlaveMethod")]
600                 public enum BaseSrcSlaveMethod {
601                         RESAMPLE,
602                         RE_TIMESTAMP,
603                         SKEW,
604                         NONE
605                 }
606                 [CCode (cheader_filename = "gst/audio/audio.h", cprefix = "GST_AUDIO_CD_SRC_MODE_", type_id = "gst_audio_cd_src_mode_get_type ()")]
607                 [GIR (name = "AudioCdSrcMode")]
608                 public enum CdSrcMode {
609                         NORMAL,
610                         CONTINUOUS
611                 }
612                 [CCode (cheader_filename = "gst/audio/audio.h", cprefix = "GST_AUDIO_CHANNEL_MIXER_FLAGS_", type_id = "gst_audio_channel_mixer_flags_get_type ()")]
613                 [Flags]
614                 [GIR (name = "AudioChannelMixerFlags")]
615                 public enum ChannelMixerFlags {
616                         NONE,
617                         NON_INTERLEAVED_IN,
618                         NON_INTERLEAVED_OUT,
619                         UNPOSITIONED_IN,
620                         UNPOSITIONED_OUT
621                 }
622                 [CCode (cheader_filename = "gst/audio/audio.h", cprefix = "GST_AUDIO_CHANNEL_POSITION_", type_id = "gst_audio_channel_position_get_type ()")]
623                 [GIR (name = "AudioChannelPosition")]
624                 public enum ChannelPosition {
625                         NONE,
626                         MONO,
627                         INVALID,
628                         FRONT_LEFT,
629                         FRONT_RIGHT,
630                         FRONT_CENTER,
631                         LFE1,
632                         REAR_LEFT,
633                         REAR_RIGHT,
634                         FRONT_LEFT_OF_CENTER,
635                         FRONT_RIGHT_OF_CENTER,
636                         REAR_CENTER,
637                         LFE2,
638                         SIDE_LEFT,
639                         SIDE_RIGHT,
640                         TOP_FRONT_LEFT,
641                         TOP_FRONT_RIGHT,
642                         TOP_FRONT_CENTER,
643                         TOP_CENTER,
644                         TOP_REAR_LEFT,
645                         TOP_REAR_RIGHT,
646                         TOP_SIDE_LEFT,
647                         TOP_SIDE_RIGHT,
648                         TOP_REAR_CENTER,
649                         BOTTOM_FRONT_CENTER,
650                         BOTTOM_FRONT_LEFT,
651                         BOTTOM_FRONT_RIGHT,
652                         WIDE_LEFT,
653                         WIDE_RIGHT,
654                         SURROUND_LEFT,
655                         SURROUND_RIGHT
656                 }
657                 [CCode (cheader_filename = "gst/audio/audio.h", cprefix = "GST_AUDIO_CONVERTER_FLAG_", type_id = "gst_audio_converter_flags_get_type ()")]
658                 [Flags]
659                 [GIR (name = "AudioConverterFlags")]
660                 public enum ConverterFlags {
661                         NONE,
662                         IN_WRITABLE,
663                         VARIABLE_RATE
664                 }
665                 [CCode (cheader_filename = "gst/audio/audio.h", cprefix = "GST_AUDIO_DITHER_", type_id = "gst_audio_dither_method_get_type ()")]
666                 [GIR (name = "AudioDitherMethod")]
667                 public enum DitherMethod {
668                         NONE,
669                         RPDF,
670                         TPDF,
671                         TPDF_HF
672                 }
673                 [CCode (cheader_filename = "gst/audio/audio.h", cprefix = "GST_AUDIO_FLAG_", type_id = "gst_audio_flags_get_type ()")]
674                 [Flags]
675                 [GIR (name = "AudioFlags")]
676                 public enum Flags {
677                         NONE,
678                         UNPOSITIONED
679                 }
680                 [CCode (cheader_filename = "gst/audio/audio.h", cprefix = "GST_AUDIO_FORMAT_", type_id = "gst_audio_format_get_type ()")]
681                 [GIR (name = "AudioFormat")]
682                 public enum Format {
683                         UNKNOWN,
684                         ENCODED,
685                         S8,
686                         U8,
687                         S16LE,
688                         S16BE,
689                         U16LE,
690                         U16BE,
691                         S24_32LE,
692                         S24_32BE,
693                         U24_32LE,
694                         U24_32BE,
695                         S32LE,
696                         S32BE,
697                         U32LE,
698                         U32BE,
699                         S24LE,
700                         S24BE,
701                         U24LE,
702                         U24BE,
703                         S20LE,
704                         S20BE,
705                         U20LE,
706                         U20BE,
707                         S18LE,
708                         S18BE,
709                         U18LE,
710                         U18BE,
711                         F32LE,
712                         F32BE,
713                         F64LE,
714                         F64BE,
715                         S16,
716                         U16,
717                         S24_32,
718                         U24_32,
719                         S32,
720                         U32,
721                         S24,
722                         U24,
723                         S20,
724                         U20,
725                         S18,
726                         U18,
727                         F32,
728                         F64
729                 }
730                 [CCode (cheader_filename = "gst/audio/audio.h", cprefix = "GST_AUDIO_FORMAT_FLAG_", type_id = "gst_audio_format_flags_get_type ()")]
731                 [Flags]
732                 [GIR (name = "AudioFormatFlags")]
733                 public enum FormatFlags {
734                         INTEGER,
735                         FLOAT,
736                         SIGNED,
737                         COMPLEX,
738                         UNPACK
739                 }
740                 [CCode (cheader_filename = "gst/audio/audio.h", cprefix = "GST_AUDIO_LAYOUT_", type_id = "gst_audio_layout_get_type ()")]
741                 [GIR (name = "AudioLayout")]
742                 public enum Layout {
743                         INTERLEAVED,
744                         NON_INTERLEAVED
745                 }
746                 [CCode (cheader_filename = "gst/audio/audio.h", cprefix = "GST_AUDIO_NOISE_SHAPING_", type_id = "gst_audio_noise_shaping_method_get_type ()")]
747                 [GIR (name = "AudioNoiseShapingMethod")]
748                 public enum NoiseShapingMethod {
749                         NONE,
750                         ERROR_FEEDBACK,
751                         SIMPLE,
752                         MEDIUM,
753                         HIGH
754                 }
755                 [CCode (cheader_filename = "gst/audio/audio.h", cprefix = "GST_AUDIO_PACK_FLAG_", type_id = "gst_audio_pack_flags_get_type ()")]
756                 [Flags]
757                 [GIR (name = "AudioPackFlags")]
758                 public enum PackFlags {
759                         NONE,
760                         TRUNCATE_RANGE
761                 }
762                 [CCode (cheader_filename = "gst/audio/audio.h", cprefix = "GST_AUDIO_QUANTIZE_FLAG_", type_id = "gst_audio_quantize_flags_get_type ()")]
763                 [Flags]
764                 [GIR (name = "AudioQuantizeFlags")]
765                 public enum QuantizeFlags {
766                         NONE,
767                         NON_INTERLEAVED
768                 }
769                 [CCode (cheader_filename = "gst/audio/audio.h", cprefix = "GST_AUDIO_RESAMPLER_FILTER_INTERPOLATION_", type_id = "gst_audio_resampler_filter_interpolation_get_type ()")]
770                 [GIR (name = "AudioResamplerFilterInterpolation")]
771                 public enum ResamplerFilterInterpolation {
772                         NONE,
773                         LINEAR,
774                         CUBIC
775                 }
776                 [CCode (cheader_filename = "gst/audio/audio.h", cprefix = "GST_AUDIO_RESAMPLER_FILTER_MODE_", type_id = "gst_audio_resampler_filter_mode_get_type ()")]
777                 [GIR (name = "AudioResamplerFilterMode")]
778                 public enum ResamplerFilterMode {
779                         INTERPOLATED,
780                         FULL,
781                         AUTO
782                 }
783                 [CCode (cheader_filename = "gst/audio/audio.h", cprefix = "GST_AUDIO_RESAMPLER_FLAG_", type_id = "gst_audio_resampler_flags_get_type ()")]
784                 [Flags]
785                 [GIR (name = "AudioResamplerFlags")]
786                 public enum ResamplerFlags {
787                         NONE,
788                         NON_INTERLEAVED_IN,
789                         NON_INTERLEAVED_OUT,
790                         VARIABLE_RATE
791                 }
792                 [CCode (cheader_filename = "gst/audio/audio.h", cprefix = "GST_AUDIO_RESAMPLER_METHOD_", type_id = "gst_audio_resampler_method_get_type ()")]
793                 [GIR (name = "AudioResamplerMethod")]
794                 [Version (since = "1.6")]
795                 public enum ResamplerMethod {
796                         NEAREST,
797                         LINEAR,
798                         CUBIC,
799                         BLACKMAN_NUTTALL,
800                         KAISER
801                 }
802                 [CCode (cheader_filename = "gst/audio/audio.h", cprefix = "GST_AUDIO_RING_BUFFER_FORMAT_TYPE_", type_id = "gst_audio_ring_buffer_format_type_get_type ()")]
803                 [GIR (name = "AudioRingBufferFormatType")]
804                 public enum RingBufferFormatType {
805                         RAW,
806                         MU_LAW,
807                         A_LAW,
808                         IMA_ADPCM,
809                         MPEG,
810                         GSM,
811                         IEC958,
812                         AC3,
813                         EAC3,
814                         DTS,
815                         MPEG2_AAC,
816                         MPEG4_AAC,
817                         MPEG2_AAC_RAW,
818                         MPEG4_AAC_RAW,
819                         FLAC
820                 }
821                 [CCode (cheader_filename = "gst/audio/audio.h", cprefix = "GST_AUDIO_RING_BUFFER_STATE_", type_id = "gst_audio_ring_buffer_state_get_type ()")]
822                 [GIR (name = "AudioRingBufferState")]
823                 public enum RingBufferState {
824                         STOPPED,
825                         PAUSED,
826                         STARTED,
827                         ERROR
828                 }
829                 [CCode (cheader_filename = "gst/audio/audio.h", cname = "GstStreamVolumeFormat", cprefix = "GST_STREAM_VOLUME_FORMAT_", has_type_id = false)]
830                 [GIR (name = "StreamVolumeFormat")]
831                 public enum StreamVolumeFormat {
832                         LINEAR,
833                         CUBIC,
834                         DB
835                 }
836                 [CCode (cheader_filename = "gst/audio/audio.h", instance_pos = 5.9)]
837                 [Version (since = "1.6")]
838                 public delegate void BaseSinkCustomSlavingCallback (Gst.Audio.BaseSink sink, Gst.ClockTime etime, Gst.ClockTime itime, Gst.ClockTimeDiff requested_skew, Gst.Audio.BaseSinkDiscontReason discont_reason);
839                 [CCode (cheader_filename = "gst/audio/audio.h", instance_pos = 1.9)]
840                 public delegate Gst.ClockTime ClockGetTimeFunc (Gst.Clock clock);
841                 [CCode (cheader_filename = "gst/audio/audio.h", has_target = false)]
842                 public delegate void FormatPack (Gst.Audio.FormatInfo info, Gst.Audio.PackFlags flags, [CCode (array_length = false)] uint8[] src, [CCode (array_length = false)] uint8[] data, int length);
843                 [CCode (cheader_filename = "gst/audio/audio.h", has_target = false)]
844                 public delegate void FormatUnpack (Gst.Audio.FormatInfo info, Gst.Audio.PackFlags flags, [CCode (array_length = false)] uint8[] dest, [CCode (array_length = false)] uint8[] data, int length);
845                 [CCode (cheader_filename = "gst/audio/audio.h", instance_pos = 2.9)]
846                 public delegate void RingBufferCallback (Gst.Audio.RingBuffer rbuf, [CCode (array_length_cname = "len", array_length_pos = 2.1, array_length_type = "guint")] uint8[] data);
847                 [CCode (cheader_filename = "gst/audio/audio.h", cname = "GST_AUDIO_CHANNELS_RANGE")]
848                 public const string CHANNELS_RANGE;
849                 [CCode (cheader_filename = "gst/audio/audio.h", cname = "GST_AUDIO_CONVERTER_OPT_DITHER_METHOD")]
850                 public const string CONVERTER_OPT_DITHER_METHOD;
851                 [CCode (cheader_filename = "gst/audio/audio.h", cname = "GST_AUDIO_CONVERTER_OPT_MIX_MATRIX")]
852                 public const string CONVERTER_OPT_MIX_MATRIX;
853                 [CCode (cheader_filename = "gst/audio/audio.h", cname = "GST_AUDIO_CONVERTER_OPT_NOISE_SHAPING_METHOD")]
854                 public const string CONVERTER_OPT_NOISE_SHAPING_METHOD;
855                 [CCode (cheader_filename = "gst/audio/audio.h", cname = "GST_AUDIO_CONVERTER_OPT_QUANTIZATION")]
856                 public const string CONVERTER_OPT_QUANTIZATION;
857                 [CCode (cheader_filename = "gst/audio/audio.h", cname = "GST_AUDIO_CONVERTER_OPT_RESAMPLER_METHOD")]
858                 public const string CONVERTER_OPT_RESAMPLER_METHOD;
859                 [CCode (cheader_filename = "gst/audio/audio.h", cname = "GST_AUDIO_DECODER_MAX_ERRORS")]
860                 public const int DECODER_MAX_ERRORS;
861                 [CCode (cheader_filename = "gst/audio/audio.h", cname = "GST_AUDIO_DECODER_SINK_NAME")]
862                 public const string DECODER_SINK_NAME;
863                 [CCode (cheader_filename = "gst/audio/audio.h", cname = "GST_AUDIO_DECODER_SRC_NAME")]
864                 public const string DECODER_SRC_NAME;
865                 [CCode (cheader_filename = "gst/audio/audio.h", cname = "GST_AUDIO_DEF_CHANNELS")]
866                 public const int DEF_CHANNELS;
867                 [CCode (cheader_filename = "gst/audio/audio.h", cname = "GST_AUDIO_DEF_FORMAT")]
868                 public const string DEF_FORMAT;
869                 [CCode (cheader_filename = "gst/audio/audio.h", cname = "GST_AUDIO_DEF_RATE")]
870                 public const int DEF_RATE;
871                 [CCode (cheader_filename = "gst/audio/audio.h", cname = "GST_AUDIO_ENCODER_SINK_NAME")]
872                 public const string ENCODER_SINK_NAME;
873                 [CCode (cheader_filename = "gst/audio/audio.h", cname = "GST_AUDIO_ENCODER_SRC_NAME")]
874                 public const string ENCODER_SRC_NAME;
875                 [CCode (cheader_filename = "gst/audio/audio.h", cname = "GST_AUDIO_FORMATS_ALL")]
876                 public const string FORMATS_ALL;
877                 [CCode (cheader_filename = "gst/audio/audio.h", cname = "GST_META_TAG_AUDIO_CHANNELS_STR")]
878                 [Version (since = "1.2")]
879                 public const string META_TAG_AUDIO_CHANNELS_STR;
880                 [CCode (cheader_filename = "gst/audio/audio.h", cname = "GST_META_TAG_AUDIO_RATE_STR")]
881                 [Version (since = "1.8")]
882                 public const string META_TAG_AUDIO_RATE_STR;
883                 [CCode (cheader_filename = "gst/audio/audio.h", cname = "GST_META_TAG_AUDIO_STR")]
884                 [Version (since = "1.2")]
885                 public const string META_TAG_AUDIO_STR;
886                 [CCode (cheader_filename = "gst/audio/audio.h", cname = "GST_AUDIO_RATE_RANGE")]
887                 public const string RATE_RANGE;
888                 [CCode (cheader_filename = "gst/audio/audio.h", cname = "GST_AUDIO_RESAMPLER_OPT_CUBIC_B")]
889                 public const string RESAMPLER_OPT_CUBIC_B;
890                 [CCode (cheader_filename = "gst/audio/audio.h", cname = "GST_AUDIO_RESAMPLER_OPT_CUBIC_C")]
891                 public const string RESAMPLER_OPT_CUBIC_C;
892                 [CCode (cheader_filename = "gst/audio/audio.h", cname = "GST_AUDIO_RESAMPLER_OPT_CUTOFF")]
893                 public const string RESAMPLER_OPT_CUTOFF;
894                 [CCode (cheader_filename = "gst/audio/audio.h", cname = "GST_AUDIO_RESAMPLER_OPT_FILTER_INTERPOLATION")]
895                 public const string RESAMPLER_OPT_FILTER_INTERPOLATION;
896                 [CCode (cheader_filename = "gst/audio/audio.h", cname = "GST_AUDIO_RESAMPLER_OPT_FILTER_MODE")]
897                 public const string RESAMPLER_OPT_FILTER_MODE;
898                 [CCode (cheader_filename = "gst/audio/audio.h", cname = "GST_AUDIO_RESAMPLER_OPT_FILTER_MODE_THRESHOLD")]
899                 public const string RESAMPLER_OPT_FILTER_MODE_THRESHOLD;
900                 [CCode (cheader_filename = "gst/audio/audio.h", cname = "GST_AUDIO_RESAMPLER_OPT_FILTER_OVERSAMPLE")]
901                 public const string RESAMPLER_OPT_FILTER_OVERSAMPLE;
902                 [CCode (cheader_filename = "gst/audio/audio.h", cname = "GST_AUDIO_RESAMPLER_OPT_MAX_PHASE_ERROR")]
903                 public const string RESAMPLER_OPT_MAX_PHASE_ERROR;
904                 [CCode (cheader_filename = "gst/audio/audio.h", cname = "GST_AUDIO_RESAMPLER_OPT_N_TAPS")]
905                 public const string RESAMPLER_OPT_N_TAPS;
906                 [CCode (cheader_filename = "gst/audio/audio.h", cname = "GST_AUDIO_RESAMPLER_OPT_STOP_ATTENUATION")]
907                 public const string RESAMPLER_OPT_STOP_ATTENUATION;
908                 [CCode (cheader_filename = "gst/audio/audio.h", cname = "GST_AUDIO_RESAMPLER_OPT_TRANSITION_BANDWIDTH")]
909                 public const string RESAMPLER_OPT_TRANSITION_BANDWIDTH;
910                 [CCode (cheader_filename = "gst/audio/audio.h", cname = "GST_AUDIO_RESAMPLER_QUALITY_DEFAULT")]
911                 public const int RESAMPLER_QUALITY_DEFAULT;
912                 [CCode (cheader_filename = "gst/audio/audio.h", cname = "GST_AUDIO_RESAMPLER_QUALITY_MAX")]
913                 public const int RESAMPLER_QUALITY_MAX;
914                 [CCode (cheader_filename = "gst/audio/audio.h", cname = "GST_AUDIO_RESAMPLER_QUALITY_MIN")]
915                 public const int RESAMPLER_QUALITY_MIN;
916                 [CCode (cheader_filename = "gst/audio/audio.h", cname = "gst_audio_buffer_clip")]
917                 public static Gst.Buffer audio_buffer_clip (owned Gst.Buffer buffer, Gst.Segment segment, int rate, int bpf);
918                 [CCode (cheader_filename = "gst/audio/audio.h", cname = "gst_audio_buffer_reorder_channels")]
919                 public static bool audio_buffer_reorder_channels (Gst.Buffer buffer, Gst.Audio.Format format, [CCode (array_length_cname = "channels", array_length_pos = 2.5)] Gst.Audio.ChannelPosition[] from, [CCode (array_length_cname = "channels", array_length_pos = 2.5)] Gst.Audio.ChannelPosition[] to);
920                 [CCode (cheader_filename = "gst/audio/audio.h", cname = "gst_audio_buffer_truncate")]
921                 [Version (since = "1.16")]
922                 public static Gst.Buffer audio_buffer_truncate (owned Gst.Buffer buffer, int bpf, size_t trim, size_t samples);
923                 [CCode (cheader_filename = "gst/audio/audio.h", cname = "gst_audio_channel_get_fallback_mask")]
924                 [Version (since = "1.8")]
925                 public static uint64 audio_channel_get_fallback_mask (int channels);
926                 [CCode (cheader_filename = "gst/audio/audio.h", cname = "gst_audio_channel_positions_from_mask")]
927                 public static bool audio_channel_positions_from_mask (uint64 channel_mask, [CCode (array_length_cname = "channels", array_length_pos = 0.5)] Gst.Audio.ChannelPosition[] position);
928                 [CCode (cheader_filename = "gst/audio/audio.h", cname = "gst_audio_channel_positions_to_mask")]
929                 public static bool audio_channel_positions_to_mask ([CCode (array_length_cname = "channels", array_length_pos = 1.5)] Gst.Audio.ChannelPosition[] position, bool force_order, out uint64 channel_mask);
930                 [CCode (cheader_filename = "gst/audio/audio.h", cname = "gst_audio_channel_positions_to_string")]
931                 public static string audio_channel_positions_to_string ([CCode (array_length_cname = "channels", array_length_pos = 1.1)] Gst.Audio.ChannelPosition[] position);
932                 [CCode (cheader_filename = "gst/audio/audio.h", cname = "gst_audio_channel_positions_to_valid_order")]
933                 public static bool audio_channel_positions_to_valid_order ([CCode (array_length_cname = "channels", array_length_pos = 1.1)] Gst.Audio.ChannelPosition[] position);
934                 [CCode (cheader_filename = "gst/audio/audio.h", cname = "gst_audio_check_valid_channel_positions")]
935                 public static bool audio_check_valid_channel_positions ([CCode (array_length_cname = "channels", array_length_pos = 1.5)] Gst.Audio.ChannelPosition[] position, bool force_order);
936                 [CCode (cheader_filename = "gst/audio/audio.h", cname = "gst_audio_clipping_meta_api_get_type")]
937                 public static GLib.Type audio_clipping_meta_api_get_type ();
938                 [CCode (cheader_filename = "gst/audio/audio.h", cname = "gst_audio_clipping_meta_get_info")]
939                 public static unowned Gst.MetaInfo? audio_clipping_meta_get_info ();
940                 [CCode (cheader_filename = "gst/audio/audio.h", cname = "gst_audio_downmix_meta_api_get_type")]
941                 public static GLib.Type audio_downmix_meta_api_get_type ();
942                 [CCode (cheader_filename = "gst/audio/audio.h", cname = "gst_audio_downmix_meta_get_info")]
943                 public static unowned Gst.MetaInfo? audio_downmix_meta_get_info ();
944                 [CCode (cheader_filename = "gst/audio/audio.h", cname = "gst_audio_format_build_integer")]
945                 public static Gst.Audio.Format audio_format_build_integer (bool sign, int endianness, int width, int depth);
946                 [CCode (cheader_filename = "gst/audio/audio.h", cname = "gst_audio_format_fill_silence")]
947                 public static void audio_format_fill_silence (Gst.Audio.FormatInfo info, [CCode (array_length_cname = "length", array_length_pos = 2.1, array_length_type = "gsize")] uint8[] dest);
948                 [CCode (cheader_filename = "gst/audio/audio.h", cname = "gst_audio_format_from_string")]
949                 public static Gst.Audio.Format audio_format_from_string (string format);
950                 [CCode (cheader_filename = "gst/audio/audio.h", cname = "gst_audio_format_get_info")]
951                 public static unowned Gst.Audio.FormatInfo? audio_format_get_info (Gst.Audio.Format format);
952                 [CCode (cheader_filename = "gst/audio/audio.h", cname = "gst_audio_format_info_get_type")]
953                 public static GLib.Type audio_format_info_get_type ();
954                 [CCode (cheader_filename = "gst/audio/audio.h", cname = "gst_audio_format_to_string")]
955                 public static unowned string audio_format_to_string (Gst.Audio.Format format);
956                 [CCode (cheader_filename = "gst/audio/audio.h", cname = "gst_audio_get_channel_reorder_map")]
957                 public static bool audio_get_channel_reorder_map ([CCode (array_length_cname = "channels", array_length_pos = 0.5)] Gst.Audio.ChannelPosition[] from, [CCode (array_length_cname = "channels", array_length_pos = 0.5)] Gst.Audio.ChannelPosition[] to, [CCode (array_length_cname = "channels", array_length_pos = 0.5)] int[] reorder_map);
958                 [CCode (cheader_filename = "gst/audio/audio.h", cname = "gst_audio_iec61937_frame_size")]
959                 public static uint audio_iec61937_frame_size (Gst.Audio.RingBufferSpec spec);
960                 [CCode (cheader_filename = "gst/audio/audio.h", cname = "gst_audio_iec61937_payload")]
961                 public static bool audio_iec61937_payload ([CCode (array_length_cname = "src_n", array_length_pos = 1.5, array_length_type = "guint")] uint8[] src, [CCode (array_length_cname = "dst_n", array_length_pos = 2.5, array_length_type = "guint")] uint8[] dst, Gst.Audio.RingBufferSpec spec, int endianness);
962                 [CCode (cheader_filename = "gst/audio/audio.h", cname = "gst_audio_meta_api_get_type")]
963                 public static GLib.Type audio_meta_api_get_type ();
964                 [CCode (cheader_filename = "gst/audio/audio.h", cname = "gst_audio_meta_get_info")]
965                 public static unowned Gst.MetaInfo? audio_meta_get_info ();
966                 [CCode (cheader_filename = "gst/audio/audio.h", cname = "gst_audio_reorder_channels")]
967                 public static bool audio_reorder_channels ([CCode (array_length_cname = "size", array_length_pos = 1.5, array_length_type = "gsize")] uint8[] data, Gst.Audio.Format format, [CCode (array_length_cname = "channels", array_length_pos = 2.5)] Gst.Audio.ChannelPosition[] from, [CCode (array_length_cname = "channels", array_length_pos = 2.5)] Gst.Audio.ChannelPosition[] to);
968                 [CCode (cheader_filename = "gst/audio/audio.h", cname = "gst_audio_resampler_options_set_quality")]
969                 public static void audio_resampler_options_set_quality (Gst.Audio.ResamplerMethod method, uint quality, int in_rate, int out_rate, Gst.Structure options);
970                 [CCode (cheader_filename = "gst/audio/audio.h", cname = "gst_buffer_add_audio_clipping_meta")]
971                 [Version (since = "1.8")]
972                 public static unowned Gst.Audio.ClippingMeta? buffer_add_audio_clipping_meta (Gst.Buffer buffer, Gst.Format format, uint64 start, uint64 end);
973                 [CCode (cheader_filename = "gst/audio/audio.h", cname = "gst_buffer_add_audio_downmix_meta")]
974                 public static unowned Gst.Audio.DownmixMeta? buffer_add_audio_downmix_meta (Gst.Buffer buffer, [CCode (array_length_cname = "from_channels", array_length_pos = 2.5)] Gst.Audio.ChannelPosition[] from_position, [CCode (array_length_cname = "to_channels", array_length_pos = 3.5)] Gst.Audio.ChannelPosition[] to_position, float matrix);
975                 [CCode (cheader_filename = "gst/audio/audio.h", cname = "gst_buffer_get_audio_downmix_meta_for_channels")]
976                 public static unowned Gst.Audio.DownmixMeta? buffer_get_audio_downmix_meta_for_channels (Gst.Buffer buffer, [CCode (array_length_cname = "to_channels", array_length_pos = 2.1)] Gst.Audio.ChannelPosition[] to_position);
977                 [CCode (cheader_filename = "gst/audio/audio.h", cname = "gst_stream_volume_convert_volume")]
978                 public static double stream_volume_convert_volume (Gst.Audio.StreamVolumeFormat from, Gst.Audio.StreamVolumeFormat to, double val);
979         }