Mailing List archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[linux-dvb] Channel database format for dvbsak
Hi all,
I'm starting to write a channel list for dvbsak. I can choose at
least three different formats of storing the list:
a) XML, using libxml
+ Simple to add additional fields (e.g. VES1820 register values)
+ Lots of parsers in different programming languages can be used
+ Standardized
- Depends on libxml
- A bit hard to read
b) scconf (from OpenSC <http://www.opensc.org>)
+ Simple to add additional fields
+ Minimal effort on my part =)
+ Readable by humans (or at least C programmers =))
- Depends on scconf
+ ... which isn't too large and can easily be embedded
in dvbsak package
- scconf depends on flex (until someone writes
a lightweight replacement parser)
c) Proprietary format
- Somewhat difficult to add additional fields
- Needs a lot of coding!
+ No dependencies
So a) could look like this (adapted partially from dvbtune):
<transport_stream id="0x0003" orig_nid="0x1234">
<sat_tuning_info>
<frequency>12345</frequency>
<symbol_rate>12345</symbol_rate>
<polarity>h</polarity>
</sat_tuning_info>
<cable_tuning_info>
<frequency>250000</frequency>
<symbol_rate>7146</symbol_rate>
<modulation>64-QAM</modulation>
<ves1820_regs reg5="123" reg7="231" />
</cable_tuning_info>
<ter_tuning_info>
...
</ter_tuning_info>
<descriptor tag="0xab" data="123456" />
<service id="0x0135" ca="1">
<description type="1" provider_name="Telenor" service_name="Canal+ BLÅ" />
<stream type="3" pid="0x02AC">
<language code="fin" type="0" />
...
</stream>
<stream type="2" pid="0x0206">
...
</stream>
</service>
<service id="0x0134" ca="1">
...
</service>
</transport_stream>
I'm not too fluent in XML, so forgive me if there's something really silly. =)
And b) would look like this:
transport_stream 0x0003 {
original_network_id = 0x1234;
descriptor = "ab:123456";
descriptor = "cd:654321";
sat_tuning_info {
frequency = 22345;
symbol_rate = 12345;
polarity = h;
}
cable_tuning_info {
frequency = 250000;
symbol_rate = 7146;
modulation = 64-QAM;
}
service 0x0135 {
ca = true;
type = 1;
name = "Canal+ BLÅ";
provider_name = "Telenor";
stream 0x02AC {
type = 3;
language = "fin";
}
}
...
}
As for c), any suggestions? =)
What do you guys think? Which should I choose? Any other formats I
should consider?
Cheers,
Juha
--
Info:
To unsubscribe send a mail to listar@linuxtv.org with "unsubscribe linux-dvb" as subject.
Home |
Main Index |
Thread Index