libdvbv5 1.26.1
Library to work with Digital TV devices on Linux
|
Provides interfaces to handle Digital TV devices. More...
Go to the source code of this file.
Data Structures | |
struct | dvb_dev_list |
Digital TV device node properties. More... | |
struct | dvb_device |
Digital TV list of devices. More... | |
Typedefs | |
typedef int(* | dvb_dev_change_t) (char *sysname, enum dvb_dev_change_type type, void *priv) |
Describes a callback for dvb_dev_find() | |
Enumerations | |
enum | dvb_dev_type { DVB_DEVICE_FRONTEND , DVB_DEVICE_DEMUX , DVB_DEVICE_DVR , DVB_DEVICE_NET , DVB_DEVICE_CA , DVB_DEVICE_CA_SEC , DVB_DEVICE_VIDEO , DVB_DEVICE_AUDIO } |
enum | dvb_dev_change_type { DVB_DEV_ADD , DVB_DEV_CHANGE , DVB_DEV_REMOVE } |
Describes the type of change to be notifier_delay. More... | |
Functions | |
struct dvb_device * | dvb_dev_alloc (void) |
Allocate a struct dvb_device. | |
void | dvb_dev_free (struct dvb_device *dvb) |
free a struct dvb_device | |
int | dvb_dev_find (struct dvb_device *dvb, dvb_dev_change_t handler, void *user_priv) |
finds all DVB devices on the local machine | |
struct dvb_dev_list * | dvb_dev_seek_by_adapter (struct dvb_device *dvb, unsigned int adapter, unsigned int num, enum dvb_dev_type type) |
Find a device that matches the search criteria given by this functions's parameters. | |
struct dvb_dev_list * | dvb_get_dev_info (struct dvb_device *dvb, const char *sysname) |
Return data about a device from its sysname. | |
void | dvb_dev_stop_monitor (struct dvb_device *dvb) |
Stop the dvb_dev_find loop. | |
void | dvb_dev_set_logpriv (struct dvb_device *dvb, unsigned verbose, dvb_logfunc_priv logfunc, void *logpriv) |
Sets the DVB verbosity and log function with context private data. | |
void | dvb_dev_set_log (struct dvb_device *dvb, unsigned verbose, dvb_logfunc logfunc) |
Sets the DVB verbosity and log function. | |
struct dvb_open_descriptor * | dvb_dev_open (struct dvb_device *dvb, const char *sysname, int flags) |
Opens a dvb device. | |
void | dvb_dev_close (struct dvb_open_descriptor *open_dev) |
Closes a dvb device. | |
int | dvb_dev_get_fd (struct dvb_open_descriptor *open_dev) |
returns fd from a local device This will not work for remote devices. | |
ssize_t | dvb_dev_read (struct dvb_open_descriptor *open_dev, void *buf, size_t count) |
read from a dvb demux or dvr file | |
void | dvb_dev_dmx_stop (struct dvb_open_descriptor *open_dev) |
Stops the demux filter for a given file descriptor. | |
int | dvb_dev_set_bufsize (struct dvb_open_descriptor *open_dev, int buffersize) |
Start a demux or dvr buffer size. | |
int | dvb_dev_dmx_set_pesfilter (struct dvb_open_descriptor *open_dev, int pid, dmx_pes_type_t type, dmx_output_t output, int buffersize) |
Start a filter for a MPEG-TS Packetized Elementary Stream (PES) | |
int | dvb_dev_dmx_set_section_filter (struct dvb_open_descriptor *open_dev, int pid, unsigned filtsize, unsigned char *filter, unsigned char *mask, unsigned char *mode, unsigned int flags) |
Sets a MPEG-TS section filter. | |
int | dvb_dev_dmx_get_pmt_pid (struct dvb_open_descriptor *open_dev, int sid) |
read the contents of the MPEG-TS PAT table, seeking for an specific service ID | |
struct dvb_v5_descriptors * | dvb_dev_scan (struct dvb_open_descriptor *open_dev, struct dvb_entry *entry, check_frontend_t *check_frontend, void *args, unsigned other_nit, unsigned timeout_multiply) |
Scans a DVB dvb_add_scaned_transponder. | |
static int | dvb_dev_remote_init (struct dvb_device *d, char *server, int port) |
Provides interfaces to handle Digital TV devices.
Digital TV device node file names depend on udev configuration. For example, while frontends are typically found at/dev/dvb/adapter?/frontend?, the actual file name can vary from system to system, depending on the udev ruleset.
The libdvbv5 provides a set of functions to allow detecting and getting the device paths in a sane way, via libudev.
Definition in file dvb-dev.h.
typedef int(* dvb_dev_change_t) (char *sysname, enum dvb_dev_change_type type, void *priv) |
Describes a callback for dvb_dev_find()
sysname: Kernel's system name for the device (dvb?.frontend?, for example) type: type of change, as defined by enum dvb_dev_change_type
enum dvb_dev_change_type |
enum dvb_dev_type |
|
inlinestatic |
struct dvb_dev_list * dvb_dev_seek_by_adapter | ( | struct dvb_device * | dvb, |
unsigned int | adapter, | ||
unsigned int | num, | ||
enum dvb_dev_type | type | ||
) |
Find a device that matches the search criteria given by this functions's parameters.
dvb | pointer to struct dvb_device to be used |
adapter | Adapter number, as defined internally at the Kernel. Always start with 0; |
num | Digital TV device number (e. g. frontend0, net0, etc); |
type | Type of the device, as given by enum dvb_dev_type; |
struct dvb_dev_list * dvb_get_dev_info | ( | struct dvb_device * | dvb, |
const char * | sysname | ||
) |
Return data about a device from its sysname.
dvb | pointer to struct dvb_device to be used |
sysname | Kernel's name of the device to be opened, as obtained via dvb_dev_seek_by_adapter() or via dvb_dev_find(). |