Age | Commit message (Collapse) | Author |
|
mipsel64el, ppc64el, ia64, ppc64, sparc64 and x32 have different lengths
for long long ints, which result in some compilation errors.
Lets add some castings and inttypes macros to help the compiler deal
with this.
We have to use the castings, because kernel types (__u64 et al) does not
seem to be compatible with inttypes macros.
Signed-off-by: Ricardo Ribalda <ricardo@ribalda.com>
Reviewed-by: Sakari Ailus <sakari.ailus@linux.intel.com>
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
|
|
The YUVA32 and YUVX32 formats are permutations of other YUV 4:4:4 packed
pixel formats. Support them.
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
|
|
The video_do_capture() function overrides the error code when a failure
occurs. This prevents returning an error status to the calling process.
Fix it.
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
|
|
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
|
|
Add YUV32 to the list of supported pixel formats.
YUV32 represents the packed YUV format version with 4:4:4 subsampling
with 8-bits per component plus an additional alpha channel component in
the 8 MSB of the 32-bits word.
Signed-off-by: Jacopo Mondi <jacopo@jmondi.org>
Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
|
|
The --field option takes an argument selecting the field order. Update
the usage text to reflect this.
Signed-off-by: Niklas Söderlund <niklas.soderlund+renesas@ragnatech.se>
Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
|
|
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
|
|
The semicolons after the empty for loop statements are not needed.
Remove them.
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
|
|
Commit 4480b561404f ("Implement compound control set support") didn't
properly parse control array values. Fix it.
Fixes: 4480b561404f ("Implement compound control set support")
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
|
|
Help diagnosing problems by reporting the type of unsupported control
types instead of just printing "unsupported".
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
|
|
For kernel versions that didn't define the V4L2_CTRL_FLAG_HAS_PAYLOAD
flag, commits 2f146567186f ("Implement compound control get support")
and 4480b561404f ("Implement compound control set support") broke string
control support. Fix this by emulating the V4L2_CTRL_FLAG_HAS_PAYLOAD
and compound control API for the older API.
Fixes: 2f146567186f ("Implement compound control get support")
Fixes: 4480b561404f ("Implement compound control set support")
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
|
|
When a number of frames is specified, yavta will pause waiting for a key
press or a SIGUSR1 signal after the number of frames before continuing.
It will also create a file on disk named ".yavta.wait.<pid>" (where
<pid> is the process ID) in the local directory when pausing, and remove
it after resuming.
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
|
|
As we include a copy of the V4L2 kernel headers, there's no need for
conditional compilation to support old versions of the API.
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
|
|
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
|
|
Provide a new option '--reset-controls' which will enumerate the
available controls on a device or sub-device, and re-initialise them to
defaults.
Signed-off-by: Kieran Bingham <kieran.bingham@ideasonboard.com>
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
|
|
Only arrays of integer types are supported.
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
|
|
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
|
|
Use the new extended control query ioctl when available with an
automatic fall back to VIDIOC_QUERYCTRL.
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
|
|
Separate iteration over controls from printing, in order to reuse the
iteration to implement control reset.
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
|
|
This is necessary since video_open() may not be always called soon.
Signed-off-by: Sakari Ailus <sakari.ailus@iki.fi>
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
|
|
The V4L2_BUF_TYPE_META_OUTPUT mirrors the V4L2_BUF_TYPE_META_CAPTURE with
the exception that it is an OUTPUT type. The use case for this is to pass
buffers to the device that are not image data but metadata. The formats,
just as the metadata capture formats, are typically device specific and
highly structured.
Signed-off-by: Rajmohan Mani <rajmohan.mani@intel.com>
Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
|
|
Signed-off-by: Jacopo Mondi <jacopo@jmondi.org>
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
|
|
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
|
|
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
|
|
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
|
|
yavta is supposed not to requeue the last buffers before end of capture
(unless requested to do so with the --requeue-last option). However, the
logic is wrong, and only one of the last buffers is not requeued. Fix it
by skipping all of the last buffers.
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
|
|
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
|
|
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
|
|
Return the error code if video_enable() and VIDIOC_STREAMON
fails.
Signed-off-by: Tuukka Toivonen <tuukka.toivonen@intel.com>
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
|
|
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
|
|
Passing format "help" to the -f option will list the supported formats and
exit.
Signed-off-by: Sakari Ailus <sakari.ailus@linux.intel.com>
|
|
V4L2 requires reserved fields to be zeroed.
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
|
|
Commit d029d1d5bba831b9 ("Separate querying capabilities and determining
buffer queue type") broke capabilities printing. Fix it.
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Acked-by: Sakari Ailus <sakari.ailus@linux.intel.com>
|
|
When using the multiplanar API the v4l2_buffer bytesused field is
documented as ignored, and the planes array should be used instead.
Compute the total number of bytes used to be printed during capture
based on the planes array when using the multiplanar API.
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
|
|
The option itself was considered correctly, but a small but crucial break
statement was missing. --data-offset option does not take an argument
either.
Signed-off-by: Sakari Ailus <sakari.ailus@linux.intel.com>
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
|
|
Data prefix is a much better name for this (think of data_offset, for
instance).
Signed-off-by: Sakari Ailus <sakari.ailus@linux.intel.com>
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
|
|
Add support for these pixel formats:
V4L2_PIX_FMT_SBGGR10P
V4L2_PIX_FMT_SGBRG10P
V4L2_PIX_FMT_SGRBG10P
V4L2_PIX_FMT_SRGGB10P
Signed-off-by: Sakari Ailus <sakari.ailus@linux.intel.com>
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
|
|
Support data_offset for multi plane buffers. Also add an option to write the
data in the buffer before data offset (--buffer-prefix).
Signed-off-by: Sakari Ailus <sakari.ailus@linux.intel.com>
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
|
|
The plane size was left zero for mplane buffers when queueing a buffer. Fix
this.
Signed-off-by: Sakari Ailus <sakari.ailus@linux.intel.com>
[For consistency set buf.length for USERPTR buffers only]
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
|
|
Queue buffers to the device after VIDIOC_STREAMON, not before. This does not
affect queueing behaviour otherwise.
Signed-off-by: Sakari Ailus <sakari.ailus@linux.intel.com>
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
|
|
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
|
|
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
|
|
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
|
|
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
|
|
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
|
|
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
|
|
Copy timestamp type will mean the timestamp is be copied from the source to
the destination buffer on mem-to-mem devices.
Signed-off-by: Sakari Ailus <sakari.ailus@iki.fi>
|
|
Signed-off-by: Sakari Ailus <sakari.ailus@iki.fi>
|
|
Signed-off-by: Sakari Ailus <sakari.ailus@iki.fi>
|
|
Signed-off-by: Sakari Ailus <sakari.ailus@iki.fi>
|