summaryrefslogtreecommitdiffstats
path: root/sys/oss/gstosshelper.h
diff options
context:
space:
mode:
Diffstat (limited to 'sys/oss/gstosshelper.h')
-rw-r--r--sys/oss/gstosshelper.h122
1 files changed, 7 insertions, 115 deletions
diff --git a/sys/oss/gstosshelper.h b/sys/oss/gstosshelper.h
index 9b7eebd5..1593fe39 100644
--- a/sys/oss/gstosshelper.h
+++ b/sys/oss/gstosshelper.h
@@ -2,11 +2,7 @@
* Copyright (C) 1999,2000 Erik Walthinsen <omega@cse.ogi.edu>
* 2000 Wim Taymans <wim.taymans@chello.be>
*
- * gstosshelper.h: helper functions for OSS Device handling. This
- * set of functions takes care of device setting/getting,
- * opening/closing devices, parsing caps to OSS formats/settings
- * or the other way around, device probing, supported format
- * probing and mixer integration.
+ * gstosshelper.h: OSS helper routines.
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Library General Public
@@ -24,128 +20,24 @@
* Boston, MA 02111-1307, USA.
*/
+
#ifndef __GST_OSS_HELPER_H__
#define __GST_OSS_HELPER_H__
+
#include <gst/gst.h>
#include <sys/types.h>
-/* debugging category */
-GST_DEBUG_CATEGORY_EXTERN (oss_debug);
-#define GST_CAT_DEFAULT oss_debug
-
-G_BEGIN_DECLS
-
-enum {
- ARG_0,
- OSS_ARG_DEVICE,
- OSS_ARG_MIXER_DEVICE,
- OSS_ARG_DEVICE_NAME,
- OSS_ARG_0
-};
-
-typedef enum {
- GST_OSS_MODE_READ,
- GST_OSS_MODE_WRITE,
- GST_OSS_MODE_VOLUME,
- GST_OSS_MODE_MIXER
-} GstOssOpenMode;
-
-/*
- * Embed those two in whatever object you're creating.
- */
-
-typedef struct _GstOssDeviceCombination {
- gchar *dsp, *mixer;
- dev_t dev;
-} GstOssDeviceCombination;
-
-typedef struct _GstOssDevice {
- /* device state */
- int fd;
- int caps; /* the capabilities */
- gint format;
- gint fragment;
- guint64 fragment_time;
- gint fragment_size;
- GstOssOpenMode mode;
- GstCaps *probed_caps;
+#include "gstosshelper.h"
- /* stats bytes per *second* */
- guint bps;
- /* sample width in bytes */
- guint sample_width;
-
- /* parameters */
- gint law;
- gint endianness;
- gboolean sign;
- gint width;
- gint depth;
- gint channels;
- gint rate;
-
- /* mixer stuff */
- GList *tracklist;
- guint32 stereomask,
- recdevs,
- recmask,
- mixcaps;
- gint mixer_fd;
- gchar *device_name;
-} GstOssDevice;
-
-/*
- * class/type/interface handling for mixer/device handling.
- */
-void gst_oss_add_mixer_type (GType type);
-void gst_oss_add_device_properties (GstElementClass * klass);
-void gst_oss_set_device_property (GstElement * element,
- GstOssDeviceCombination * c,
- GstOssDevice * dev,
- guint prop_id,
- GParamSpec * pspec,
- const GValue * value);
-void gst_oss_get_device_property (GstElement * element,
- GstOssDeviceCombination * c,
- GstOssDevice * d,
- guint prop_id,
- GParamSpec * pspec,
- GValue * value);
-
-/*
- * device open/close.
- */
-void gst_oss_init (GObject * obj,
- GstOssDeviceCombination * c,
- GstOssDevice * dev,
- GstOssOpenMode mode);
-void gst_oss_dispose (GstOssDeviceCombination * c,
- GstOssDevice * dev);
-gboolean gst_oss_open (GstElement * element,
- GstOssDeviceCombination * c,
- GstOssDevice * dev);
-void gst_oss_close (GstOssDevice * dev);
+G_BEGIN_DECLS
-/*
- * caps parsing/probing.
- */
-gboolean gst_oss_parse_caps (GstOssDevice * dev,
- const GstCaps * caps);
-gboolean gst_oss_merge_fixed_caps (GstOssDevice * dev,
- GstCaps * caps);
-gboolean gst_oss_sync_parms (GstOssDevice * dev);
-void gst_oss_reset (GstOssDevice * dev);
+GstCaps* gst_oss_helper_probe_caps (gint fd);
-gboolean gst_oss_convert (GstOssDevice * dev,
- GstFormat src_format,
- gint64 src_value,
- GstFormat * dest_format,
- gint64 * dest_value);
-void gst_oss_probe_caps (GstOssDevice * dev);
G_END_DECLS
+
#endif /* __GST_OSS_HELPER_H__ */