[Bug 738013] New: v4l2allocator: issue with import_userptr() in single-planar API when n_planes > 1
GStreamer (bugzilla.gnome.org)
bugzilla at gnome.org
Mon Oct 6 08:51:56 PDT 2014
https://bugzilla.gnome.org/show_bug.cgi?id=738013
GStreamer | gst-plugins-good | git
Summary: v4l2allocator: issue with import_userptr() in
single-planar API when n_planes > 1
Classification: Platform
Product: GStreamer
Version: git
OS/Version: Linux
Status: UNCONFIRMED
Severity: normal
Priority: Normal
Component: gst-plugins-good
AssignedTo: gstreamer-bugs at lists.freedesktop.org
ReportedBy: aurelien.zanelli at parrot.com
QAContact: gstreamer-bugs at lists.freedesktop.org
GNOME version: ---
Currently, userptr io-mode fails when we use the V4L2 single-planar API and
when format is semi-planar/planar with the following error:
0:00:00.593653349 356 0x75213b50 ERROR v4l2allocator
gst-plugins-good/sys/v4l2/gstv4l2allocator.c:1223:gst_v4l2_allocator_import_userptr:<v4l2sink0:pool:sink:allocator>
Got 2 userptr plane while driver need 1
0:00:00.593884880 356 0x75213b50 ERROR v4l2
gst-plugins-good/sys/v4l2/gstv4l2bufferpool.c:252:gst_v4l2_buffer_pool_import_userptr:<v4l2sink0:pool:sink>
failed to import data
0:00:00.594050395 356 0x75213b50 ERROR v4l2
gst-plugins-good/sys/v4l2/gstv4l2bufferpool.c:1756:gst_v4l2_buffer_pool_process:<v4l2sink0:pool:sink>
failed to prepare data
Pipeline which produce this error end with:
... ! video/x-raw,format=NV12 ! v4l2sink io-mode=3
In the gst_v4l2_allocator_import_userptr(), we check that n_planes !=
group->n_mem, if that true, we jump to n_mem_missmatch which returns in error.
In my example n_planes is 2 and group->n_mem is 1 because we use single-planar
API.
So in this case, I propose to distinguish the single-planar from the
multi-planar APIs.
Since the single-planar API expect planes to be contiguous, if n_planes differs
from group->n_mem, I think we will have to check that planes are contiguous and
import buffers only if this condition is true.
However I'm not sure how to do it so I will attach a patch which just assume
that planes are contiguous.
--
Configure bugmail: https://bugzilla.gnome.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the QA contact for the bug.
You are the assignee for the bug.
More information about the gstreamer-bugs
mailing list