libdvbpsi  2.0.0-git
MPEG Transport Stream PSI table parser
Index libdvbpsi's documentation


Arnaud de Bossoreille de Ribou bozo@.nosp@m.via..nosp@m.ecp.f.nosp@m.r
Christophe Massiot
Jean-Paul Saman
Johan Billen jobi@.nosp@m.via..nosp@m.ecp.f.nosp@m.r
Johann Hanne
and others (see AUTHORS file)

The libdvbpsi is a library developed by VideoLAN. This document describes how to use it and the "C" API.

What is libdvbpsi ?

libdvbpsi is a library that provides API's to decode and generate all the Program specific Information (PSI) and descriptors present in a MPEG2 TS or a DVB stream.

libdvbpsi version 1.0.0 breaks API compatibility with earlier versions. The benefits are a more consistent API and the library no longer makes calls to printf which improves its use in threaded applications.

The two keywords are portability and simplicity.


libdvbpsi was originally released under the GPLv2 and later relicensed under the LGPLv2. All versions prior to version 0.2.0 are GPLv2, versions 0.2.0 and later are LGPLv2.1.

Tables and Descriptors

libdvbpsi supports the following PSI tables and many descriptors regularly found in MPEG/DVB/ATSC Transport streams

  • Bouquet Association Table (BAT)
  • Conditional Access Table (CAT)
  • Event Information Table (EIT)
  • Network Information Table (NIT)
  • Program Association Table (PAT)
  • Program Map Table (PMT)
  • Running Status Table(RST
  • Section Description Table (SDT)
  • Splice Information Section Table (SIS)
  • TOT/TDT Table (TOT)
  • PSIP Event Information Table(ATSC EIT)
  • PSIP Extended Text Table(ATSC ETT)
  • PSIP Master Guide Table(ATSC MGT)
  • PSIP System Time Table(ATSC STT)
  • PSIP Virtual Channel Table(ATSC VCT)