We need different export decorators for the different libs.
For now no actual change though, just rename before the release,
and add prelude headers to define the new decorator to GST_EXPORT.
glib_enum_define = GST_AUDIO
glib_gen_prefix = gst_audio
glib_gen_basename = audio
-glib_gen_decl_banner=GST_EXPORT
+glib_gen_decl_banner=GST_AUDIO_API
+glib_gen_decl_include=\#include <gst/audio/audio-prelude.h>
built_sources = audio-enumtypes.c
built_headers = audio-enumtypes.h
libgstaudio_@GST_API_VERSION@includedir = $(includedir)/gstreamer-@GST_API_VERSION@/gst/audio
libgstaudio_@GST_API_VERSION@include_HEADERS = \
audio.h \
+ audio-prelude.h \
audio-format.h \
audio-channels.h \
audio-channel-mixer.h \
GST_AUDIO_CHANNEL_MIXER_FLAGS_UNPOSITIONED_OUT = (1 << 3)
} GstAudioChannelMixerFlags;
-GST_EXPORT
+GST_AUDIO_API
GstAudioChannelMixer * gst_audio_channel_mixer_new (GstAudioChannelMixerFlags flags,
GstAudioFormat format,
gint in_channels,
gint out_channels,
GstAudioChannelPosition *out_position);
-GST_EXPORT
+GST_AUDIO_API
GstAudioChannelMixer * gst_audio_channel_mixer_new_with_matrix (GstAudioChannelMixerFlags flags,
GstAudioFormat format,
gint in_channels,
gint out_channels,
gfloat **matrix);
-GST_EXPORT
+GST_AUDIO_API
void gst_audio_channel_mixer_free (GstAudioChannelMixer *mix);
/*
* Checks for passthrough (= identity matrix).
*/
-GST_EXPORT
+GST_AUDIO_API
gboolean gst_audio_channel_mixer_is_passthrough (GstAudioChannelMixer *mix);
/*
* Do actual mixing.
*/
-GST_EXPORT
+GST_AUDIO_API
void gst_audio_channel_mixer_samples (GstAudioChannelMixer * mix,
const gpointer in[],
gpointer out[],
#define GST_AUDIO_CHANNEL_POSITION_MASK(pos) (G_GUINT64_CONSTANT(1)<< GST_AUDIO_CHANNEL_POSITION_ ## pos)
-GST_EXPORT
+GST_AUDIO_API
gboolean gst_audio_buffer_reorder_channels (GstBuffer * buffer,
GstAudioFormat format,
gint channels,
const GstAudioChannelPosition * from,
const GstAudioChannelPosition * to);
-GST_EXPORT
+GST_AUDIO_API
gboolean gst_audio_reorder_channels (gpointer data, gsize size,
GstAudioFormat format,
gint channels,
const GstAudioChannelPosition * from,
const GstAudioChannelPosition * to);
-GST_EXPORT
+GST_AUDIO_API
gboolean gst_audio_channel_positions_to_valid_order (GstAudioChannelPosition *position,
gint channels);
-GST_EXPORT
+GST_AUDIO_API
gboolean gst_audio_check_valid_channel_positions (const GstAudioChannelPosition *position,
gint channels, gboolean force_order);
-GST_EXPORT
+GST_AUDIO_API
gboolean gst_audio_channel_positions_to_mask (const GstAudioChannelPosition *position,
gint channels, gboolean force_order,
guint64 *channel_mask);
-GST_EXPORT
+GST_AUDIO_API
gboolean gst_audio_channel_positions_from_mask (gint channels, guint64 channel_mask,
GstAudioChannelPosition * position);
-GST_EXPORT
+GST_AUDIO_API
gboolean gst_audio_get_channel_reorder_map (gint channels,
const GstAudioChannelPosition * from,
const GstAudioChannelPosition * to,
gint *reorder_map);
-GST_EXPORT
+GST_AUDIO_API
guint64 gst_audio_channel_get_fallback_mask (gint channels);
-GST_EXPORT
+GST_AUDIO_API
gchar* gst_audio_channel_positions_to_string (const GstAudioChannelPosition * position,
gint channels);
GST_AUDIO_CONVERTER_FLAG_VARIABLE_RATE = (1 << 1)
} GstAudioConverterFlags;
-GST_EXPORT
+GST_AUDIO_API
GstAudioConverter * gst_audio_converter_new (GstAudioConverterFlags flags,
GstAudioInfo *in_info,
GstAudioInfo *out_info,
GstStructure *config);
-GST_EXPORT
+GST_AUDIO_API
GType gst_audio_converter_get_type (void);
-GST_EXPORT
+GST_AUDIO_API
void gst_audio_converter_free (GstAudioConverter * convert);
-GST_EXPORT
+GST_AUDIO_API
void gst_audio_converter_reset (GstAudioConverter * convert);
-GST_EXPORT
+GST_AUDIO_API
gboolean gst_audio_converter_update_config (GstAudioConverter * convert,
gint in_rate, gint out_rate,
GstStructure *config);
-GST_EXPORT
+GST_AUDIO_API
const GstStructure * gst_audio_converter_get_config (GstAudioConverter * convert,
gint *in_rate, gint *out_rate);
-GST_EXPORT
+GST_AUDIO_API
gsize gst_audio_converter_get_out_frames (GstAudioConverter *convert,
gsize in_frames);
-GST_EXPORT
+GST_AUDIO_API
gsize gst_audio_converter_get_in_frames (GstAudioConverter *convert,
gsize out_frames);
-GST_EXPORT
+GST_AUDIO_API
gsize gst_audio_converter_get_max_latency (GstAudioConverter *convert);
-GST_EXPORT
+GST_AUDIO_API
gboolean gst_audio_converter_samples (GstAudioConverter * convert,
GstAudioConverterFlags flags,
gpointer in[], gsize in_frames,
gpointer out[], gsize out_frames);
-GST_EXPORT
+GST_AUDIO_API
gboolean gst_audio_converter_supports_inplace (GstAudioConverter *convert);
-GST_EXPORT
+GST_AUDIO_API
gboolean gst_audio_converter_convert (GstAudioConverter * convert,
GstAudioConverterFlags flags,
gpointer in, gsize in_size,
gpointer _gst_reserved[GST_PADDING];
};
-GST_EXPORT
+GST_AUDIO_API
GType gst_audio_format_info_get_type (void);
#define GST_AUDIO_FORMAT_INFO_FORMAT(info) ((info)->format)
#define GST_AUDIO_FORMAT_INFO_DEPTH(info) ((info)->depth)
-GST_EXPORT
+GST_AUDIO_API
GstAudioFormat gst_audio_format_build_integer (gboolean sign, gint endianness,
gint width, gint depth) G_GNUC_CONST;
-GST_EXPORT
+GST_AUDIO_API
GstAudioFormat gst_audio_format_from_string (const gchar *format) G_GNUC_CONST;
-GST_EXPORT
+GST_AUDIO_API
const gchar * gst_audio_format_to_string (GstAudioFormat format) G_GNUC_CONST;
-GST_EXPORT
+GST_AUDIO_API
const GstAudioFormatInfo *
gst_audio_format_get_info (GstAudioFormat format) G_GNUC_CONST;
-GST_EXPORT
+GST_AUDIO_API
void gst_audio_format_fill_silence (const GstAudioFormatInfo *info,
gpointer dest, gsize length);
};
#define GST_TYPE_AUDIO_INFO (gst_audio_info_get_type ())
-GST_EXPORT
+GST_AUDIO_API
GType gst_audio_info_get_type (void);
#define GST_AUDIO_INFO_IS_VALID(i) ((i)->finfo != NULL && (i)->rate > 0 && (i)->channels > 0 && (i)->bpf > 0)
#define GST_AUDIO_INFO_BPF(info) ((info)->bpf)
#define GST_AUDIO_INFO_POSITION(info,c) ((info)->position[c])
-GST_EXPORT
+GST_AUDIO_API
GstAudioInfo * gst_audio_info_new (void);
-GST_EXPORT
+GST_AUDIO_API
void gst_audio_info_init (GstAudioInfo *info);
-GST_EXPORT
+GST_AUDIO_API
GstAudioInfo * gst_audio_info_copy (const GstAudioInfo *info);
-GST_EXPORT
+GST_AUDIO_API
void gst_audio_info_free (GstAudioInfo *info);
-GST_EXPORT
+GST_AUDIO_API
void gst_audio_info_set_format (GstAudioInfo *info, GstAudioFormat format,
gint rate, gint channels,
const GstAudioChannelPosition *position);
-GST_EXPORT
+GST_AUDIO_API
gboolean gst_audio_info_from_caps (GstAudioInfo *info, const GstCaps *caps);
-GST_EXPORT
+GST_AUDIO_API
GstCaps * gst_audio_info_to_caps (const GstAudioInfo *info);
-GST_EXPORT
+GST_AUDIO_API
gboolean gst_audio_info_convert (const GstAudioInfo * info,
GstFormat src_fmt, gint64 src_val,
GstFormat dest_fmt, gint64 * dest_val);
-GST_EXPORT
+GST_AUDIO_API
gboolean gst_audio_info_is_equal (const GstAudioInfo *info,
const GstAudioInfo *other);
--- /dev/null
+/* GStreamer Audio Library
+ * Copyright (C) 2018 GStreamer developers
+ *
+ * audio-prelude.h: prelude include header for gst-audio library
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Library General Public
+ * License as published by the Free Software Foundation; either
+ * version 2 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Library General Public License for more details.
+ *
+ * You should have received a copy of the GNU Library General Public
+ * License along with this library; if not, write to the
+ * Free Software Foundation, Inc., 51 Franklin St, Fifth Floor,
+ * Boston, MA 02110-1301, USA.
+ */
+
+#ifndef __GST_AUDIO_PRELUDE_H__
+#define __GST_AUDIO_PRELUDE_H__
+
+#include <gst/gst.h>
+
+#ifndef GST_AUDIO_API
+#define GST_AUDIO_API GST_EXPORT
+#endif
+
+#endif /* __GST_AUDIO_PRELUDE_H__ */
typedef struct _GstAudioQuantize GstAudioQuantize;
-GST_EXPORT
+GST_AUDIO_API
GstAudioQuantize * gst_audio_quantize_new (GstAudioDitherMethod dither,
GstAudioNoiseShapingMethod ns,
GstAudioQuantizeFlags flags,
guint channels,
guint quantizer);
-GST_EXPORT
+GST_AUDIO_API
void gst_audio_quantize_free (GstAudioQuantize * quant);
-GST_EXPORT
+GST_AUDIO_API
void gst_audio_quantize_reset (GstAudioQuantize * quant);
-GST_EXPORT
+GST_AUDIO_API
void gst_audio_quantize_samples (GstAudioQuantize * quant,
const gpointer in[],
gpointer out[], guint samples);
#define GST_AUDIO_RESAMPLER_QUALITY_MAX 10
#define GST_AUDIO_RESAMPLER_QUALITY_DEFAULT 4
-GST_EXPORT
+GST_AUDIO_API
void gst_audio_resampler_options_set_quality (GstAudioResamplerMethod method,
guint quality,
gint in_rate, gint out_rate,
GstStructure *options);
-GST_EXPORT
+GST_AUDIO_API
GstAudioResampler * gst_audio_resampler_new (GstAudioResamplerMethod method,
GstAudioResamplerFlags flags,
GstAudioFormat format, gint channels,
gint in_rate, gint out_rate,
GstStructure *options);
-GST_EXPORT
+GST_AUDIO_API
void gst_audio_resampler_free (GstAudioResampler *resampler);
-GST_EXPORT
+GST_AUDIO_API
void gst_audio_resampler_reset (GstAudioResampler *resampler);
-GST_EXPORT
+GST_AUDIO_API
gboolean gst_audio_resampler_update (GstAudioResampler *resampler,
gint in_rate, gint out_rate,
GstStructure *options);
-GST_EXPORT
+GST_AUDIO_API
gsize gst_audio_resampler_get_out_frames (GstAudioResampler *resampler,
gsize in_frames);
-GST_EXPORT
+GST_AUDIO_API
gsize gst_audio_resampler_get_in_frames (GstAudioResampler *resampler,
gsize out_frames);
-GST_EXPORT
+GST_AUDIO_API
gsize gst_audio_resampler_get_max_latency (GstAudioResampler *resampler);
-GST_EXPORT
+GST_AUDIO_API
void gst_audio_resampler_resample (GstAudioResampler * resampler,
gpointer in[], gsize in_frames,
gpointer out[], gsize out_frames);
#define __GST_AUDIO_AUDIO_H__
#include <gst/gst.h>
+#include <gst/audio/audio-prelude.h>
#include <gst/audio/audio-enumtypes.h>
#include <gst/audio/audio-format.h>
#include <gst/audio/audio-channels.h>
* handling
*/
-GST_EXPORT
+GST_AUDIO_API
GstBuffer * gst_audio_buffer_clip (GstBuffer *buffer,
const GstSegment *segment,
gint rate, gint bpf);
import sys, os, shutil, subprocess
h_array = ['--fhead',
- "#ifndef __GST_AUDIO_ENUM_TYPES_H__\n#define __GST_AUDIO_ENUM_TYPES_H__\n\n#include <gst/gst.h>\n\nG_BEGIN_DECLS\n",
+ "#ifndef __GST_AUDIO_ENUM_TYPES_H__\n#define __GST_AUDIO_ENUM_TYPES_H__\n\n#include <gst/gst.h>\n#include <gst/audio/audio-prelude.h>\nG_BEGIN_DECLS\n",
'--fprod',
"\n/* enumerations from \"@filename@\" */\n",
'--vhead',
- 'GST_EXPORT GType @enum_name@_get_type (void);\n#define GST_TYPE_@ENUMSHORT@ (@enum_name@_get_type())\n',
+ 'GST_AUDIO_API GType @enum_name@_get_type (void);\n#define GST_TYPE_@ENUMSHORT@ (@enum_name@_get_type())\n',
'--ftail',
'G_END_DECLS\n\n#endif /* __GST_AUDIO_ENUM_TYPES_H__ */',
]
gpointer _gst_reserved[GST_PADDING_LARGE];
};
-GST_EXPORT
+GST_AUDIO_API
GType gst_audio_aggregator_pad_get_type (void);
#define GST_TYPE_AUDIO_AGGREGATOR_CONVERT_PAD (gst_audio_aggregator_convert_pad_get_type())
gpointer _gst_reserved[GST_PADDING];
};
-GST_EXPORT
+GST_AUDIO_API
GType gst_audio_aggregator_convert_pad_get_type (void);
/**************************
* GstAggregator methods *
************************/
-GST_EXPORT
+GST_AUDIO_API
GType gst_audio_aggregator_get_type(void);
-GST_EXPORT
+GST_AUDIO_API
void gst_audio_aggregator_set_sink_caps (GstAudioAggregator * aagg,
GstAudioAggregatorPad * pad,
GstCaps * caps);
gpointer _gst_reserved[GST_PADDING];
};
-GST_EXPORT
+GST_AUDIO_API
GType gst_audio_base_sink_get_type(void);
-GST_EXPORT
+GST_AUDIO_API
GstAudioRingBuffer *
gst_audio_base_sink_create_ringbuffer (GstAudioBaseSink *sink);
-GST_EXPORT
+GST_AUDIO_API
void gst_audio_base_sink_set_provide_clock (GstAudioBaseSink *sink, gboolean provide);
-GST_EXPORT
+GST_AUDIO_API
gboolean gst_audio_base_sink_get_provide_clock (GstAudioBaseSink *sink);
-GST_EXPORT
+GST_AUDIO_API
void gst_audio_base_sink_set_slave_method (GstAudioBaseSink *sink,
GstAudioBaseSinkSlaveMethod method);
-GST_EXPORT
+GST_AUDIO_API
GstAudioBaseSinkSlaveMethod
gst_audio_base_sink_get_slave_method (GstAudioBaseSink *sink);
-GST_EXPORT
+GST_AUDIO_API
void gst_audio_base_sink_set_drift_tolerance (GstAudioBaseSink *sink,
gint64 drift_tolerance);
-GST_EXPORT
+GST_AUDIO_API
gint64 gst_audio_base_sink_get_drift_tolerance (GstAudioBaseSink *sink);
-GST_EXPORT
+GST_AUDIO_API
void gst_audio_base_sink_set_alignment_threshold (GstAudioBaseSink * sink,
GstClockTime alignment_threshold);
-GST_EXPORT
+GST_AUDIO_API
GstClockTime
gst_audio_base_sink_get_alignment_threshold (GstAudioBaseSink * sink);
-GST_EXPORT
+GST_AUDIO_API
void gst_audio_base_sink_set_discont_wait (GstAudioBaseSink * sink,
GstClockTime discont_wait);
-GST_EXPORT
+GST_AUDIO_API
GstClockTime
gst_audio_base_sink_get_discont_wait (GstAudioBaseSink * sink);
-GST_EXPORT
+GST_AUDIO_API
void
gst_audio_base_sink_set_custom_slaving_callback (GstAudioBaseSink * sink,
GstAudioBaseSinkCustomSlavingCallback callback,
gpointer user_data,
GDestroyNotify notify);
-GST_EXPORT
+GST_AUDIO_API
void gst_audio_base_sink_report_device_failure (GstAudioBaseSink * sink);
#ifdef G_DEFINE_AUTOPTR_CLEANUP_FUNC
gpointer _gst_reserved[GST_PADDING];
};
-GST_EXPORT
+GST_AUDIO_API
GType gst_audio_base_src_get_type(void);
-GST_EXPORT
+GST_AUDIO_API
GstAudioRingBuffer *
gst_audio_base_src_create_ringbuffer (GstAudioBaseSrc *src);
-GST_EXPORT
+GST_AUDIO_API
void gst_audio_base_src_set_provide_clock (GstAudioBaseSrc *src, gboolean provide);
-GST_EXPORT
+GST_AUDIO_API
gboolean gst_audio_base_src_get_provide_clock (GstAudioBaseSrc *src);
-GST_EXPORT
+GST_AUDIO_API
void gst_audio_base_src_set_slave_method (GstAudioBaseSrc *src,
GstAudioBaseSrcSlaveMethod method);
-GST_EXPORT
+GST_AUDIO_API
GstAudioBaseSrcSlaveMethod
gst_audio_base_src_get_slave_method (GstAudioBaseSrc *src);
gpointer _gst_reserved[GST_PADDING_LARGE];
};
-GST_EXPORT
+GST_AUDIO_API
GType gst_audio_cd_src_get_type (void);
-GST_EXPORT
+GST_AUDIO_API
gboolean gst_audio_cd_src_add_track (GstAudioCdSrc * src,
GstAudioCdSrcTrack * track);
gpointer _gst_reserved[GST_PADDING];
};
-GST_EXPORT
+GST_AUDIO_API
GType gst_audio_clock_get_type (void);
-GST_EXPORT
+GST_AUDIO_API
GstClock* gst_audio_clock_new (const gchar *name, GstAudioClockGetTimeFunc func,
gpointer user_data, GDestroyNotify destroy_notify);
-GST_EXPORT
+GST_AUDIO_API
void gst_audio_clock_reset (GstAudioClock *clock, GstClockTime time);
-GST_EXPORT
+GST_AUDIO_API
GstClockTime gst_audio_clock_get_time (GstAudioClock * clock);
-GST_EXPORT
+GST_AUDIO_API
GstClockTime gst_audio_clock_adjust (GstAudioClock * clock, GstClockTime time);
-GST_EXPORT
+GST_AUDIO_API
void gst_audio_clock_invalidate (GstAudioClock * clock);
#ifdef G_DEFINE_AUTOPTR_CLEANUP_FUNC
/* do not use this one, use macro below */
-GST_EXPORT
+GST_AUDIO_API
GstFlowReturn _gst_audio_decoder_error (GstAudioDecoder *dec, gint weight,
GQuark domain, gint code,
gchar *txt, gchar *debug,
gpointer _gst_reserved[GST_PADDING_LARGE - 4];
};
-GST_EXPORT
+GST_AUDIO_API
GType gst_audio_decoder_get_type (void);
-GST_EXPORT
+GST_AUDIO_API
gboolean gst_audio_decoder_set_output_format (GstAudioDecoder * dec,
const GstAudioInfo * info);
-GST_EXPORT
+GST_AUDIO_API
GstCaps * gst_audio_decoder_proxy_getcaps (GstAudioDecoder * decoder,
GstCaps * caps,
GstCaps * filter);
-GST_EXPORT
+GST_AUDIO_API
gboolean gst_audio_decoder_negotiate (GstAudioDecoder * dec);
-GST_EXPORT
+GST_AUDIO_API
GstFlowReturn gst_audio_decoder_finish_frame (GstAudioDecoder * dec,
GstBuffer * buf, gint frames);
-GST_EXPORT
+GST_AUDIO_API
GstBuffer * gst_audio_decoder_allocate_output_buffer (GstAudioDecoder * dec,
gsize size);
/* context parameters */
-GST_EXPORT
+GST_AUDIO_API
GstAudioInfo * gst_audio_decoder_get_audio_info (GstAudioDecoder * dec);
-GST_EXPORT
+GST_AUDIO_API
void gst_audio_decoder_set_plc_aware (GstAudioDecoder * dec,
gboolean plc);
-GST_EXPORT
+GST_AUDIO_API
gint gst_audio_decoder_get_plc_aware (GstAudioDecoder * dec);
-GST_EXPORT
+GST_AUDIO_API
void gst_audio_decoder_set_estimate_rate (GstAudioDecoder * dec,
gboolean enabled);
-GST_EXPORT
+GST_AUDIO_API
gint gst_audio_decoder_get_estimate_rate (GstAudioDecoder * dec);
-GST_EXPORT
+GST_AUDIO_API
gint gst_audio_decoder_get_delay (GstAudioDecoder * dec);
-GST_EXPORT
+GST_AUDIO_API
void gst_audio_decoder_set_max_errors (GstAudioDecoder * dec,
gint num);
-GST_EXPORT
+GST_AUDIO_API
gint gst_audio_decoder_get_max_errors (GstAudioDecoder * dec);
-GST_EXPORT
+GST_AUDIO_API
void gst_audio_decoder_set_latency (GstAudioDecoder * dec,
GstClockTime min,
GstClockTime max);
-GST_EXPORT
+GST_AUDIO_API
void gst_audio_decoder_get_latency (GstAudioDecoder * dec,
GstClockTime * min,
GstClockTime * max);
-GST_EXPORT
+GST_AUDIO_API
void gst_audio_decoder_get_parse_state (GstAudioDecoder * dec,
gboolean * sync,
gboolean * eos);
-GST_EXPORT
+GST_AUDIO_API
void gst_audio_decoder_set_allocation_caps (GstAudioDecoder * dec,
GstCaps * allocation_caps);
/* object properties */
-GST_EXPORT
+GST_AUDIO_API
void gst_audio_decoder_set_plc (GstAudioDecoder * dec,
gboolean enabled);
-GST_EXPORT
+GST_AUDIO_API
gboolean gst_audio_decoder_get_plc (GstAudioDecoder * dec);
-GST_EXPORT
+GST_AUDIO_API
void gst_audio_decoder_set_min_latency (GstAudioDecoder * dec,
GstClockTime num);
-GST_EXPORT
+GST_AUDIO_API
GstClockTime gst_audio_decoder_get_min_latency (GstAudioDecoder * dec);
-GST_EXPORT
+GST_AUDIO_API
void gst_audio_decoder_set_tolerance (GstAudioDecoder * dec,
GstClockTime tolerance);
-GST_EXPORT
+GST_AUDIO_API
GstClockTime gst_audio_decoder_get_tolerance (GstAudioDecoder * dec);
-GST_EXPORT
+GST_AUDIO_API
void gst_audio_decoder_set_drainable (GstAudioDecoder * dec,
gboolean enabled);
-GST_EXPORT
+GST_AUDIO_API
gboolean gst_audio_decoder_get_drainable (GstAudioDecoder * dec);
-GST_EXPORT
+GST_AUDIO_API
void gst_audio_decoder_set_needs_format (GstAudioDecoder * dec,
gboolean enabled);
-GST_EXPORT
+GST_AUDIO_API
gboolean gst_audio_decoder_get_needs_format (GstAudioDecoder * dec);
-GST_EXPORT
+GST_AUDIO_API
void gst_audio_decoder_get_allocator (GstAudioDecoder * dec,
GstAllocator ** allocator,
GstAllocationParams * params);
-GST_EXPORT
+GST_AUDIO_API
void gst_audio_decoder_merge_tags (GstAudioDecoder * dec,
const GstTagList * tags, GstTagMergeMode mode);
-GST_EXPORT
+GST_AUDIO_API
void gst_audio_decoder_set_use_default_pad_acceptcaps (GstAudioDecoder * decoder,
gboolean use);
gpointer _gst_reserved[GST_PADDING_LARGE-3];
};
-GST_EXPORT
+GST_AUDIO_API
GType gst_audio_encoder_get_type (void);
-GST_EXPORT
+GST_AUDIO_API
GstFlowReturn gst_audio_encoder_finish_frame (GstAudioEncoder * enc,
GstBuffer * buffer,
gint samples);
-GST_EXPORT
+GST_AUDIO_API
GstCaps * gst_audio_encoder_proxy_getcaps (GstAudioEncoder * enc,
GstCaps * caps,
GstCaps * filter);
-GST_EXPORT
+GST_AUDIO_API
gboolean gst_audio_encoder_set_output_format (GstAudioEncoder * enc,
GstCaps * caps);
-GST_EXPORT
+GST_AUDIO_API
gboolean gst_audio_encoder_negotiate (GstAudioEncoder * enc);
-GST_EXPORT
+GST_AUDIO_API
GstBuffer * gst_audio_encoder_allocate_output_buffer (GstAudioEncoder * enc,
gsize size);
/* context parameters */
-GST_EXPORT
+GST_AUDIO_API
GstAudioInfo * gst_audio_encoder_get_audio_info (GstAudioEncoder * enc);
-GST_EXPORT
+GST_AUDIO_API
gint gst_audio_encoder_get_frame_samples_min (GstAudioEncoder * enc);
-GST_EXPORT
+GST_AUDIO_API
void gst_audio_encoder_set_frame_samples_min (GstAudioEncoder * enc, gint num);
-GST_EXPORT
+GST_AUDIO_API
gint gst_audio_encoder_get_frame_samples_max (GstAudioEncoder * enc);
-GST_EXPORT
+GST_AUDIO_API
void gst_audio_encoder_set_frame_samples_max (GstAudioEncoder * enc, gint num);
-GST_EXPORT
+GST_AUDIO_API
gint gst_audio_encoder_get_frame_max (GstAudioEncoder * enc);
-GST_EXPORT
+GST_AUDIO_API
void gst_audio_encoder_set_frame_max (GstAudioEncoder * enc, gint num);
-GST_EXPORT
+GST_AUDIO_API
gint gst_audio_encoder_get_lookahead (GstAudioEncoder * enc);
-GST_EXPORT
+GST_AUDIO_API
void gst_audio_encoder_set_lookahead (GstAudioEncoder * enc, gint num);
-GST_EXPORT
+GST_AUDIO_API
void gst_audio_encoder_get_latency (GstAudioEncoder * enc,
GstClockTime * min,
GstClockTime * max);
-GST_EXPORT
+GST_AUDIO_API
void gst_audio_encoder_set_latency (GstAudioEncoder * enc,
GstClockTime min,
GstClockTime max);
-GST_EXPORT
+GST_AUDIO_API
void gst_audio_encoder_set_headers (GstAudioEncoder * enc,
GList * headers);
-GST_EXPORT
+GST_AUDIO_API
void gst_audio_encoder_set_allocation_caps (GstAudioEncoder * enc,
GstCaps * allocation_caps);
/* object properties */
-GST_EXPORT
+GST_AUDIO_API
void gst_audio_encoder_set_mark_granule (GstAudioEncoder * enc,
gboolean enabled);
-GST_EXPORT
+GST_AUDIO_API
gboolean gst_audio_encoder_get_mark_granule (GstAudioEncoder * enc);
-GST_EXPORT
+GST_AUDIO_API
void gst_audio_encoder_set_perfect_timestamp (GstAudioEncoder * enc,
gboolean enabled);
-GST_EXPORT
+GST_AUDIO_API
gboolean gst_audio_encoder_get_perfect_timestamp (GstAudioEncoder * enc);
-GST_EXPORT
+GST_AUDIO_API
void gst_audio_encoder_set_hard_resync (GstAudioEncoder * enc,
gboolean enabled);
-GST_EXPORT
+GST_AUDIO_API
gboolean gst_audio_encoder_get_hard_resync (GstAudioEncoder * enc);
-GST_EXPORT
+GST_AUDIO_API
void gst_audio_encoder_set_tolerance (GstAudioEncoder * enc,
GstClockTime tolerance);
-GST_EXPORT
+GST_AUDIO_API
GstClockTime gst_audio_encoder_get_tolerance (GstAudioEncoder * enc);
-GST_EXPORT
+GST_AUDIO_API
void gst_audio_encoder_set_hard_min (GstAudioEncoder * enc,
gboolean enabled);
-GST_EXPORT
+GST_AUDIO_API
gboolean gst_audio_encoder_get_hard_min (GstAudioEncoder * enc);
-GST_EXPORT
+GST_AUDIO_API
void gst_audio_encoder_set_drainable (GstAudioEncoder * enc,
gboolean enabled);
-GST_EXPORT
+GST_AUDIO_API
gboolean gst_audio_encoder_get_drainable (GstAudioEncoder * enc);
-GST_EXPORT
+GST_AUDIO_API
void gst_audio_encoder_get_allocator (GstAudioEncoder * enc,
GstAllocator ** allocator,
GstAllocationParams * params);
-GST_EXPORT
+GST_AUDIO_API
void gst_audio_encoder_merge_tags (GstAudioEncoder * enc,
const GstTagList * tags, GstTagMergeMode mode);
gpointer _gst_reserved[GST_PADDING];
};
-GST_EXPORT
+GST_AUDIO_API
GType gst_audio_filter_get_type (void);
-GST_EXPORT
+GST_AUDIO_API
void gst_audio_filter_class_add_pad_templates (GstAudioFilterClass * klass,
GstCaps * allowed_caps);
#include <gst/audio/gstaudioringbuffer.h>
-GST_EXPORT
+GST_AUDIO_API
guint gst_audio_iec61937_frame_size (const GstAudioRingBufferSpec * spec);
-GST_EXPORT
+GST_AUDIO_API
gboolean gst_audio_iec61937_payload (const guint8 * src, guint src_n,
guint8 * dst, guint dst_n,
const GstAudioRingBufferSpec * spec,
gfloat **matrix;
};
-GST_EXPORT
+GST_AUDIO_API
GType gst_audio_downmix_meta_api_get_type (void);
-GST_EXPORT
+GST_AUDIO_API
const GstMetaInfo * gst_audio_downmix_meta_get_info (void);
#define gst_buffer_get_audio_downmix_meta(b) ((GstAudioDownmixMeta*)gst_buffer_get_meta((b), GST_AUDIO_DOWNMIX_META_API_TYPE))
-GST_EXPORT
+GST_AUDIO_API
GstAudioDownmixMeta * gst_buffer_get_audio_downmix_meta_for_channels (GstBuffer *buffer,
const GstAudioChannelPosition *to_position,
gint to_channels);
-GST_EXPORT
+GST_AUDIO_API
GstAudioDownmixMeta * gst_buffer_add_audio_downmix_meta (GstBuffer *buffer,
const GstAudioChannelPosition *from_position,
gint from_channels,
guint64 end;
};
-GST_EXPORT
+GST_AUDIO_API
GType gst_audio_clipping_meta_api_get_type (void);
-GST_EXPORT
+GST_AUDIO_API
const GstMetaInfo * gst_audio_clipping_meta_get_info (void);
#define gst_buffer_get_audio_clipping_meta(b) ((GstAudioClippingMeta*)gst_buffer_get_meta((b), GST_AUDIO_CLIPPING_META_API_TYPE))
-GST_EXPORT
+GST_AUDIO_API
GstAudioClippingMeta * gst_buffer_add_audio_clipping_meta (GstBuffer *buffer,
GstFormat format,
guint64 start,
gpointer _gst_reserved[GST_PADDING];
};
-GST_EXPORT
+GST_AUDIO_API
GType gst_audio_ring_buffer_get_type(void);
/* callback stuff */
-GST_EXPORT
+GST_AUDIO_API
void gst_audio_ring_buffer_set_callback (GstAudioRingBuffer *buf,
GstAudioRingBufferCallback cb,
gpointer user_data);
-GST_EXPORT
+GST_AUDIO_API
void gst_audio_ring_buffer_set_callback_full (GstAudioRingBuffer *buf,
GstAudioRingBufferCallback cb,
gpointer user_data,
GDestroyNotify notify);
-GST_EXPORT
+GST_AUDIO_API
gboolean gst_audio_ring_buffer_parse_caps (GstAudioRingBufferSpec *spec, GstCaps *caps);
-GST_EXPORT
+GST_AUDIO_API
void gst_audio_ring_buffer_debug_spec_caps (GstAudioRingBufferSpec *spec);
-GST_EXPORT
+GST_AUDIO_API
void gst_audio_ring_buffer_debug_spec_buff (GstAudioRingBufferSpec *spec);
-GST_EXPORT
+GST_AUDIO_API
gboolean gst_audio_ring_buffer_convert (GstAudioRingBuffer * buf, GstFormat src_fmt,
gint64 src_val, GstFormat dest_fmt,
gint64 * dest_val);
/* device state */
-GST_EXPORT
+GST_AUDIO_API
gboolean gst_audio_ring_buffer_open_device (GstAudioRingBuffer *buf);
-GST_EXPORT
+GST_AUDIO_API
gboolean gst_audio_ring_buffer_close_device (GstAudioRingBuffer *buf);
-GST_EXPORT
+GST_AUDIO_API
gboolean gst_audio_ring_buffer_device_is_open (GstAudioRingBuffer *buf);
/* allocate resources */
-GST_EXPORT
+GST_AUDIO_API
gboolean gst_audio_ring_buffer_acquire (GstAudioRingBuffer *buf, GstAudioRingBufferSpec *spec);
-GST_EXPORT
+GST_AUDIO_API
gboolean gst_audio_ring_buffer_release (GstAudioRingBuffer *buf);
-GST_EXPORT
+GST_AUDIO_API
gboolean gst_audio_ring_buffer_is_acquired (GstAudioRingBuffer *buf);
/* set the device channel positions */
-GST_EXPORT
+GST_AUDIO_API
void gst_audio_ring_buffer_set_channel_positions (GstAudioRingBuffer *buf, const GstAudioChannelPosition *position);
/* activating */
-GST_EXPORT
+GST_AUDIO_API
gboolean gst_audio_ring_buffer_activate (GstAudioRingBuffer *buf, gboolean active);
-GST_EXPORT
+GST_AUDIO_API
gboolean gst_audio_ring_buffer_is_active (GstAudioRingBuffer *buf);
/* flushing */
-GST_EXPORT
+GST_AUDIO_API
void gst_audio_ring_buffer_set_flushing (GstAudioRingBuffer *buf, gboolean flushing);
-GST_EXPORT
+GST_AUDIO_API
gboolean gst_audio_ring_buffer_is_flushing (GstAudioRingBuffer *buf);
/* playback/pause */
-GST_EXPORT
+GST_AUDIO_API
gboolean gst_audio_ring_buffer_start (GstAudioRingBuffer *buf);
-GST_EXPORT
+GST_AUDIO_API
gboolean gst_audio_ring_buffer_pause (GstAudioRingBuffer *buf);
-GST_EXPORT
+GST_AUDIO_API
gboolean gst_audio_ring_buffer_stop (GstAudioRingBuffer *buf);
/* get status */
-GST_EXPORT
+GST_AUDIO_API
guint gst_audio_ring_buffer_delay (GstAudioRingBuffer *buf);
-GST_EXPORT
+GST_AUDIO_API
guint64 gst_audio_ring_buffer_samples_done (GstAudioRingBuffer *buf);
-GST_EXPORT
+GST_AUDIO_API
void gst_audio_ring_buffer_set_sample (GstAudioRingBuffer *buf, guint64 sample);
/* clear all segments */
-GST_EXPORT
+GST_AUDIO_API
void gst_audio_ring_buffer_clear_all (GstAudioRingBuffer *buf);
/* commit samples */
-GST_EXPORT
+GST_AUDIO_API
guint gst_audio_ring_buffer_commit (GstAudioRingBuffer * buf, guint64 *sample,
guint8 * data, gint in_samples,
gint out_samples, gint * accum);
/* read samples */
-GST_EXPORT
+GST_AUDIO_API
guint gst_audio_ring_buffer_read (GstAudioRingBuffer *buf, guint64 sample,
guint8 *data, guint len, GstClockTime *timestamp);
/* Set timestamp on buffer */
-GST_EXPORT
+GST_AUDIO_API
void gst_audio_ring_buffer_set_timestamp (GstAudioRingBuffer * buf, gint readseg, GstClockTime
timestamp);
gboolean gst_audio_ring_buffer_prepare_write (GstAudioRingBuffer *buf, gint *segment, guint8 **writeptr, gint *len);
*/
-GST_EXPORT
+GST_AUDIO_API
gboolean gst_audio_ring_buffer_prepare_read (GstAudioRingBuffer *buf, gint *segment,
guint8 **readptr, gint *len);
-GST_EXPORT
+GST_AUDIO_API
void gst_audio_ring_buffer_clear (GstAudioRingBuffer *buf, gint segment);
-GST_EXPORT
+GST_AUDIO_API
void gst_audio_ring_buffer_advance (GstAudioRingBuffer *buf, guint advance);
-GST_EXPORT
+GST_AUDIO_API
void gst_audio_ring_buffer_may_start (GstAudioRingBuffer *buf, gboolean allowed);
#ifdef G_DEFINE_AUTOPTR_CLEANUP_FUNC
gpointer _gst_reserved[GST_PADDING];
};
-GST_EXPORT
+GST_AUDIO_API
GType gst_audio_sink_get_type(void);
#ifdef G_DEFINE_AUTOPTR_CLEANUP_FUNC
gpointer _gst_reserved[GST_PADDING];
};
-GST_EXPORT
+GST_AUDIO_API
GType gst_audio_src_get_type(void);
#ifdef G_DEFINE_AUTOPTR_CLEANUP_FUNC
#define __GST_AUDIO_STREAM_ALIGN_H__
#include <gst/gst.h>
+#include <gst/audio/audio-prelude.h>
G_BEGIN_DECLS
typedef struct _GstAudioStreamAlign GstAudioStreamAlign;
-GST_EXPORT
+GST_AUDIO_API
GType gst_audio_stream_align_get_type (void);
-GST_EXPORT
+GST_AUDIO_API
GstAudioStreamAlign * gst_audio_stream_align_new (gint rate,
GstClockTime alignment_threshold,
GstClockTime discont_wait);
-GST_EXPORT
+GST_AUDIO_API
GstAudioStreamAlign * gst_audio_stream_align_copy (const GstAudioStreamAlign * align);
-GST_EXPORT
+GST_AUDIO_API
void gst_audio_stream_align_free (GstAudioStreamAlign * align);
-GST_EXPORT
+GST_AUDIO_API
void gst_audio_stream_align_set_rate (GstAudioStreamAlign * align,
gint rate);
-GST_EXPORT
+GST_AUDIO_API
gint gst_audio_stream_align_get_rate (GstAudioStreamAlign * align);
-GST_EXPORT
+GST_AUDIO_API
void gst_audio_stream_align_set_alignment_threshold (GstAudioStreamAlign * align,
GstClockTime alignment_threshold);
-GST_EXPORT
+GST_AUDIO_API
GstClockTime gst_audio_stream_align_get_alignment_threshold (GstAudioStreamAlign * align);
-GST_EXPORT
+GST_AUDIO_API
void gst_audio_stream_align_set_discont_wait (GstAudioStreamAlign * align,
GstClockTime discont_wait);
-GST_EXPORT
+GST_AUDIO_API
GstClockTime gst_audio_stream_align_get_discont_wait (GstAudioStreamAlign * align);
-GST_EXPORT
+GST_AUDIO_API
void gst_audio_stream_align_mark_discont (GstAudioStreamAlign * align);
-GST_EXPORT
+GST_AUDIO_API
GstClockTime gst_audio_stream_align_get_timestamp_at_discont (GstAudioStreamAlign * align);
-GST_EXPORT
+GST_AUDIO_API
guint64 gst_audio_stream_align_get_samples_since_discont (GstAudioStreamAlign * align);
-GST_EXPORT
+GST_AUDIO_API
gboolean gst_audio_stream_align_process (GstAudioStreamAlign * align,
gboolean discont,
GstClockTime timestamp,
#define __GST_STREAM_VOLUME_H__
#include <gst/gst.h>
+#include <gst/audio/audio-prelude.h>
G_BEGIN_DECLS
GST_STREAM_VOLUME_FORMAT_DB
} GstStreamVolumeFormat;
-GST_EXPORT
+GST_AUDIO_API
GType gst_stream_volume_get_type (void);
-GST_EXPORT
+GST_AUDIO_API
void gst_stream_volume_set_volume (GstStreamVolume *volume,
GstStreamVolumeFormat format,
gdouble val);
-GST_EXPORT
+GST_AUDIO_API
gdouble gst_stream_volume_get_volume (GstStreamVolume *volume,
GstStreamVolumeFormat format);
-GST_EXPORT
+GST_AUDIO_API
void gst_stream_volume_set_mute (GstStreamVolume *volume,
gboolean mute);
-GST_EXPORT
+GST_AUDIO_API
gboolean gst_stream_volume_get_mute (GstStreamVolume *volume);
-GST_EXPORT
+GST_AUDIO_API
gdouble gst_stream_volume_convert_volume (GstStreamVolumeFormat from,
GstStreamVolumeFormat to,
gdouble val) G_GNUC_CONST;