tests: camerabin: fix preview message handling
Preview messages now contain GstSamples instead of GstBuffers
This commit is contained in:
parent
0a831613a8
commit
9461db97c2
@ -209,7 +209,7 @@ guint32 test_id = 0;
|
|||||||
static gchar *image_filename;
|
static gchar *image_filename;
|
||||||
static gchar *video_filename;
|
static gchar *video_filename;
|
||||||
|
|
||||||
static GstBuffer *preview_buffer;
|
static GstSample *preview_sample;
|
||||||
static gchar *preview_filename;
|
static gchar *preview_filename;
|
||||||
static GstCaps *preview_caps;
|
static GstCaps *preview_caps;
|
||||||
static GstTagList *tags_found;
|
static GstTagList *tags_found;
|
||||||
@ -315,16 +315,16 @@ capture_bus_cb (GstBus * bus, GstMessage * message, gpointer data)
|
|||||||
GST_INFO ("image captured");
|
GST_INFO ("image captured");
|
||||||
} else if (st && gst_structure_has_name (st,
|
} else if (st && gst_structure_has_name (st,
|
||||||
GST_BASE_CAMERA_SRC_PREVIEW_MESSAGE_NAME)) {
|
GST_BASE_CAMERA_SRC_PREVIEW_MESSAGE_NAME)) {
|
||||||
GstBuffer *buf;
|
GstSample *sample;
|
||||||
const GValue *value;
|
const GValue *value;
|
||||||
|
|
||||||
value = gst_structure_get_value (st, "buffer");
|
value = gst_structure_get_value (st, "sample");
|
||||||
fail_unless (value != NULL);
|
fail_unless (value != NULL);
|
||||||
buf = gst_value_get_buffer (value);
|
sample = gst_value_get_sample (value);
|
||||||
|
|
||||||
if (preview_buffer)
|
if (preview_sample)
|
||||||
gst_buffer_unref (preview_buffer);
|
gst_sample_unref (preview_sample);
|
||||||
preview_buffer = gst_buffer_ref (buf);
|
preview_sample = gst_sample_ref (sample);
|
||||||
g_free (preview_filename);
|
g_free (preview_filename);
|
||||||
preview_filename = g_strdup (gst_structure_get_string (st, "location"));
|
preview_filename = g_strdup (gst_structure_get_string (st, "location"));
|
||||||
}
|
}
|
||||||
@ -338,13 +338,13 @@ check_preview_image (GstElement * camera, const gchar * filename, gint index)
|
|||||||
{
|
{
|
||||||
gchar *prev_filename = NULL;
|
gchar *prev_filename = NULL;
|
||||||
|
|
||||||
if (!preview_buffer && camera) {
|
if (!preview_sample && camera) {
|
||||||
GstMessage *msg = wait_for_element_message (camera,
|
GstMessage *msg = wait_for_element_message (camera,
|
||||||
GST_BASE_CAMERA_SRC_PREVIEW_MESSAGE_NAME, GST_CLOCK_TIME_NONE);
|
GST_BASE_CAMERA_SRC_PREVIEW_MESSAGE_NAME, GST_CLOCK_TIME_NONE);
|
||||||
fail_unless (msg != NULL);
|
fail_unless (msg != NULL);
|
||||||
gst_message_unref (msg);
|
gst_message_unref (msg);
|
||||||
}
|
}
|
||||||
fail_unless (preview_buffer != NULL);
|
fail_unless (preview_sample != NULL);
|
||||||
if (filename) {
|
if (filename) {
|
||||||
if (index >= 0) {
|
if (index >= 0) {
|
||||||
prev_filename = g_strdup_printf (filename, index);
|
prev_filename = g_strdup_printf (filename, index);
|
||||||
@ -355,11 +355,9 @@ check_preview_image (GstElement * camera, const gchar * filename, gint index)
|
|||||||
fail_unless (strcmp (preview_filename, prev_filename) == 0);
|
fail_unless (strcmp (preview_filename, prev_filename) == 0);
|
||||||
}
|
}
|
||||||
if (preview_caps) {
|
if (preview_caps) {
|
||||||
/* TODO porting
|
fail_unless (gst_sample_get_caps (preview_sample) != NULL);
|
||||||
fail_unless (GST_BUFFER_CAPS (preview_buffer) != NULL);
|
fail_unless (gst_caps_can_intersect (gst_sample_get_caps (preview_sample),
|
||||||
fail_unless (gst_caps_can_intersect (GST_BUFFER_CAPS (preview_buffer),
|
preview_caps));
|
||||||
preview_caps));
|
|
||||||
*/
|
|
||||||
}
|
}
|
||||||
g_free (prev_filename);
|
g_free (prev_filename);
|
||||||
}
|
}
|
||||||
@ -464,9 +462,9 @@ teardown (void)
|
|||||||
gst_caps_unref (preview_caps);
|
gst_caps_unref (preview_caps);
|
||||||
preview_caps = NULL;
|
preview_caps = NULL;
|
||||||
|
|
||||||
if (preview_buffer)
|
if (preview_sample)
|
||||||
gst_buffer_unref (preview_buffer);
|
gst_sample_unref (preview_sample);
|
||||||
preview_buffer = NULL;
|
preview_sample = NULL;
|
||||||
|
|
||||||
g_free (preview_filename);
|
g_free (preview_filename);
|
||||||
preview_filename = NULL;
|
preview_filename = NULL;
|
||||||
@ -648,16 +646,16 @@ wait_for_element_message (GstElement * camera, const gchar * name,
|
|||||||
const GstStructure *st = gst_message_get_structure (msg);
|
const GstStructure *st = gst_message_get_structure (msg);
|
||||||
if (gst_structure_has_name (st,
|
if (gst_structure_has_name (st,
|
||||||
GST_BASE_CAMERA_SRC_PREVIEW_MESSAGE_NAME)) {
|
GST_BASE_CAMERA_SRC_PREVIEW_MESSAGE_NAME)) {
|
||||||
GstBuffer *buf;
|
GstSample *sample;
|
||||||
const GValue *value;
|
const GValue *value;
|
||||||
|
|
||||||
value = gst_structure_get_value (st, "buffer");
|
value = gst_structure_get_value (st, "sample");
|
||||||
fail_unless (value != NULL);
|
fail_unless (value != NULL);
|
||||||
buf = gst_value_get_buffer (value);
|
sample = gst_value_get_sample (value);
|
||||||
|
|
||||||
if (preview_buffer)
|
if (preview_sample)
|
||||||
gst_buffer_unref (preview_buffer);
|
gst_sample_unref (preview_sample);
|
||||||
preview_buffer = gst_buffer_ref (buf);
|
preview_sample = gst_sample_ref (sample);
|
||||||
g_free (preview_filename);
|
g_free (preview_filename);
|
||||||
preview_filename =
|
preview_filename =
|
||||||
g_strdup (gst_structure_get_string (st, "location"));
|
g_strdup (gst_structure_get_string (st, "location"));
|
||||||
@ -1023,9 +1021,9 @@ GST_START_TEST (test_image_capture_previews)
|
|||||||
check_preview_image (camera, image_filename, i);
|
check_preview_image (camera, image_filename, i);
|
||||||
remove_file (image_filename, i);
|
remove_file (image_filename, i);
|
||||||
|
|
||||||
if (preview_buffer)
|
if (preview_sample)
|
||||||
gst_buffer_unref (preview_buffer);
|
gst_sample_unref (preview_sample);
|
||||||
preview_buffer = NULL;
|
preview_sample = NULL;
|
||||||
gst_caps_replace (&preview_caps, NULL);
|
gst_caps_replace (&preview_caps, NULL);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user