/*!
* This file is part of CameraPlus.
*
- * Copyright (C) 2012 Mohammed Sameer <msameer@foolab.org>
+ * Copyright (C) 2012-2013 Mohammed Sameer <msameer@foolab.org>
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
return 0;
}
- QList<QtCamGStreamerMessageHandler *> list =
- map.values(gst_structure_get_name(s));
+#if 0
+ qDebug() << "Message" << gst_structure_get_name(s);
+#endif
+
+ QList<QtCamGStreamerMessageHandler *> list = map.values(gst_structure_get_name(s));
foreach (QtCamGStreamerMessageHandler *handler, list) {
handler->handleMessage(message);
QMetaObject::invokeMethod(q_ptr, "error", Q_ARG(QString, err->message),
Q_ARG(int, err->code), Q_ARG(QString, debug));
+#if 0
qDebug() << "Error" << err->message << ":" << debug;
+#endif
g_error_free(err);
g_free(debug);
break;
default:
- // TODO: other types
break;
}
}
static_cast<QtCamGStreamerMessageListenerPrivate *>(data);
if (d_ptr->handleSyncMessage(message)) {
- gst_message_unref(message);
- return GST_BUS_DROP;
+ // We need to pass the message.
+ // Issue is we have 2 video-done handlers, a sync and an async.
+ // If we drop the message then the async handler will never see it :|
+ return GST_BUS_PASS;
}
return GST_BUS_PASS;