ZVBI Library  0.2.35
Data Fields
vbi_program_id Struct Reference

Program Identification. More...

Data Fields

vbi_pid_channel channel
 
vbi_cni_type cni_type
 
unsigned int cni
 
vbi_pil pil
 
vbi_bool luf
 
vbi_bool mi
 
vbi_bool prf
 
vbi_pcs_audio pcs_audio
 
unsigned int pty
 
vbi_bool tape_delayed
 
void * _reserved2 [2]
 
int _reserved3 [4]
 

Detailed Description

Program Identification.

This structure contains a Program ID received via Teletext packet 8/30 format 2, VPS, a DVB PDC descriptor or an XDS Current/Future Program ID packet. When the source does not provide all this information, libzvbi initializes the respective fields with an appropriate value.

Since
0.2.34
Examples:
examples/pdc1.c, and examples/pdc2.c.

Field Documentation

◆ channel

vbi_pid_channel vbi_program_id::channel

◆ cni_type

vbi_cni_type vbi_program_id::cni_type

Network identifier type, one of

  • VBI_CNI_TYPE_NONE,
  • VBI_CNI_TYPE_8302 or
  • VBI_CNI_TYPE_VPS.
Examples:
examples/pdc2.c.

Referenced by vbi_decode_teletext_8302_pdc(), and vbi_decode_vps_pdc().

◆ cni

unsigned int vbi_program_id::cni

Country and Network Identifier provided by Teletext packet 8/30 format 2 and VPS. Note when the source is Teletext and the LUF flag is set, this CNI may refer to a different network than the one transmitting the PID.

Examples:
examples/pdc2.c.

Referenced by vbi_decode_teletext_8302_pdc(), vbi_decode_vps_pdc(), and vbi_encode_vps_pdc().

◆ pil

vbi_pil vbi_program_id::pil

Program Identification Label. This is the only information available from all PID sources.

Examples:
examples/pdc1.c, and examples/pdc2.c.

Referenced by vbi_decode_dvb_pdc_descriptor(), vbi_decode_teletext_8302_pdc(), vbi_decode_vps_pdc(), vbi_encode_dvb_pdc_descriptor(), and vbi_encode_vps_pdc().

◆ luf

vbi_bool vbi_program_id::luf

PDC Label Update Flag (only transmitted in Teletext packets). When this flag is set, the PID is intended to update VCR memory, it does not refer to the current program. According to the examples in EN 300 231 Annex E.3 however VCRs should probably also handle the PID as if a VBI_PIL_INHIBIT_TERMINATE service code was transmitted.

This flag is used to announce a new PIL for the current program. The CNI may refer to a different network than the one transmitting the PID, for example when a program is about to overrun and will continue on a different network. If a program is postponed and no transmission time has been decided yet the new PIL may contain an arbitrary or unreal time.

Examples:
examples/pdc2.c.

Referenced by vbi_decode_teletext_8302_pdc().

◆ mi

vbi_bool vbi_program_id::mi

PDC Mode Identifier (Teletext). When TRUE the end of transmission of this PIL coincides exactly with the end of the program. When FALSE the program ends 30 seconds after the PIL is no longer transmitted. Note the flag applies to all valid PILs as well as the VBI_PIL_INHIBIT_TERMINATE and VBI_PIL_INTERRUPTION service codes.

Examples:
examples/pdc2.c.

Referenced by vbi_decode_dvb_pdc_descriptor(), vbi_decode_teletext_8302_pdc(), and vbi_decode_vps_pdc().

◆ prf

vbi_bool vbi_program_id::prf

PDC Prepare to Record Flag (Teletext). When TRUE the program identified by this PID is about to start. A transition to FALSE indicates the immediate start of the program, regardless of the state of the MI flag.

Examples:
examples/pdc2.c.

Referenced by vbi_decode_teletext_8302_pdc().

◆ pcs_audio

vbi_pcs_audio vbi_program_id::pcs_audio

PDC Program Control Status - Audio (Teletext and VPS).

Referenced by vbi_decode_teletext_8302_pdc(), vbi_decode_vps_pdc(), and vbi_encode_vps_pdc().

◆ pty

unsigned int vbi_program_id::pty

PDC Program Type code (Teletext and VPS), can be 0 or 0xFF if none or unknown.

Examples:
examples/pdc1.c, and examples/pdc2.c.

Referenced by vbi_decode_teletext_8302_pdc(), vbi_decode_vps_pdc(), and vbi_encode_vps_pdc().

◆ tape_delayed

vbi_bool vbi_program_id::tape_delayed

XDS T flag. TRUE if a program is routinely tape delayed (for mountain and pacific time zones). FALSE if not or this is unknown.

This flag is used to determine if an offset is necessary because of local station tape delays. The amount of tape delay used for a given time zone is transmitted in a XDS Channel Tape Delay packet.