Thanks af123. Was really just wanting to confirm that the byte following 'descriptor_length' was actually a 'size' byte. I'd assumed it was from observations, but wondered if anyone knew the purpose of that field. It must be guidance related, but I've never seen values in any following data byte other than zero or one. Can't be that important I reckon.
I was wrong - it isn't a size byte at all but it does indicate if there is any more information associated with the guidance entry. That extra information happens to be just one additional byte which is supposed to show whether the guidance is general (such as flashing images etc. in which case it should be zero) or for adult content (1). When there is no extra information, the existence of the guidance descriptor itself indicates adult content.
So if that first byte is 0 then it's guidance for adult content;
Otherwise there are two bytes and: 1 1 means adult content, 1 0 means general guidance.
Edit: These two bytes correspond with the .hmt file bytes at offsets 0x3E0 and 0x73B which precede the guide language descriptor. When there is no guide text these .hmt bytes contain 0xFF00.
From your notes in the HMT format description, guidance is present if those bytes contain 0x00FF or 0x0101 which tallies with the above although the second byte now looks more like a set of bits. I wonder what happens for the 0x0100 case?
I've set a test recording for tomorrow lunchtime (Can't Pay? We'll Take It Away - C5+1, 13:15 - Warning: Contains scenes of hardship some viewers might find distressing, guidance flags 0x0100) to see what ends up in the HMT file.
I've also updated the command line
epg utility to display this information properly and support a new filter flag which can be used to select just the entries with the extended information (For example, use
epg -G1 -/1 dump to see events from tomorrow with extended guidance info).
It's good to know what it means - not yet sure if it's useful. I suppose the web interface could show two different guidance icons; perhaps a red one for adult content.