VIDIOC_G_FREQUENCY, VIDIOC_S_FREQUENCY — Get or set tuner or modulator radio frequency
int ioctl( | int fd, |
int request, | |
struct v4l2_frequency
*argp) ; |
int ioctl( | int fd, |
int request, | |
const struct v4l2_frequency
*argp) ; |
To get the current tuner or modulator radio frequency
applications set the tuner
field of a
struct v4l2_frequency to the respective tuner or modulator number (only
input devices have tuners, only output devices have modulators), zero
out the reserved
array and
call the VIDIOC_G_FREQUENCY
ioctl with a pointer
to this structure. The driver stores the current frequency in the
frequency
field.
To change the current tuner or modulator radio frequency
applications initialize the tuner
,
type
and
frequency
fields, and the
reserved
array of a struct v4l2_frequency and
call the VIDIOC_S_FREQUENCY
ioctl with a pointer
to this structure. When the requested frequency is not possible the
driver assumes the closest possible value. However
VIDIOC_S_FREQUENCY
is a write-only ioctl, it does
not return the actual new frequency.
Table A.73. struct v4l2_frequency
__u32 | tuner | The tuner or modulator index number. This is the
same value as in the struct v4l2_input tuner
field and the struct v4l2_tuner index field, or
the struct v4l2_output modulator field and the
struct v4l2_modulator index field. |
__u32 | type | The tuner type. This is the same value as in the
struct v4l2_tuner type field. The type must be set
to V4L2_TUNER_RADIO for /dev/radioX
device nodes, and to V4L2_TUNER_ANALOG_TV
for all others. Set this field to V4L2_TUNER_RADIO for
modulators (currently only radio modulators are supported).
See Table A.88, “enum v4l2_tuner_type” |
__u32 | frequency | Tuning frequency in units of 62.5 kHz, or if the
struct v4l2_tuner or struct v4l2_modulator capability flag
V4L2_TUNER_CAP_LOW is set, in units of 62.5
Hz. A 1 Hz unit is used when the capability flag
V4L2_TUNER_CAP_1HZ is set. |
__u32 | reserved [8] | Reserved for future extensions. Drivers and applications must set the array to zero. |
On success 0 is returned, on error -1 and the errno
variable is set appropriately. The generic error codes are described at the Generic Error Codes chapter.
The tuner
index is out of
bounds or the value in the type
field is
wrong.
A hardware seek is in progress.