diff options
Diffstat (limited to 'gst-libs/gst/interfaces/mixertrack.h')
-rw-r--r-- | gst-libs/gst/interfaces/mixertrack.h | 134 |
1 files changed, 0 insertions, 134 deletions
diff --git a/gst-libs/gst/interfaces/mixertrack.h b/gst-libs/gst/interfaces/mixertrack.h deleted file mode 100644 index 33296b9b..00000000 --- a/gst-libs/gst/interfaces/mixertrack.h +++ /dev/null @@ -1,134 +0,0 @@ -/* GStreamer Mixer - * Copyright (C) 2003 Ronald Bultje <rbultje@ronald.bitfreak.net> - * - * mixertrack.h: mixer track object - * - * 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., 59 Temple Place - Suite 330, - * Boston, MA 02111-1307, USA. - */ - -#ifndef __GST_MIXER_TRACK_H__ -#define __GST_MIXER_TRACK_H__ - -#include <gst/gst.h> - -G_BEGIN_DECLS - -#define GST_TYPE_MIXER_TRACK \ - (gst_mixer_track_get_type ()) -#define GST_MIXER_TRACK(obj) \ - (G_TYPE_CHECK_INSTANCE_CAST ((obj), GST_TYPE_MIXER_TRACK, \ - GstMixerTrack)) -#define GST_MIXER_TRACK_CLASS(klass) \ - (G_TYPE_CHECK_CLASS_CAST ((klass), GST_TYPE_MIXER_TRACK, \ - GstMixerTrackClass)) -#define GST_IS_MIXER_TRACK(obj) \ - (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GST_TYPE_MIXER_TRACK)) -#define GST_IS_MIXER_TRACK_CLASS(klass) \ - (G_TYPE_CHECK_CLASS_TYPE ((klass), GST_TYPE_MIXER_TRACK)) - -/* - * Naming: - * - * A track is a single input/output stream (e.g. line-in, - * microphone, etc.). Channels are then single streams - * within a track. A mono stream has one channel, a stereo - * stream has two, etc. - * - * Input tracks can have 'recording' enabled, which means - * that any input will be hearable into the speakers that - * are attached to the output. Mute is obvious. A track - * flagged as master is the master volume track on this - * mixer, which means that setting this track will change - * the hearable volume on any output. - */ -/** - * GstMixerTrackFlags: - * @GST_MIXER_TRACK_INPUT: mixer track is for input - * @GST_MIXER_TRACK_OUTPUT: mixer track is for output - * @GST_MIXER_TRACK_MUTE: input or output is muted - * @GST_MIXER_TRACK_RECORD: input is audible in speakers attached to output - * (for #GST_MIXER_TRACK_INPUT mixer tracks only) - * @GST_MIXER_TRACK_MASTER: this mixer track is likely to be the master control - * @GST_MIXER_TRACK_SOFTWARE: mixer track's' volume control is implemented - * in software (as opposed to a hardware control) - * @GST_MIXER_TRACK_NO_RECORD: input track lacks support for recordable. - * Since: 0.10.23 - * @GST_MIXER_TRACK_NO_MUTE: play track doesn't support mute. Since: 0.10.23 - * @GST_MIXER_TRACK_WHITELIST: track should be displayed "by default" in apps. - * Since: 0.10.23 - * @GST_MIXER_TRACK_READONLY: track is read-only. Since: 0.10.25 - * @GST_MIXER_TRACK_WRITEONLY: track is write-only. Since: 0.10.25 - * - * Mixer track flags. - */ -typedef enum { - GST_MIXER_TRACK_INPUT = (1<<0), - GST_MIXER_TRACK_OUTPUT = (1<<1), - GST_MIXER_TRACK_MUTE = (1<<2), - GST_MIXER_TRACK_RECORD = (1<<3), - GST_MIXER_TRACK_MASTER = (1<<4), - GST_MIXER_TRACK_SOFTWARE = (1<<5), - GST_MIXER_TRACK_NO_RECORD = (1<<6), - GST_MIXER_TRACK_NO_MUTE = (1<<7), - GST_MIXER_TRACK_WHITELIST = (1<<8), - GST_MIXER_TRACK_READONLY = (1<<9), - GST_MIXER_TRACK_WRITEONLY = (1<<10) -} GstMixerTrackFlags; - -/* FIXME 0.11: READONLY/WRITEONLY -> READABLE/WRITABLE etc. */ - -#define GST_MIXER_TRACK_HAS_FLAG(channel, flag) \ - ((channel)->flags & flag) - -typedef struct _GstMixerTrack GstMixerTrack; -typedef struct _GstMixerTrackClass GstMixerTrackClass; - -struct _GstMixerTrack { - GObject parent; - - gchar *label; - - /* FIXME 0.11: flags should be guint32 */ - GstMixerTrackFlags flags; - - gint num_channels; - gint min_volume; - gint max_volume; - - /* FIXME 0.11: add padding */ -}; - -struct _GstMixerTrackClass { - GObjectClass parent; - -#ifdef GST_MIXER_NEED_DEPRECATED - /* signals (deprecated) */ - void (* mute_toggled) (GstMixerTrack *channel, - gboolean mute); - void (* record_toggled) (GstMixerTrack *channel, - gboolean record); - void (* volume_changed) (GstMixerTrack *channel, - gint *volumes); -#endif /* GST_MIXER_NEED_DEPRECATED */ - - gpointer _gst_reserved[GST_PADDING]; -}; - -GType gst_mixer_track_get_type (void); - -G_END_DECLS - -#endif /* __GST_MIXER_TRACK_H__ */ |