amlv4l2dec: CB1 send error pts by SIGNAL_DECODED_PTS [1/1]
PD#SWPL-180184
Problem:
can't get es data when decode error
Solution:
send error pts by SIGNAL_DECODED_PTS,hwdmx will deal
Verify:
ap222
Change-Id: I53c71b699cb6a0d82f44a471f5d03536acc9c0e7
Signed-off-by: hanghang.luo <hanghang.luo@amlogic.com>
diff --git a/src/gstamlv4l2allocator.c b/src/gstamlv4l2allocator.c
index e9b97b4..118acf0 100644
--- a/src/gstamlv4l2allocator.c
+++ b/src/gstamlv4l2allocator.c
@@ -562,7 +562,7 @@
if (breq.capabilities & V4L2_BUF_CAP_SUPPORTS_ORPHANED_BUFS)
{
flags |= GST_V4L2_ALLOCATOR_FLAG_SUPPORTS_ORPHANED_BUFS;
- GST_ERROR_OBJECT(allocator, "v4l2 support GST_V4L2_ALLOCATOR_FLAG_SUPPORTS_ORPHANED_BUFS");
+ GST_DEBUG_OBJECT(allocator, "v4l2 support GST_V4L2_ALLOCATOR_FLAG_SUPPORTS_ORPHANED_BUFS");
}
return flags;
diff --git a/src/gstamlv4l2videodec.c b/src/gstamlv4l2videodec.c
index 66a12e5..d6243c2 100644
--- a/src/gstamlv4l2videodec.c
+++ b/src/gstamlv4l2videodec.c
@@ -1235,10 +1235,12 @@
g_mutex_unlock (&self->res_chg_lock);
return;
}
+
//decoding error happened
if (ret == GST_AML_V4L2_FLOW_DECODING_ERROR)
{
g_signal_emit (self, g_signals[SIGNAL_DECODED_ERROR_PTS], v4l2_pool->obj->error_frame_pts, NULL);
+ g_signal_emit (self, g_signals[SIGNAL_DECODED_PTS], 0, v4l2_pool->obj->error_frame_pts);
continue;
}