dvb-dev.h File Reference
Digital TV device enumeration

Provides interfaces to handle Digital TV devices. More...

`#include "dvb-fe.h"`
`#include "dvb-scan.h"`
`#include <linux/dvb/dmx.h>`

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)

## Detailed Description

Provides interfaces to handle Digital TV devices.

Copyright
  GNU Lesser General Public License version 2.1 (LGPLv2.1)

Author
  Mauro Carvalho Chehab

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.

Bug Report
  Please submit bug reports and patches to linux.nosp@m.-med.nosp@m.ia@vg.nosp@m.er.k.nosp@m.ernel.nosp@m..org

Definition in file dvb-dev.h.

## Typedef Documentation

## dvb_dev_change_t

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

Note
  : the returned string should be freed with free().

Definition at line 121 of file dvb-dev.h.

## Enumeration Type Documentation

## dvb_dev_change_type

enum dvb_dev_change_type

Describes the type of change to be notifier_delay.

Parameters

  DVB_DEV_ADD | New device detected
  DVB_DEV_CHANGE | Device has changed something
  DVB_DEV_REMOVE | A hot-pluggable device was removed

Enumerator
DVB_DEV_ADD |
DVB_DEV_CHANGE |
DVB_DEV_REMOVE |

Definition at line 106 of file dvb-dev.h.

## dvb_dev_type

enum dvb_dev_type

Enumerator
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 |

Definition at line 58 of file dvb-dev.h.

## Function Documentation

## dvb_dev_remote_init()

static int dvb_dev_remote_init | ( | struct dvb_device * | d,
|  | char * | server,
|  | int | port
| ) |  |

inline static

Examples
  dvb-fe-tool.c, and dvbv5-zap.c.

Definition at line 498 of file dvb-dev.h.

## dvb_dev_seek_by_adapter()

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.

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;

Returns
  returns a pointer to a struct dvb_dev_list object or NULL if the desired device was not found.

Examples
  dvb-fe-tool.c, dvbv5-scan.c, and dvbv5-zap.c.

## dvb_get_dev_info()

struct dvb_dev_list * dvb_get_dev_info | ( | struct dvb_device * | dvb,
|  | const char * | sysname
| ) |  |

Return data about a device from its sysname.

Parameters

  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().

Returns
  returns a pointer to a struct dvb_dev_list object or NULL if the desired device was not found.