descriptors(3)
π descriptors(3) β Library Functions Manual π
β¨ NAME β¨
descriptors β parsers for several MPEG-TS descriptors. That's the whole vibe, bestie: these are the parsers for a bunch of MPEG-TS descriptors. π
π¦ SYNOPSIS π¦
π Files π
desc_atsc_service_location.hβ provides the descriptors for ATSC service location. β¨desc_ca.hβ provides the descriptors for Conditional Access. πdesc_ca_identifier.hβ provides the descriptors for the Conditional Access identifier. πdesc_cable_delivery.hβ provides the descriptors for the cable delivery system descriptor. π§΅desc_event_extended.hβ provides the descriptors for the extended event descriptor. πdesc_event_short.hβ provides the descriptors for the short event descriptor. β³desc_extension.hβ provides the descriptors for the extension descriptor. π§©desc_frequency_list.hβ provides the descriptors for the frequency list descriptor. π‘desc_hierarchy.hβ provides the descriptors for the hierarchy descriptor. πͺdesc_isdbt_delivery.hβ provides the descriptors for the ISDB-T terrestrial delivery system. πdesc_language.hβ provides the descriptors for the ISO639 language descriptor. π£οΈdesc_logical_channel.hβ provides the descriptors for the LCN - Logican Channel Number. πΊdesc_network_name.hβ provides the descriptors for the network name descriptor. π·οΈdesc_partial_reception.hβ provides the descriptors for the ISDB partial reception descriptor. π»desc_registration_id.hβ provides the descriptors for the registration descriptor. πdesc_sat.hβ provides the descriptors for the satellite delivery system descriptor. π°οΈdesc_service.hβ provides the descriptors for the service descriptor. ποΈdesc_t2_delivery.hβ provides the descriptors for the DVB-T2 delivery system descriptor. πΆdesc_terrestrial_delivery.hβ provides the descriptors for the DVB-T terrestrial delivery system descriptor. π±desc_ts_info.hβ provides the descriptors for the ISDB TS information descriptor. βΉοΈ
𧬠Data Structures π§¬
struct atsc_desc_service_location_elementaryβ service location elementary descriptors. πstruct atsc_desc_service_locationβ describes the elementary streams inside a PAT table for ATSC. πΊstruct dvb_desc_caβ contains the private data for Conditional Access. πstruct dvb_desc_ca_identifierβ indicates if a particular bouquet, service or event is associated with a CA system. π³struct dvb_desc_cable_deliveryβ structure containing the cable delivery system descriptor. π§΅struct dvb_desc_event_extendedβ structure containing the extended event descriptor. πstruct dvb_desc_event_shortβ structure containing the short event descriptor. β±οΈstruct dvb_extension_descriptorβ structure containing the extended descriptors. π§©struct dvb_ext_descriptorβ structure that describes the parser functions for the extended descriptors. βοΈstruct dvb_desc_frequency_listβ struct containing the frequency list descriptor. π‘struct dvb_desc_hierarchyβ structure containing the hierarchy descriptor. πͺstruct isdbt_desc_terrestrial_delivery_systemβ struct containing the ISDB-T terrestrial delivery system. πstruct dvb_desc_languageβ structure containing the ISO639 language descriptor. π£οΈstruct dvb_desc_logical_channel_numberβ structure containing the logical channel number entires. πΊstruct dvb_desc_logical_channelβ structure containing the logical channel number descriptor. πΊstruct dvb_desc_network_nameβ struct containing the network name descriptor. π·οΈstruct isdb_partial_reception_service_idβ service ID that uses partial reception. π»struct isdb_desc_partial_receptionβ structure containing the partial reception descriptor. π»struct dvb_desc_registrationβ struct containing the frequency list descriptor. πstruct dvb_desc_satβ structure containing the satellite delivery system descriptor. π°οΈstruct dvb_desc_serviceβ structure containing the service descriptor. ποΈstruct dvb_desc_t2_delivery_subcell_oldβ structure to describe transponder subcell extension and frequencies. πΆstruct dvb_desc_t2_delivery_subcellβ structure to describe transponder subcell extension and frequencies. πΆstruct dvb_desc_t2_delivery_cellβ structure to describe transponder cells. πΆstruct dvb_desc_t2_deliveryβ structure containing the T2 delivery system descriptor. πΆstruct dvb_desc_terrestrial_deliveryβ structure containing the DVB-T terrestrial delivery system descriptor. π±struct dvb_desc_ts_info_transmission_typeβ ISDB TS information transmission type. βΉοΈstruct dvb_desc_ts_infoβ structure describing the ISDB TS information descriptor. βΉοΈ
ποΈ Enumerations ποΈ
enum extension_descriptorsβ list containing all extended descriptors used by Digital TV MPEG-TS as defined at ETSI EN 300 468 V1.11.1. π
enum extension_descriptors {
image_icon_descriptor,
cpcm_delivery_signalling_descriptor,
CP_descriptor,
CP_identifier_descriptor,
T2_delivery_system_descriptor,
SH_delivery_system_descriptor,
supplementary_audio_descriptor,
network_change_notify_descriptor,
message_descriptor,
target_region_descriptor,
target_region_name_descriptor,
service_relocated_descriptor
}
β¨ Functions β¨
okay bestie, here's the whole roster of descriptor functions π every descriptor basically gets its lil squad of init / print / free (some of them skipped a member, and honestly? we respect the chaos π
). Signatures stay exactly as they are, no cap:
int atsc_desc_service_location_init (struct dvb_v5_fe_parms *parms, const uint8_t *buf, struct dvb_desc *desc)β Initializes and parses the service location descriptor.void atsc_desc_service_location_print (struct dvb_v5_fe_parms *parms, const struct dvb_desc *desc)β Prints the content of the service location descriptor.void atsc_desc_service_location_free (struct dvb_desc *desc)β Frees all data allocated by the service location descriptor.int dvb_desc_ca_init (struct dvb_v5_fe_parms *parms, const uint8_t *buf, struct dvb_desc *desc)β Initializes and parses the CA descriptor.void dvb_desc_ca_print (struct dvb_v5_fe_parms *parms, const struct dvb_desc *desc)β Prints the content of the CA descriptor.void dvb_desc_ca_free (struct dvb_desc *desc)β Frees all data allocated by the CA descriptor.int dvb_desc_ca_identifier_init (struct dvb_v5_fe_parms *parms, const uint8_t *buf, struct dvb_desc *desc)β Initializes and parses the CA identifier descriptor.void dvb_desc_ca_identifier_print (struct dvb_v5_fe_parms *parms, const struct dvb_desc *desc)β Prints the content of the CA identifier descriptor.void dvb_desc_ca_identifier_free (struct dvb_desc *desc)β Frees all data allocated by the CA identifier descriptor.int dvb_desc_cable_delivery_init (struct dvb_v5_fe_parms *parms, const uint8_t *buf, struct dvb_desc *desc)β Initializes and parses the service location descriptor.void dvb_desc_cable_delivery_print (struct dvb_v5_fe_parms *parms, const struct dvb_desc *desc)β Prints the content of the service location descriptor.int dvb_desc_event_extended_init (struct dvb_v5_fe_parms *parms, const uint8_t *buf, struct dvb_desc *desc)β Initializes and parses the extended event descriptor.void dvb_desc_event_extended_print (struct dvb_v5_fe_parms *parms, const struct dvb_desc *desc)β Prints the content of the extended event descriptor.void dvb_desc_event_extended_free (struct dvb_desc *desc)β Frees all data allocated by the extended event descriptor.int dvb_desc_event_short_init (struct dvb_v5_fe_parms *parms, const uint8_t *buf, struct dvb_desc *desc)β Initializes and parses the short event descriptor.void dvb_desc_event_short_print (struct dvb_v5_fe_parms *parms, const struct dvb_desc *desc)β Prints the content of the short event descriptor.void dvb_desc_event_short_free (struct dvb_desc *desc)β Frees all data allocated by the short event descriptor.int dvb_extension_descriptor_init (struct dvb_v5_fe_parms *parms, const uint8_t *buf, struct dvb_desc *desc)β Initializes and parses the extended descriptor.void dvb_extension_descriptor_print (struct dvb_v5_fe_parms *parms, const struct dvb_desc *desc)β Prints the content of the extended descriptor.void dvb_extension_descriptor_free (struct dvb_desc *desc)β Frees all data allocated by the extended descriptor.int dvb_desc_frequency_list_init (struct dvb_v5_fe_parms *parms, const uint8_t *buf, struct dvb_desc *desc)β Initializes and parses the frequency list descriptor.void dvb_desc_frequency_list_print (struct dvb_v5_fe_parms *parms, const struct dvb_desc *desc)β Prints the content of the frequency list descriptor.int dvb_desc_hierarchy_init (struct dvb_v5_fe_parms *parms, const uint8_t *buf, struct dvb_desc *desc)β Initializes and parses the hierarchy descriptor.void dvb_desc_hierarchy_print (struct dvb_v5_fe_parms *parms, const struct dvb_desc *desc)β Prints the content of the hierarchy descriptor.int isdbt_desc_delivery_init (struct dvb_v5_fe_parms *parms, const uint8_t *buf, struct dvb_desc *desc)β Initializes and parses the ISDB-T terrestrial delivery system descriptor.void isdbt_desc_delivery_print (struct dvb_v5_fe_parms *parms, const struct dvb_desc *desc)β Prints the content of the ISDB-T terrestrial delivery system descriptor.void isdbt_desc_delivery_free (struct dvb_desc *desc)β Frees all data allocated by the ISDB-T terrestrial delivery system descriptor.int dvb_desc_language_init (struct dvb_v5_fe_parms *parms, const uint8_t *buf, struct dvb_desc *desc)β Initializes and parses the language descriptor.void dvb_desc_language_print (struct dvb_v5_fe_parms *parms, const struct dvb_desc *desc)β Prints the content of the language descriptor.int dvb_desc_logical_channel_init (struct dvb_v5_fe_parms *parms, const uint8_t *buf, struct dvb_desc *desc)β Initializes and parses the logical channel number descriptor.void dvb_desc_logical_channel_print (struct dvb_v5_fe_parms *parms, const struct dvb_desc *desc)β Prints the content of the logical channel number descriptor.void dvb_desc_logical_channel_free (struct dvb_desc *desc)β Frees all data allocated by the logical channel number descriptor.int dvb_desc_network_name_init (struct dvb_v5_fe_parms *parms, const uint8_t *buf, struct dvb_desc *desc)β Initializes and parses the network name descriptor.void dvb_desc_network_name_print (struct dvb_v5_fe_parms *parms, const struct dvb_desc *desc)β Prints the content of the network name descriptor.void dvb_desc_network_name_free (struct dvb_desc *desc)β Frees all data allocated by the network name descriptor.int isdb_desc_partial_reception_init (struct dvb_v5_fe_parms *parms, const uint8_t *buf, struct dvb_desc *desc)β Initializes and parses the ISDB-T partial reception descriptor.void isdb_desc_partial_reception_print (struct dvb_v5_fe_parms *parms, const struct dvb_desc *desc)β Prints the content of the ISDB-T partial reception descriptor.void isdb_desc_partial_reception_free (struct dvb_desc *desc)β Frees all data allocated by the ISDB-T partial reception descriptor.int dvb_desc_registration_init (struct dvb_v5_fe_parms *parms, const uint8_t *buf, struct dvb_desc *desc)β Initializes and parses the registration descriptor.void dvb_desc_registration_print (struct dvb_v5_fe_parms *parms, const struct dvb_desc *desc)β Prints the content of the registration descriptor.void dvb_desc_registration_free (struct dvb_desc *desc)β Frees all data allocated by the registration descriptor.int dvb_desc_sat_init (struct dvb_v5_fe_parms *parms, const uint8_t *buf, struct dvb_desc *desc)β Initializes and parses the satellite delivery system descriptor.void dvb_desc_sat_print (struct dvb_v5_fe_parms *parms, const struct dvb_desc *desc)β Prints the content of the satellite delivery system descriptor.int dvb_desc_service_init (struct dvb_v5_fe_parms *parms, const uint8_t *buf, struct dvb_desc *desc)β Initializes and parses the service descriptor.void dvb_desc_service_print (struct dvb_v5_fe_parms *parms, const struct dvb_desc *desc)β Prints the content of the service descriptor.void dvb_desc_service_free (struct dvb_desc *desc)β Frees all data allocated by the service descriptor.int dvb_desc_t2_delivery_init (struct dvb_v5_fe_parms *parms, const uint8_t *buf, struct dvb_extension_descriptor *ext, void *desc)β Initializes and parses the T2 delivery system descriptor.void dvb_desc_t2_delivery_print (struct dvb_v5_fe_parms *parms, const struct dvb_extension_descriptor *ext, const void *desc)β Prints the content of the T2 delivery system descriptor.void dvb_desc_t2_delivery_free (const void *desc)β Frees all data allocated by the T2 delivery system descriptor.void dvb_desc_terrestrial_delivery_print (struct dvb_v5_fe_parms *parms, const struct dvb_desc *desc)β Prints the content of the DVB-T terrestrial delivery system descriptor.int dvb_desc_ts_info_init (struct dvb_v5_fe_parms *parms, const uint8_t *buf, struct dvb_desc *desc)β Initializes and parses the ISDB TS information descriptor.void dvb_desc_ts_info_print (struct dvb_v5_fe_parms *parms, const struct dvb_desc *desc)β Prints the content of the ISDB TS information descriptor.void dvb_desc_ts_info_free (struct dvb_desc *desc)β Frees all data allocated by the ISDB TS information descriptor.
π Detailed Description π
nothing extra to unpack right here, bestie β the real lore is in the sections below ππ
π·οΈ Enumeration Type Documentation π·οΈ
enum extension_descriptors
List containing all extended descriptors used by Digital TV MPEG-TS as defined at ETSI EN 300 468 V1.11.1 β¨
Enumerator
image_icon_descriptorβ image icon descriptor πΌοΈcpcm_delivery_signalling_descriptorβ Content Protection/Copy Management (CPCM) delivery signalling descriptor.CP_descriptorβ Content Protection descriptor.CP_identifier_descriptorβ Content Protection identifier descriptor.T2_delivery_system_descriptorβ DVB-T2 delivery system descriptor.SH_delivery_system_descriptorβ DVB-SH delivery system descriptor.supplementary_audio_descriptorβ supplementary audio descriptor πnetwork_change_notify_descriptorβ network change notify descriptormessage_descriptorβ message descriptortarget_region_descriptorβ target region descriptortarget_region_name_descriptorβ target region name descriptorservice_relocated_descriptorβ service relocated descriptor
Definition at line 89 of file desc_extension.h.
π§ Function Documentation π§
void atsc_desc_service_location_free (struct dvb_desc *desc)
Frees all data allocated by the service location descriptor π§Ήβ¨
Parameters
descβ pointer tostruct dvb_descto be freed
int atsc_desc_service_location_init (struct dvb_v5_fe_parms *parms, const uint8_t *buf, struct dvb_desc *desc)
Initializes and parses the service location descriptor π«
Parameters
parmsβstruct dvb_v5_fe_parmspointer to the opened devicebufβ buffer containing the descriptor's raw datadescβ pointer tostruct dvb_descto be allocated and filled
This function allocates the descriptor and fills the fields inside the struct. It also makes sure that all fields will follow the CPU endianness. Due to that, the content of the buffer may change β fr fr, don't be surprised when your buffer comes back different π
Returns
On success, it returns the size of the allocated struct. A negative value indicates an error.
void atsc_desc_service_location_print (struct dvb_v5_fe_parms *parms, const struct dvb_desc *desc)
Prints the content of the service location descriptor π¨οΈπ
Parameters
parmsβstruct dvb_v5_fe_parmspointer to the opened devicedescβ pointer tostruct dvb_desc
void dvb_desc_ca_free (struct dvb_desc *desc)
Frees all data allocated by the CA descriptor π§
Parameters
descβ pointer tostruct dvb_descto be freed
void dvb_desc_ca_identifier_free (struct dvb_desc * desc)
Bestie, this one's the lil cleanup crew π it frees all data allocated by the CA identifier descriptor. Like, everything that descriptor was holding onto? Gone. Poof. Free real estate.
Parameters
descβ pointer tostruct dvb_descto be freed
int dvb_desc_ca_identifier_init (struct dvb_v5_fe_parms * parms, const uint8_t * buf, struct dvb_desc * desc)
Initializes and parses the CA identifier descriptor. She's building it from scratch and reading the raw bytes at the same time, multitasking queen π
Parameters
parmsβstruct dvb_v5_fe_parmspointer to the opened devicebufβ buffer containing the descriptor's raw datadescβ pointer tostruct dvb_descto be allocated and filled
This function allocates a the descriptor and fills the fields inside the struct. It also makes sure that all fields will follow the CPU endianness. Due to that, the content of the buffer may change. Yeah β she edits buf in place, so don't come crying if your bytes look different after, that's just the endianness glow-up β¨
Returns
On success, it returns the size of the allocated struct. A negative value indicates an error.
void dvb_desc_ca_identifier_print (struct dvb_v5_fe_parms * parms, const struct dvb_desc * desc)
Prints the content of the CA identifier descriptor. It's giving "show me what you got" π
Parameters
parmsβstruct dvb_v5_fe_parmspointer to the opened devicedescβ pointer tostruct dvb_desc
int dvb_desc_ca_init (struct dvb_v5_fe_parms * parms, const uint8_t * buf, struct dvb_desc * desc)
Initializes and parses the CA descriptor. Note bestie: this is the CA descriptor, not the CA identifier one β two different girlies, don't mix them up π
Parameters
parmsβstruct dvb_v5_fe_parmspointer to the opened devicebufβ buffer containing the descriptor's raw datadescβ pointer tostruct dvb_descto be allocated and filled
This function allocates a the descriptor and fills the fields inside the struct. It also makes sure that all fields will follow the CPU endianness. Due to that, the content of the buffer may change.
Returns
On success, it returns the size of the allocated struct. A negative value indicates an error.
void dvb_desc_ca_print (struct dvb_v5_fe_parms * parms, const struct dvb_desc * desc)
Prints the content of the CA descriptor. Spill it, sis πΈ
Parameters
parmsβstruct dvb_v5_fe_parmspointer to the opened devicedescβ pointer tostruct dvb_desc
int dvb_desc_cable_delivery_init (struct dvb_v5_fe_parms * parms, const uint8_t * buf, struct dvb_desc * desc)
Initializes and parses the service location descriptor.
okay real talk β yes, the docs say "service location descriptor" for a function named cable_delivery. That's literally what the original says, so that's what I'm passing to you. No edits, no notes, periodt.
Parameters
parmsβstruct dvb_v5_fe_parmspointer to the opened devicebufβ buffer containing the descriptor's raw datadescβ pointer tostruct dvb_descto be allocated and filled
This function initializes and makes sure that all fields will follow the CPU endianness. Due to that, the content of the buffer may change.
Currently, no memory is allocated internally. So she's low-maintenance fr fr π
Returns
On success, it returns the size of the allocated struct. A negative value indicates an error.
void dvb_desc_cable_delivery_print (struct dvb_v5_fe_parms * parms, const struct dvb_desc * desc)
Prints the content of the service location descriptor. (Same energy as above β that's the wording, we keep it π)
Parameters
parmsβstruct dvb_v5_fe_parmspointer to the opened devicedescβ pointer tostruct dvb_desc
References dvbc_fec_table, and dvbc_modulation_table.
void dvb_desc_event_extended_free (struct dvb_desc * desc)
Frees all data allocated by the extended event descriptor. Say bye bye to those strings ππ
Parameters
descβ pointer tostruct dvb_descto be freed
int dvb_desc_event_extended_init (struct dvb_v5_fe_parms * parms, const uint8_t * buf, struct dvb_desc * desc)
Initializes and parses the extended event descriptor.
Parameters
parmsβstruct dvb_v5_fe_parmspointer to the opened devicebufβ buffer containing the descriptor's raw datadescβ pointer tostruct dvb_descto be allocated and filled
This function allocates a the descriptor and fills the fields inside the struct. It also makes sure that all fields will follow the CPU endianness. Due to that, the content of the buffer may change.
Returns
On success, it returns the size of the allocated struct. A negative value indicates an error.
void dvb_desc_event_extended_print (struct dvb_v5_fe_parms * parms, const struct dvb_desc * desc)
Prints the content of the extended event descriptor. The extended lore drops here πβ¨
Parameters
parmsβstruct dvb_v5_fe_parmspointer to the opened devicedescβ pointer tostruct dvb_desc
void dvb_desc_event_short_free (struct dvb_desc * desc)
Frees all data allocated by the short event descriptor. Short king, but the cleanup still matters π«Ά
Parameters
descβ pointer tostruct dvb_descto be freed
int dvb_desc_event_short_init (struct dvb_v5_fe_parms * parms, const uint8_t * buf, struct dvb_desc * desc)
Initializes and parses the short event descriptor.
Parameters
parmsβstruct dvb_v5_fe_parmspointer to the opened devicebufβ buffer containing the descriptor's raw datadescβ pointer tostruct dvb_descto be allocated and filled
This function allocates a the descriptor and fills the fields inside the struct. It also makes sure that all fields will follow the CPU endianness. Due to that, the content of the buffer may change.
Returns
On success, it returns the size of the allocated struct. A negative value indicates an error.
void dvb_desc_event_short_print (struct dvb_v5_fe_parms * parms, const struct dvb_desc * desc)
Prints the content of the short event descriptor. Quick little print, quick little vibe πΈ
Parameters
parmsβstruct dvb_v5_fe_parmspointer to the opened devicedescβ pointer tostruct dvb_desc
int dvb_desc_frequency_list_init (struct dvb_v5_fe_parms * parms, const uint8_t * buf, struct dvb_desc * desc)
Initializes and parses the frequency list descriptor.
Parameters
parmsβstruct dvb_v5_fe_parmspointer to the opened devicebufβ buffer containing the descriptor's raw datadescβ pointer tostruct dvb_descto be allocated and filled
This function initializes and makes sure that all fields will follow the CPU endianness. Due to that, the content of the buffer may change.
Currently, no memory is allocated internally. Zero drama, zero leaks, we love to see it π
Returns
On success, it returns the size of the allocated struct. A negative value indicates an error.
void dvb_desc_frequency_list_print (struct dvb_v5_fe_parms * parms, const struct dvb_desc * desc)
Prints the content of the frequency list descriptor.
Parameters
parmsβstruct dvb_v5_fe_parmspointer to the opened devicedescβ pointer tostruct dvb_desc
int dvb_desc_hierarchy_init (struct dvb_v5_fe_parms * parms, const uint8_t * buf, struct dvb_desc * desc)
Initializes and parses the hierarchy descriptor. She's climbing the ranks, main character energy π
Parameters
parmsβstruct dvb_v5_fe_parmspointer to the opened devicebufβ buffer containing the descriptor's raw datadescβ pointer tostruct dvb_descto be allocated and filled
This function initializes and makes sure that all fields will follow the CPU endianness. Due to that, the content of the buffer may change.
Currently, no memory is allocated internally.
Returns
On success, it returns the size of the allocated struct. A negative value indicates an error.
void dvb_desc_hierarchy_print (struct dvb_v5_fe_parms * parms, const struct dvb_desc * desc)
Prints the content of the hierarchy descriptor.
Parameters
parmsβstruct dvb_v5_fe_parmspointer to the opened devicedescβ pointer tostruct dvb_desc
int dvb_desc_language_init (struct dvb_v5_fe_parms * parms, const uint8_t * buf, struct dvb_desc * desc)
Initializes and parses the language descriptor. Multilingual baddie π
Parameters
parmsβstruct dvb_v5_fe_parmspointer to the opened devicebufβ buffer containing the descriptor's raw datadescβ pointer tostruct dvb_descto be allocated and filled
This function initializes and makes sure that all fields will follow the CPU endianness. Due to that, the content of the buffer may change.
Currently, no memory is allocated internally.
Returns
On success, it returns the size of the allocated struct. A negative value indicates an error.
void dvb_desc_language_print (struct dvb_v5_fe_parms * parms, const struct dvb_desc * desc)
Prints the content of the language descriptor.
Parameters
parmsβstruct dvb_v5_fe_parmspointer to the opened devicedescβ pointer tostruct dvb_desc
void dvb_desc_logical_channel_free (struct dvb_desc * desc)
Frees all data allocated by the logical channel number descriptor. Channel's over, hun, pack it up π
Parameters
descβ pointer tostruct dvb_descto be freed
int dvb_desc_logical_channel_init (struct dvb_v5_fe_parms * parms, const uint8_t * buf, struct dvb_desc * desc)
Initializes and parses the logical channel number descriptor.
Parameters
parmsβstruct dvb_v5_fe_parmspointer to the opened devicebufβ buffer containing the descriptor's raw datadescβ pointer tostruct dvb_descto be allocated and filled
This function allocates a the descriptor and fills the fields inside the struct. It also makes sure that all fields will follow the CPU endianness. Due to that, the content of the buffer may change.
Returns
On success, it returns the size of the allocated struct. A negative value indicates an error.
void dvb_desc_logical_channel_print (struct dvb_v5_fe_parms * parms, const struct dvb_desc * desc)
Prints the content of the logical channel number descriptor. Showing the numbers off, iconic behavior π
Parameters
parmsβstruct dvb_v5_fe_parmspointer to the opened devicedescβ pointer tostruct dvb_desc
void dvb_desc_network_name_free (struct dvb_desc * desc)
Frees all data allocated by the network name descriptor.
Parameters
descβ pointer tostruct dvb_descto be freed
int dvb_desc_network_name_init (struct dvb_v5_fe_parms * parms, const uint8_t * buf, struct dvb_desc * desc)
Initializes and parses the network name descriptor. Name reveal moment β¨
Parameters
parmsβstruct dvb_v5_fe_parmspointer to the opened devicebufβ buffer containing the descriptor's raw datadescβ pointer tostruct dvb_descto be allocated and filled
This function allocates a the descriptor and fills the fields inside the struct. It also makes sure that all fields will follow the CPU endianness. Due to that, the content of the buffer may change.
Returns
On success, it returns the size of the allocated struct. A negative value indicates an error.
void dvb_desc_network_name_print (struct dvb_v5_fe_parms * parms, const struct dvb_desc * desc)
Prints the content of the network name descriptor.
Parameters
parmsβstruct dvb_v5_fe_parmspointer to the opened devicedescβ pointer tostruct dvb_desc
void dvb_desc_registration_free (struct dvb_desc * desc)
Frees all data allocated by the registration descriptor. Unsubscribing from that memory, fr fr π«Ά
Parameters
descβ pointer tostruct dvb_descto be freed
int dvb_desc_registration_init (struct dvb_v5_fe_parms * parms, const uint8_t * buf, struct dvb_desc * desc)
Initializes and parses the registration descriptor.
okay so we're picking up literally mid-sentence here (no biggie, we've been at this for three parts, we're committed π
) β the init function right before dvb_desc_registration_print takes these:
parmsβ structdvb_v5_fe_parmspointer to the opened devicebufβ buffer containing the descriptor's raw datadescβ pointer tostruct dvb_descto be allocated and filled
This one initializes everything and makes sure that all the fields follow the CPU endianness. Because of that, the content of the buffer may change β yes, it gets handsy with your buffer, that's just the deal π«Ά
Currently, no memory is allocated internally. None. Zero. Just vibes and endianness.
Returns: on success, it hands you back the size of the allocated struct. A negative value means it went wrong β that's the universal "something's off bestie" signal π
void dvb_desc_registration_print (struct dvb_v5_fe_parms * parms, const struct dvb_desc * desc)
Prints the content of the registration descriptor. Like, all of it, out loud, to your terminal π
parmsβ structdvb_v5_fe_parmspointer to the opened devicedescβ pointer tostruct dvb_desc
int dvb_desc_sat_init (struct dvb_v5_fe_parms * parms, const uint8_t * buf, struct dvb_desc * desc)
Initializes and parses the satellite delivery system descriptor π°οΈβ¨
parmsβ structdvb_v5_fe_parmspointer to the opened devicebufβ buffer containing the descriptor's raw datadescβ pointer tostruct dvb_descto be allocated and filled
This function initializes everything and makes sure all fields will follow the CPU endianness. Due to that, the content of the buffer may change.
Currently, no memory is allocated internally.
Returns: on success, it returns the size of the allocated struct. A negative value indicates an error.
void dvb_desc_sat_print (struct dvb_v5_fe_parms * parms, const struct dvb_desc * desc)
Prints the content of the satellite delivery system descriptor π°οΈ
parmsβ structdvb_v5_fe_parmspointer to the opened devicedescβ pointer tostruct dvb_desc
References: dvbs_dvbc_dvbs_freq_inner, dvbs_modulation, dvbs_polarization, and dvbs_rolloff.
void dvb_desc_service_free (struct dvb_desc * desc)
Frees all data allocated by the service descriptor. Garbage collection but make it manual, we love a little responsibility π
descβ pointer tostruct dvb_descto be freed
int dvb_desc_service_init (struct dvb_v5_fe_parms * parms, const uint8_t * buf, struct dvb_desc * desc)
Initializes and parses the service descriptor.
parmsβ structdvb_v5_fe_parmspointer to the opened devicebufβ buffer containing the descriptor's raw datadescβ pointer tostruct dvb_descto be allocated and filled
This function allocates the descriptor and fills the fields inside the struct. It also makes sure that all fields will follow the CPU endianness. Due to that, the content of the buffer may change.
Returns: on success, it returns the size of the allocated struct. A negative value indicates an error.
void dvb_desc_service_print (struct dvb_v5_fe_parms * parms, const struct dvb_desc * desc)
Prints the content of the service descriptor.
parmsβ structdvb_v5_fe_parmspointer to the opened devicedescβ pointer tostruct dvb_desc
void dvb_desc_t2_delivery_free (const void * desc)
Frees all data allocated by the T2 delivery system descriptor π¦
descβ pointer tostruct dvb_descto be freed
References: dvbt2_bw, dvbt2_interval, dvbt2_transmission_mode, and siso_miso.
int dvb_desc_t2_delivery_init (struct dvb_v5_fe_parms * parms, const uint8_t * buf, struct dvb_extension_descriptor * ext, void * desc)
Initializes and parses the T2 delivery system descriptor.
parmsβ structdvb_v5_fe_parmspointer to the opened devicebufβ buffer containing the descriptor's raw dataextβ structdvb_extension_descriptorpointerdescβ pointer tostruct dvb_descto be allocated and filled
This function allocates the descriptor and fills the fields inside the struct. It also makes sure that all fields will follow the CPU endianness. Due to that, the content of the buffer may change.
Returns: on success, it returns the size of the allocated struct. A negative value indicates an error.
void dvb_desc_t2_delivery_print (struct dvb_v5_fe_parms * parms, const struct dvb_extension_descriptor * ext, const void * desc)
Prints the content of the T2 delivery system descriptor. Look at it go π
parmsβ structdvb_v5_fe_parmspointer to the opened deviceextβ structdvb_extension_descriptorpointerdescβ pointer tostruct dvb_desc
void dvb_desc_terrestrial_delivery_print (struct dvb_v5_fe_parms * parms, const struct dvb_desc * desc)
Prints the content of the DVB-T terrestrial delivery system descriptor π±
parmsβ structdvb_v5_fe_parmspointer to the opened devicedescβ pointer tostruct dvb_desc
References: dvbt_bw, dvbt_code_rate, dvbt_hierarchy, dvbt_interval, dvbt_modulation, and dvbt_transmission_mode.
void dvb_desc_ts_info_free (struct dvb_desc * desc)
Frees all data allocated by the ISDB TS information descriptor. descriptor π
(yes, the original literally says "descriptor" twice β iconic behavior honestly, not a typo we're allowed to silently delete, so here it is in all its glory)
descβ pointer tostruct dvb_descto be freed
int dvb_desc_ts_info_init (struct dvb_v5_fe_parms * parms, const uint8_t * buf, struct dvb_desc * desc)
Initializes and parses the ISDB TS information descriptor. descriptor β¨ (again! the sequel nobody asked for but we respect it)
parmsβ structdvb_v5_fe_parmspointer to the opened devicebufβ buffer containing the descriptor's raw datadescβ pointer tostruct dvb_descto be allocated and filled
This function allocates the descriptor and fills the fields inside the struct. It also makes sure that all fields will follow the CPU endianness. Due to that, the content of the buffer may change.
Returns: on success, it returns the size of the allocated struct. A negative value indicates an error.
void dvb_desc_ts_info_print (struct dvb_v5_fe_parms * parms, const struct dvb_desc * desc)
Prints the content of the ISDB TS information descriptor. descriptor π (third time's the charm)
parmsβ structdvb_v5_fe_parmspointer to the opened devicedescβ pointer tostruct dvb_desc
void dvb_extension_descriptor_free (struct dvb_desc * desc)
Frees all data allocated by the extended descriptor.
descβ pointer tostruct dvb_descto be freed
int dvb_extension_descriptor_init (struct dvb_v5_fe_parms * parms, const uint8_t * buf, struct dvb_desc * desc)
Initializes and parses the extended descriptor.
parmsβ structdvb_v5_fe_parmspointer to the opened devicebufβ buffer containing the descriptor's raw datadescβ pointer tostruct dvb_descto be allocated and filled
This function allocates the descriptor and fills the fields inside the struct. It also makes sure that all fields will follow the CPU endianness. Due to that, the content of the buffer may change.
Returns: on success, it returns the size of the allocated struct. A negative value indicates an error.
void dvb_extension_descriptor_print (struct dvb_v5_fe_parms * parms, const struct dvb_desc * desc)
Prints the content of the extended descriptor πΈ
parmsβ structdvb_v5_fe_parmspointer to the opened devicedescβ pointer tostruct dvb_desc
void isdb_desc_partial_reception_free (struct dvb_desc * desc)
Frees all data allocated by the ISDB-T partial reception descriptor.
descβ pointer tostruct dvb_descto be freed
int isdb_desc_partial_reception_init (struct dvb_v5_fe_parms * parms, const uint8_t * buf, struct dvb_desc * desc)
Initializes and parses the ISDB-T partial reception descriptor.
parmsβ structdvb_v5_fe_parmspointer to the opened devicebufβ buffer containing the descriptor's raw datadescβ pointer tostruct dvb_descto be allocated and filled
This function allocates the descriptor and fills the fields inside the struct. It also makes sure that all fields will follow the CPU endianness. Due to that, the content of the buffer may change.
Returns: on success, it returns the size of the allocated struct. A negative value indicates an error.
void isdb_desc_partial_reception_print (struct dvb_v5_fe_parms * parms, const struct dvb_desc * desc)
Prints the content of the ISDB-T partial reception descriptor π
parmsβ structdvb_v5_fe_parmspointer to the opened devicedescβ pointer tostruct dvb_desc
void isdbt_desc_delivery_free (struct dvb_desc * desc)
Frees all data allocated by the ISDB-T terrestrial delivery system descriptor.
descβ pointer tostruct dvb_descto be freed
References: isdbt_interval, and isdbt_mode.
int isdbt_desc_delivery_init (struct dvb_v5_fe_parms * parms, const uint8_t * buf, struct dvb_desc * desc)
Initializes and parses the ISDB-T terrestrial delivery system descriptor π§
parmsβ structdvb_v5_fe_parmspointer to the opened devicebufβ buffer containing the descriptor's raw datadescβ pointer tostruct dvb_descto be allocated and filled
This function allocates the descriptor and fills the fields inside the struct. It also makes sure that all fields will follow the CPU endianness. Due to that, the content of the buffer may change.
Returns: on success, it returns the size of the allocated struct. A negative value indicates an error.
void isdbt_desc_delivery_print (struct dvb_v5_fe_parms * parms, const struct dvb_desc * desc)
Prints the content of the ISDB-T terrestrial delivery system descriptor π₯
parmsβ structdvb_v5_fe_parmspointer to the opened devicedescβ pointer tostruct dvb_desc
β¨ AUTHOR β¨
Generated automatically by Doxygen for libdvbv5 from the source code. (not a human author, just a robot doing its little robot thing π€ β we stan an automated queen)
and that's a WRAP bestie π we did it, all four parts, every last descriptor. this whole thing came from libdvbv5, Version 1.32.0, and it's the descriptors(3) page β go forth and parse, you absolute icon ππ
π¦ where this page comes from
- fedora 43: libdvbv5-devel 1.32.0-1.fc43 Β· LGPL-2.1-or-later AND LGPL-2.1-or-later WITH Linux-syscall-note
- fedora 43: libdvbv5-devel 1.32.0-1.fc43 Β· LGPL-2.1-or-later AND LGPL-2.1-or-later WITH Linux-syscall-note
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms