Page 1 of 1

Channels File Format

Posted: Sun Jul 02, 2006 4:54 am
by ketje
Is it possible to make public the structure of the chlist.lst file?

Posted: Sun Jul 02, 2006 10:33 am
by rel
yes,

CHL File Format
----------------

A CHL file has a fixed size (6.989.466 bytes) as it can hold limited number
of channels (max. 8000 channels)

File consist of following 4 sections:

Offset Section
-------- -----------
00000000 : Header (26 bytes)
0000001A : Satellites (8320 bytes)
0000209A : Favorites (5120 bytes)
0000349A : Channels (6976000 bytes)


Max number of items that CHL file can hold are below
- Satellites: 64
- Favorites: 64
- Channels: 8000
- Audio PIDs per channel: 16
- CA PIDs per channel: 64



Detailed info about the sections can be found in header files for the
following compilers

C/C++ = moduleapi.h
Delphi = moduleapi.pas
Assembly = moduleapi.inc

* chbase.pas includes CHL helper functions for Delphi.



NOTES:
1) If dwFreq (in the TChlChannel) is 0,
wPos (in the TChlSat) is 0,
FavName (in the TChlFav) is 0
it means that entry in the array is not used (or is empty)
2) Favorites stored as "favid+1" in TChlChannel structure
3) In an empty CHL all the bytes must be 0, except the header section as
it holds the sign and version info
4) Following line shows how Channel-ID that is used in ModuleAPI functions
is calculated:
CHID = Offset(in the array) / sizeof(TChlChannel)
5) Following line shows how Fav-ID is calculated:
FAVID = Offset(in the array) / sizeof(TChlFav)
6) Satellite position info stored in SatCoDX 4 digit sat-code format
(19.2° East = 0192 or 110 ° West = 2500)
West positions calculated as 360 - angle



http://www.dvbdream.org/files/DreamSDK_1v5.rar

take a look at the CHL structures in header files

Posted: Sun Jul 02, 2006 4:28 pm
by ketje
Fantastic.

Very many thanks. This has cleared up everything.

(Tesekkür ederim).

Posted: Fri Nov 14, 2008 6:01 am
by ketje
The chlist.chl file size is 4,181,466 and not 6,989,466 but DVBDream (version 1.4i) seems to be using it without problems. Has something changed?