6.5.1. LIRC read()¶
lirc-read - Read from a LIRC device
ssize_t read(int fd, void *buf, size_t count)¶
File descriptor returned by
Buffer to be filled
Max number of bytes to read
read() attempts to read up to
count bytes from file
fd into the buffer starting at
count is zero,
read() returns zero and has no other results. If
is greater than
SSIZE_MAX, the result is unspecified.
The exact format of the data depends on what LIRC modes a driver uses. Use ioctl LIRC_GET_FEATURES to get the supported mode, and use ioctls LIRC_GET_REC_MODE and LIRC_SET_REC_MODE set the current active mode.
The mode LIRC_MODE_MODE2 is for raw IR, in which packets containing an unsigned int value describing an IR signal are read from the chardev.
Alternatively, LIRC_MODE_SCANCODE can be available,
in this mode scancodes which are either decoded by software decoders, or
by hardware decoders. The
rc_proto member is set to the
used for transmission, and
scancode to the decoded scancode,
keycode set to the keycode or
126.96.36.199. Return Value¶
On success, the number of bytes read is returned. It is not an error if
this number is smaller than the number of bytes requested, or the amount
of data required for one frame. On error, -1 is returned, and the
variable is set appropriately.