Mailing List archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[linux-dvb] Re: XML Channel file format



Hi Marcus!

>  > I'd really like to have these channels formats in one XML
>  > format which is flexible enough for all the applications.
>  > As there are already many XML parsers available we could
>  > simply create one channel XML parser API for dvb (to be
>  > used from a shared lib like libdvbchannel or even integrated
>  > into libdvb itself, though separating could make sense).
>  > 
> I was thinking about that a while ago. The easiest would be to use the
> format used by libdvb and change the labels to <labels>, add the
> </labels> and iron out some kinks. We could even use the parsing
> routines in libdvb. The only thing we had to change is checking for
> the end label.
> Then we would have something like this:

[deleted]

I have looked at the tuxzap/dvb api documentation myself and
found it a bit inflexible in the way it currently is.
I think we should define the transponder list separately
as done in dtv. The same goes for the satellite list.
In a (named) channel list we can now simply optionally 
define the transponder and sat id to be used when it is
needed. A favourite channel list can now simply skip
all the unecessary parts.

This would look like this:

<dvblist>
   <LNB> 
     <ID> 0 </ID>
     <TYPE> 1 </TYPE>
     <LOF1> 9750000 </LOF1>
     <LOF2> 10600000 </LOF2>
     <SLOF> 11700000 </SLOF>
     <DISEQCNR> 0 </DISEQCNR>
   </LNB>
   <SAT> 
     <ID> 0192 </ID>
     <NAME> Astra </NAME>
     <LNBID> 0 </LNBID>
     <FMIN> 11700000 </FMIN>
     <FMAX> 12800000 </FMAX>
   </SAT>
   <TRANSPONDER> 
     <ID> 0003 </ID>
     <SATID> 0192 </SATID>
     <ONID> 85 </ONID>
     <FREQ> 11720000 </FREQ>
     <POL> H </POL>
     <SRATE> 27500000 </SRATE>
     <FEC> 2 </FEC>
   </TRANSPONDER>
   <CHANNEL name="ZDF">   <!-- optional attribute when <NAME> is "silly" -->
     <ID> 0001 </ID>
     <NAME> ZDF </NAME>
     <TPID> 1079 </TPID>
     <CHTYPE> TV </CHTYPE>
     <TYPE> 1 </TYPE>
     <PNR> 6d6b </PNR>
     <VPID> 110 </VPID>
     <APID> 120 </APID>
     <PCRPID> 110 </PCRPID>
     <LANG> deu </LANG>
     <RECV> fta </RECV> <!-- receive type: fta or ca -->
   </CHANNEL>	

Concerning APID: My preference would be to define channels which have
several APIDS as extra channels, so CHTYPE makes sense and every
language of a channel has it's own channel id.
This way we also avoid many duplicate definitions and we save memory :)

> and so on. We would have to think about the hirachy a little and maybe
> make the labels a bit more explanatory for better legibility.

I thought what would be preference: Easier typing or better labeling.
If we have a proper documentation explaining all keywords we could
keep the names shorter. I would chose useful abbreviations and don't
use <digitalvideobroadcastchannellist> ;-)

> Someone already asked about XML a while ago and wanted to suggest a
> format, but I haven't heard from him. I haven't worked much with XML
> yet, but from what I heard it seems that writing a specialized parser
> and output program for the dvb-xml format would be indicated for speed
> reasons. Most of the available libs don't seem to concentrate on that
> and are probably too general in their purpose.

There is one really small parser: expat. I know that this one even
is used in embedded devices. I would use expat and throw out all the
unecessary code (the original shared lib uses less than 200k on my 
system). You can find it on http://www.jclark.com/xml/expat.html.

Concerning the DTD: If we agree on the hierarchy I supposed, this
is done quite fast (it mainly contains elements in the form
<!ELEMENT id (#PCDATA)>)
If we want to go for a schema it would be good to have a schema 
editor because the syntax is no longer that simple.

With best regards,

Reinhard Katzmann
-- 
Software-Engineer, Developer for Embedded Devices
Project: HyperPen Tablet USB Driver for Linux 
GnuPG Public Key available on request

-- No attachments (even text) are allowed --
-- Type: application/pgp-signature



-- 
Info:
To unsubscribe send a mail to listar@linuxtv.org with "unsubscribe linux-dvb" as subject.


Home | Main Index | Thread Index