[linux-dvb] Rationalising dvb-apps/lib[s] anyone?
Andrew de Quincey
adq_dvb at lidskialf.net
Tue Nov 8 20:31:37 CET 2005
Hi, as I'm likely to start using these in the near future, I'd like to sort
out the current situation. I would like to avoid a flamefest though
Currently we have:
OK, so I'm the worst offender with two copies of libdvbcfg :)
I'd like to move dvb-apps/libs/libdvb2 and dvb-apps/libs/libsi2 into
dvb-apps/lib. I would also like to rename libsi2 to "libucsi". Why "lib"
instead of "libs"? Because I prefer "lib".
I'd like to _stress_ that we will keep all code; although there appear
to be functional overlaps it is all useful in different circumstances.
I will also create a wiki page describing the advantages of the libs,
something like the following:
* libdvbcfg. Standalone library for dealing with various DVB configuration
files in effort to have feature complete standardised file formats.
* libdvben50221. Standalone library for EN50221/CAM control.
* libdvbsi. Standalone library for DVB related SI parsing. This one is
designed to provide an easy to use API. It parses SI structures into nice
sane formats in memory, using malloc().
* libdvb2. This is designed as a C replacement for the Metzler bros' C++
"libdvb", since many projects do not wish to use C++. It is designed to be
_great_ for simplifiying access to DVB devices, but may not be suited to all
applications (e.g. for extreme embedded/custom stuff). This builds on the
various other libraries.
* libsi2. Standalone library for SI parsing. I would like to rename this to
libucsi (lib-micro-si). Calling it "libsi2" is a bit of a misnomer since its
not really a sequel to anything - its just a different way of doing things.
Specifically it is designed for embedded systems where malloc()/free() are
bad. Its API is not as nice to use as libdvbsi, but it parses SI structures
directly in memory with no malloc()/free(). It also covers more than just
"dvb" including complete coverage of all mpeg,dvb, and sometime in the
future, atsc tables/descriptors.
More information about the linux-dvb