Age | Commit message (Collapse) | Author | Files | Lines |
|
Several audio helper functions that were in cec-compliance.cpp
really belong to cec-test-audio.cpp. Move them.
Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl>
|
|
Update headers from latest media_tree/master kernel.
Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl>
|
|
The warning about an invalid audio_out_delay was shown even
if the value was valid (1). Check if it is != 1 first.
Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl>
|
|
Correctly detect and log hdr10, mpeg2 and vp8 control types.
Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl>
|
|
Update to the latest kernel media headers.
Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl>
|
|
The compliance utility didn't detect that V4L2_PIX_FMT_VP8_FRAME
represents a stateless decoder. Add support for this.
Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl>
|
|
If audio_out_delay is not present in the message, then set
the value to 1.
Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl>
|
|
Found with -Wimplicit-fallthrough
Signed-off-by: Rosen Penev <rosenp@gmail.com>
Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl>
|
|
Found by -Wmissing-prototypes
Signed-off-by: Rosen Penev <rosenp@gmail.com>
Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl>
|
|
Use constexpr instead of const, ensuring these are all initialized
at compile time.
Signed-off-by: Rosen Penev <rosenp@gmail.com>
Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl>
|
|
Rephrase error message to avoid the ugly:
'Expected no warnings, got 1 warnings'
Now it says: 'Expected no warnings, but got 1'
Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl>
|
|
cec_ops_report_current_latency() hardcodes the audio_out_delay value
if it is unused, ignoring the actual value. Which is fine, except when
running a compliance test, then you want the actual value.
Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl>
|
|
The warning when a reserved audio out delay value was used
didn't include that value 1 should be used instead. Clarify
this.
Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl>
|
|
'type=list' lists all supported EDID types. This makes life a little
bit easier when trying out different EDIDs.
Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl>
|
|
Either report it as '0x010203 (Name)' or '0x010203, 66051',
depending on whether the Vendor ID is a vendor that is known
by libcecutil.
Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl>
|
|
The Vendor ID is just 24 bits, so report only 6 digits (%06x)
instead of 8 (%08x).
Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl>
|
|
Reported-by: Luca Di Gregorio <lucdig@gmail.com>
Signed-off-by: Sean Young <sean@mess.org>
|
|
If the controlling device simply stops sending audio rate messages, give
the cec-follower the ability to detect that it has not received an audio
rate message within 2 seconds as required. The cec-follower will quit the
audio rate controlled mode. Eliminate the need to measure an interval
between two audio rate messages.
Signed-off-by: Deborah Brouwer <deborahbrouwer3563@gmail.com>
Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl>
|
|
Measure the interval since the last audio rate control message in
nanoseconds instead of seconds. Increasing the precision catches audio
rate messages that are late by less than a second.
Signed-off-by: Deborah Brouwer <deborahbrouwer3563@gmail.com>
Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl>
|
|
The vivid controls are defined in two places: the header
and v4l2-test-buffers.cpp. Move them all to the header so they
are all in a single place.
Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl>
|
|
Fix this coverity report:
*** CID 1452658: Control flow issues (NO_EFFECT)
/utils/v4l2-dbg/v4l2-dbg.cpp: 567 in main()
561 if (doioctl(fd, VIDIOC_DBG_G_CHIP_INFO, &chip_info, "VIDIOC_DBG_G_CHIP_INFO") != 0)
562 chip_info.name[0] = '\0';
563
564 if (!strncasecmp(match.name, "ac97", 4)) {
565 curr_bd = &boards[AC97_BOARD];
566 } else {
>>> >>> CID 1452658: Control flow issues (NO_EFFECT)
>>> >>> This greater-than-or-equal-to-zero comparison of an unsigned value is always true. "board >= 0UL".
567 for (size_t board = boards.size() - 1; board >= 0; board--) {
568 if (!strcasecmp(chip_info.name, boards[board].name)) {
569 curr_bd = &boards[board];
570 break;
571 }
572 }
Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl>
Fixes: bafe32e7 ("v4l-utils: convert board_list to vector")
|
|
Add a test in cec-compliance that sends an Audio Rate Control message
with an invalid operand. Check that it receives a Feature Abort reply
due to the invalid operand. Add a response in cec-follower to Feature
Abort due to an invalid operand.
Signed-off-by: Deborah Brouwer <deborahbrouwer3563@gmail.com>
Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl>
|
|
The controlling device should send an Audio Rate Control message at least
once every 2 seconds for active sensing. Add a test in cec-compliance to
delay the message by more than 2 seconds. Check the interval between
messages in cec-follower and warn if the delay is greater than 2 seconds.
Signed-off-by: Deborah Brouwer <deborahbrouwer3563@gmail.com>
Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl>
|
|
An Audio System can support Audio Rate Control, so add the
Audio System as a possible source in the Set Audio Rate test.
Signed-off-by: Deborah Brouwer <deborahbrouwer3563@gmail.com>
Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl>
|
|
This struct is no longer used, remove it.
Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl>
|
|
Add missing const to the static struct mbus_name mbus_names array.
Use struct v4l2_subdev_mbus_code_enum mbus_code = {}; instead of
memsetting the struct to zero. This is based on a patch from
Rosen Penev <rosenp@gmail.com>.
Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl>
|
|
Forces evaluation at compile time and allows usage of a for range loop.
Signed-off-by: Rosen Penev <rosenp@gmail.com>
Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl>
|
|
Allows getting rid of sizeof macros.
Signed-off-by: Rosen Penev <rosenp@gmail.com>
Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl>
|
|
This is a C construct that is not really needed in C++.
Signed-off-by: Rosen Penev <rosenp@gmail.com>
Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl>
|
|
Found with modernize-use-nullptr
Signed-off-by: Rosen Penev <rosenp@gmail.com>
Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl>
|
|
Found with modernize-use-auto
Signed-off-by: Rosen Penev <rosenp@gmail.com>
Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl>
|
|
I found stvec to be a bit too obscure, so renamed it.
Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl>
|
|
Found with modernize-use-using
Signed-off-by: Rosen Penev <rosenp@gmail.com>
Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl>
|
|
Removes boilerplate code with a slight reduction in size.
Ran through git clang-format
Signed-off-by: Rosen Penev <rosenp@gmail.com>
Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl>
|
|
Easier to read and allows removing some boilerplate code. Only a
moderate size increase.
Ran through git clang-format
Signed-off-by: Rosen Penev <rosenp@gmail.com>
Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl>
|
|
FreeBSD doesn't have the same uevent and sys filesystem that Linux
does. So, use the VIDIOC_QUERYCAP ioctl to find out basic capabilities
for a device. The ioctl doesn't give us as much information, but it
gets things like webcams, VBIs, and radios. This is better than what
was there previously, which was returning unknown.
This makes some v4l-utils like v4l2-ctl a little more useful.
Signed-off-by: Trenton Schulz <trenton@norwegianrockcat.com>
Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl>
|
|
Since the addition of the --without-libudev option automatic detection
of missing libudev have been broken and fails with,
configure: error: Package requirements (libudev) were not met:
Package 'libudev', required by 'virtual:world', not found
This is because autotools macro PKG_CHECK_MODULES action-if-not-found
behaves differently from most other macros,
As most of the original autoconf macros, there are boolean values
provided, for the cases when the check succeeded or failed. In
contrast with almost all of the original macros, though, the default
action-if-not-found will end the execution with an error for not
having found the dependency.
As the AS_IF check following the PKG_CHECK_MODULES prints a warning if
libudev is not found the intention can't have been to fail configure if
libudev not found. Fix this by setting have_libudev=no instead of
failing due to the default action.
Fixes: 49316dc21f806d0c ("configure.ac: Add --without-libudev option to avoid automagic dep")
Signed-off-by: Niklas Söderlund <niklas.soderlund@ragnatech.se>
Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl>
|
|
If the v4l-utils repository is a git submodule the $(top_srcdir)/.git is
a file and not a directory. Update the shell checks to allow the test to
pass in both cases.
Signed-off-by: Niklas Söderlund <niklas.soderlund@ragnatech.se>
Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl>
|
|
Always log the translated vendor ID string if available.
This helps debugging.
Also add a new vendor ID string.
Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl>
|
|
It is only needed if BPF is effectively used and the package is compiled for a
systemd based target.
Signed-off-by: Ulrich Ölmann <u.oelmann@pengutronix.de>
Signed-off-by: Sean Young <sean@mess.org>
|
|
Import systemd's official suggestion [1] how this should be handled in packages
using autoconf. A side effect of this is the removal of the hardcoded fallback
path "/lib/systemd/system" which leaks build host information when cross
compiling v4l-utils and therefore defeats reproducible builds.
[1] https://www.freedesktop.org/software/systemd/man/daemon.html#Installing%20systemd%20Service%20Files
Signed-off-by: Ulrich Ölmann <u.oelmann@pengutronix.de>
Signed-off-by: Sean Young <sean@mess.org>
|
|
At least v4l2-ctl -l now shows the proper type instead of 'unknown'.
Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl>
|
|
window()->windowHandle() can return NULL, in that case fallback
to a 1920x1080 screen resolution. Still better than a crash.
Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl>
|
|
Fixed incorrect DisplayID timings (swapped front and backporches)
and wrong aspect ratio (1:1 instead of 16:9).
Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl>
|
|
Provide a more detailed description of the various EDID types.
Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl>
|
|
The first DTD had a wrong vsync (6 instead of 5). Fixed.
Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl>
|
|
This:
v4l2-ctl -c auto_exposure=3,exposure_time_absolute=100,auto_exposure=1,exposure_time_absolute=200
should turn into a single VIDIOC_S_EXT_CTRLS call with 4 controls instead
of 2 controls with just the last value for each control.
This helps testing VIDIOC_S_EXT_CTRLS to check if drivers handle this
correctly (only the last value for each control should be used).
Signed-off-by: Hans Verkuil <hans.verkuil@cisco.com>
|
|
|
|
|
|
Add a new --show-edid option that dumps the EDID you would write
with --set-edid.
Updated existing EDIDs (fixing small edid-decode conformity warnings)
and add new EDIDs for displayport and 3 and 4 block EDIDs.
Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl>
|