GNOME Bugzilla – Bug 722128
v4l2: Implement video decoder
Last modified: 2014-02-25 20:04:39 UTC
Created attachment 266193 [details] [review] Video Decoder The following patch introduce a decoder for V4L2 based drivers. This has been tested mostly on Exynos and should represent a good base for other paltforms.
Created attachment 266194 [details] [review] Latency Calculate latency from driver buffering requirement.
Created attachment 266195 [details] [review] Create 1 element per device This is to allow auto-plugin and support of multiple decoder drivers on the same platform.
Comment on attachment 266194 [details] [review] Latency Maybe also useful in the source element?
(In reply to comment #3) > (From update of attachment 266194 [details] [review]) > Maybe also useful in the source element? I've grepped the kernel, and there is no driver that currently uses this in a source. Source latency is pretty much unknown at the moment.
Created attachment 270309 [details] [review] [PATCH] v4l2videodec: Calculate latency from device information Decoders or other devices that expose a minimum buffers required produce an first output. We use this information to calculate latency. https://bugzilla.gnome.org/show_bug.cgi?id=722128 --- sys/v4l2/gstv4l2object.c | 1 + sys/v4l2/gstv4l2object.h | 4 ++++ sys/v4l2/gstv4l2videodec.c | 5 +++++ 3 files changed, 10 insertions(+)
Created attachment 270310 [details] [review] [PATCH] v4l2videodec: Create one element per device For each videoCdevice probe it input/output capabilities if it match with video decoder requirement register a new element. Signed-off-by: Benjamin Gaignard <benjamin.gaignard@linaro.org> https://bugzilla.gnome.org/show_bug.cgi?id=722128 --- sys/v4l2/gstv4l2.c | 3 +- sys/v4l2/gstv4l2object.c | 2 +- sys/v4l2/gstv4l2object.h | 2 + sys/v4l2/gstv4l2videodec.c | 219 +++++++++++++++++++++++++++++++++++++++++---- sys/v4l2/gstv4l2videodec.h | 2 + 5 files changed, 206 insertions(+), 22 deletions(-)
Created attachment 270311 [details] [review] [PATCH] v4l2videodec: Implement v4l2videodec Implement an element that can driver V4L2 M2M decoder device. https://bugzilla.gnome.org/show_bug.cgi?id=722128 --- sys/v4l2/Makefile.am | 2 + sys/v4l2/gstv4l2.c | 3 + sys/v4l2/gstv4l2videodec.c | 758 +++++++++++++++++++++++++++++++++++++++++++++ sys/v4l2/gstv4l2videodec.h | 82 +++++ sys/v4l2/v4l2_calls.c | 26 ++ 5 files changed, 871 insertions(+)
Created attachment 270312 [details] [review] [PATCH] v4l2videodec: Calculate latency from device information Decoders or other devices that expose a minimum buffers required produce an first output. We use this information to calculate latency. https://bugzilla.gnome.org/show_bug.cgi?id=722128 --- sys/v4l2/gstv4l2object.c | 1 + sys/v4l2/gstv4l2object.h | 4 ++++ sys/v4l2/gstv4l2videodec.c | 5 +++++ 3 files changed, 10 insertions(+)
Created attachment 270313 [details] [review] [PATCH] v4l2videodec: Create one element per device For each videoCdevice probe it input/output capabilities if it match with video decoder requirement register a new element. Signed-off-by: Benjamin Gaignard <benjamin.gaignard@linaro.org> https://bugzilla.gnome.org/show_bug.cgi?id=722128 --- sys/v4l2/gstv4l2.c | 3 +- sys/v4l2/gstv4l2object.c | 2 +- sys/v4l2/gstv4l2object.h | 2 + sys/v4l2/gstv4l2videodec.c | 219 +++++++++++++++++++++++++++++++++++++++++---- sys/v4l2/gstv4l2videodec.h | 2 + 5 files changed, 206 insertions(+), 22 deletions(-)
Created attachment 270314 [details] [review] [PATCH] v4l2: CAPTURE_MPLANE is well tested now https://bugzilla.gnome.org/show_bug.cgi?id=722128 --- sys/v4l2/v4l2_calls.c | 3 --- 1 file changed, 3 deletions(-)
Created attachment 270316 [details] [review] [PATCH] v4l2: Don't require parser for VP8 Until GStreamer has one (see bug722760), we should not require a parser for VP8. https://bugzilla.gnome.org/show_bug.cgi?id=722128 --- sys/v4l2/gstv4l2object.c | 5 +++++ 1 file changed, 5 insertions(+)
Created attachment 270317 [details] [review] [PATCH] v4l2videodec: Implement v4l2videodec Implement an element that can driver V4L2 M2M decoder device. https://bugzilla.gnome.org/show_bug.cgi?id=722128 --- sys/v4l2/Makefile.am | 2 + sys/v4l2/gstv4l2.c | 3 + sys/v4l2/gstv4l2videodec.c | 757 +++++++++++++++++++++++++++++++++++++++++++++ sys/v4l2/gstv4l2videodec.h | 81 +++++ sys/v4l2/v4l2_calls.c | 26 ++ 5 files changed, 869 insertions(+)
commit 82f2bf052add2442244ff1cb553f8861e3dc4857 Author: Nicolas Dufresne <nicolas.dufresne@collabora.com> Date: Tue Feb 11 16:27:08 2014 -0500 v4l2: Don't require parser for VP8 Until GStreamer has one (see bug722760), we should not require a parser for VP8. https://bugzilla.gnome.org/show_bug.cgi?id=722128 commit a1db7e8c6cbac373ed925b62e35e0778dfc3b1df Author: Nicolas Dufresne <nicolas.dufresne@collabora.com> Date: Mon Feb 10 17:08:25 2014 -0500 v4l2: CAPTURE_MPLANE is well tested now https://bugzilla.gnome.org/show_bug.cgi?id=722128 commit 2a870d7d9b8307ec510055f42937b359a53da0a5 Author: Benjamin Gaignard <benjamin.gaignard@linaro.org> Date: Wed Dec 18 09:56:35 2013 +0100 v4l2videodec: Create one element per device For each videoCdevice probe it input/output capabilities if it match with video decoder requirement register a new element. Signed-off-by: Benjamin Gaignard <benjamin.gaignard@linaro.org> https://bugzilla.gnome.org/show_bug.cgi?id=722128 commit bd51c37196e34f7085698ded049d2fad2b01db24 Author: Nicolas Dufresne <nicolas.dufresne@collabora.com> Date: Thu Dec 19 15:26:52 2013 -0500 v4l2videodec: Calculate latency from device information Decoders or other devices that expose a minimum buffers required produce an first output. We use this information to calculate latency. https://bugzilla.gnome.org/show_bug.cgi?id=722128 commit 61183670c0d65f47d112fba344b7e0a729d6723a Author: Nicolas Dufresne <nicolas.dufresne@collabora.com> Date: Thu Nov 28 17:14:18 2013 -0500 v4l2videodec: Implement v4l2videodec Implement an element that can driver V4L2 M2M decoder device. https://bugzilla.gnome.org/show_bug.cgi?id=722128