summaryrefslogtreecommitdiffstats
path: root/gst/legacyresample/debug.c
diff options
context:
space:
mode:
Diffstat (limited to 'gst/legacyresample/debug.c')
-rw-r--r--gst/legacyresample/debug.c65
1 files changed, 65 insertions, 0 deletions
diff --git a/gst/legacyresample/debug.c b/gst/legacyresample/debug.c
new file mode 100644
index 00000000..27877277
--- /dev/null
+++ b/gst/legacyresample/debug.c
@@ -0,0 +1,65 @@
+
+#ifdef HAVE_CONFIG_H
+#include "config.h"
+#endif
+
+#include <glib.h>
+#include <stdio.h>
+#include <debug.h>
+
+static const char *resample_debug_level_names[] = {
+ "NONE",
+ "ERROR",
+ "WARNING",
+ "INFO",
+ "DEBUG",
+ "LOG"
+};
+
+static int resample_debug_level = RESAMPLE_LEVEL_ERROR;
+
+void
+resample_debug_log (int level, const char *file, const char *function,
+ int line, const char *format, ...)
+{
+#ifndef GLIB_COMPAT
+ va_list varargs;
+ char *s;
+
+ if (level > resample_debug_level)
+ return;
+
+ va_start (varargs, format);
+ s = g_strdup_vprintf (format, varargs);
+ va_end (varargs);
+
+ fprintf (stderr, "RESAMPLE: %s: %s(%d): %s: %s\n",
+ resample_debug_level_names[level], file, line, function, s);
+ g_free (s);
+#else
+ va_list varargs;
+ char s[1000];
+
+ if (level > resample_debug_level)
+ return;
+
+ va_start (varargs, format);
+ vsnprintf (s, 999, format, varargs);
+ va_end (varargs);
+
+ fprintf (stderr, "RESAMPLE: %s: %s(%d): %s: %s\n",
+ resample_debug_level_names[level], file, line, function, s);
+#endif
+}
+
+void
+resample_debug_set_level (int level)
+{
+ resample_debug_level = level;
+}
+
+int
+resample_debug_get_level (void)
+{
+ return resample_debug_level;
+}