summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorSebastian Dröge <slomo@circular-chaos.org>2008-02-22 06:12:07 +0000
committerSebastian Dröge <slomo@circular-chaos.org>2008-02-22 06:12:07 +0000
commitb750dbd5efb93ec58f4d85aee0709069fe4385f6 (patch)
tree070a473731a80b9d3743c5a4b9397b80b21d0c8a
parented7773728c669f1721e3d7554841db1c5826878e (diff)
downloadgst-plugins-bad-b750dbd5efb93ec58f4d85aee0709069fe4385f6.tar.gz
gst-plugins-bad-b750dbd5efb93ec58f4d85aee0709069fe4385f6.tar.bz2
gst-plugins-bad-b750dbd5efb93ec58f4d85aee0709069fe4385f6.zip
Remove hack to work with mjpegtools 1.9.0rc3 and above and instead use mjpeg_loglev_t() for getting the log levels. C...
Original commit message from CVS: Based on a patch by: Hans de Goede <j dot w dot r dot degoede at hhs dot nl> * configure.ac: * ext/mpeg2enc/gstmpeg2enc.cc: Remove hack to work with mjpegtools 1.9.0rc3 and above and instead use mjpeg_loglev_t() for getting the log levels. Check for this function in configure.ac as the pkg-config file doesn't tell us which release candidate we have. Fixes bug #517896.
-rw-r--r--ChangeLog12
-rw-r--r--configure.ac5
-rw-r--r--ext/mpeg2enc/gstmpeg2enc.cc37
3 files changed, 30 insertions, 24 deletions
diff --git a/ChangeLog b/ChangeLog
index 49692bba..bc2a9b6c 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,17 @@
2008-02-22 Sebastian Dröge <slomo@circular-chaos.org>
+ Based on a patch by:
+ Hans de Goede <j dot w dot r dot degoede at hhs dot nl>
+
+ * configure.ac:
+ * ext/mpeg2enc/gstmpeg2enc.cc:
+ Remove hack to work with mjpegtools 1.9.0rc3 and above and instead
+ use mjpeg_loglev_t() for getting the log levels. Check for this
+ function in configure.ac as the pkg-config file doesn't tell us
+ which release candidate we have. Fixes bug #517896.
+
+2008-02-22 Sebastian Dröge <slomo@circular-chaos.org>
+
* configure.ac:
Check for X for the nas plugin to make it possible to build it
again. Fixes bug #517895.
diff --git a/configure.ac b/configure.ac
index 3a14b814..f186b5e4 100644
--- a/configure.ac
+++ b/configure.ac
@@ -678,6 +678,11 @@ AG_GST_CHECK_FEATURE(MPEG2ENC, [mpeg2enc], mpeg2enc, [
mpeg2enc_headers_ok=yes
fi
+ if test "x$have_mpjegtools_19x" = "xyes"; then
+ AG_GST_CHECK_LIBHEADER(MJPEGTOOLS_19rc3, mpeg2encpp, mjpeg_loglev_t, $MPEG2ENC_LIBS, mjpeg_logging.h,
+ AC_DEFINE(GST_MJPEGTOOLS_19rc3, 1, [mjpegtools >= 1.9.3rc3 is used]))
+ fi
+
if test "x$mpeg2enc_headers_ok" = "xyes"; then
HAVE_MPEG2ENC="yes"
fi
diff --git a/ext/mpeg2enc/gstmpeg2enc.cc b/ext/mpeg2enc/gstmpeg2enc.cc
index 4c9d6ebf..2d9d1229 100644
--- a/ext/mpeg2enc/gstmpeg2enc.cc
+++ b/ext/mpeg2enc/gstmpeg2enc.cc
@@ -90,30 +90,6 @@ static GstStaticPadTemplate src_template = GST_STATIC_PAD_TEMPLATE ("src",
"mpegversion = (int) { 1, 2 }, " COMMON_VIDEO_CAPS)
);
-
-
-/* Workaround against stupid removal of the log_level_t enum in 1.9.0rc3.
- * Without it doesn't make much sense to implement a mjpeg_log_handler_t */
-#ifndef LOG_NONE
-#define LOG_NONE 0
-#endif
-
-#ifndef LOG_DEBUG
-#define LOG_DEBUG 1
-#endif
-
-#ifndef LOG_INFO
-#define LOG_INFO 2
-#endif
-
-#ifndef LOG_WARN
-#define LOG_WARN 3
-#endif
-
-#ifndef LOG_ERROR
-#define LOG_ERROR 4
-#endif
-
static void gst_mpeg2enc_finalize (GObject * object);
static void gst_mpeg2enc_reset (GstMpeg2enc * enc);
static gboolean gst_mpeg2enc_setcaps (GstPad * pad, GstCaps * caps);
@@ -679,6 +655,7 @@ gst_mpeg2enc_log_callback (log_level_t level, const char *message)
{
GstDebugLevel gst_level;
+#ifndef GST_MJPEGTOOLS_19rc3
switch (level) {
case LOG_NONE:
gst_level = GST_LEVEL_NONE;
@@ -696,6 +673,18 @@ gst_mpeg2enc_log_callback (log_level_t level, const char *message)
gst_level = GST_LEVEL_INFO;
break;
}
+#else
+ if (level == mjpeg_loglev_t ("debug"))
+ gst_level = GST_LEVEL_DEBUG;
+ else if (level == mjpeg_loglev_t ("info"))
+ gst_level = GST_LEVEL_INFO;
+ else if (level == mjpeg_loglev_t ("warn"))
+ gst_level = GST_LEVEL_WARNING;
+ else if (level == mjpeg_loglev_t ("error"))
+ gst_level = GST_LEVEL_ERROR;
+ else
+ gst_level = GST_LEVEL_INFO;
+#endif
gst_debug_log (mpeg2enc_debug, gst_level, "", "", 0, NULL, message);