From 3b97c617af829e9c1f8d46a460756156a3d6f0e7 Mon Sep 17 00:00:00 2001 From: Mauro Carvalho Chehab Date: Fri, 6 Jan 2012 19:56:18 -0200 Subject: [PATCH] utils/dvb: Add a description for the parsed descriptors Signed-off-by: Mauro Carvalho Chehab --- utils/dvb/descriptors.c | 116 +++++++++++++++++++++++++++++++++++++++++++++++- 1 file changed, 115 insertions(+), 1 deletion(-) diff --git a/utils/dvb/descriptors.c b/utils/dvb/descriptors.c index b83d6be..782d2de 100644 --- a/utils/dvb/descriptors.c +++ b/utils/dvb/descriptors.c @@ -7,6 +7,119 @@ static char *default_charset = "iso-8859-1"; static char *output_charset = "utf-8"; +static const char *descriptors[] = { + [network_name_descriptor] = "network_name_descriptor", + [service_list_descriptor] = "service_list_descriptor", + [stuffing_descriptor] = "stuffing_descriptor", + [satellite_delivery_system_descriptor] = "satellite_delivery_system_descriptor", + [cable_delivery_system_descriptor] = "cable_delivery_system_descriptor", + [VBI_data_descriptor] = "VBI_data_descriptor", + [VBI_teletext_descriptor] = "VBI_teletext_descriptor", + [bouquet_name_descriptor] = "bouquet_name_descriptor", + [service_descriptor] = "service_descriptor", + [country_availability_descriptor] = "country_availability_descriptor", + [linkage_descriptor] = "linkage_descriptor", + [NVOD_reference_descriptor] = "NVOD_reference_descriptor", + [time_shifted_service_descriptor] = "time_shifted_service_descriptor", + [short_event_descriptor] = "short_event_descriptor", + [extended_event_descriptor] = "extended_event_descriptor", + [time_shifted_event_descriptor] = "time_shifted_event_descriptor", + [component_descriptor] = "component_descriptor", + [mosaic_descriptor] = "mosaic_descriptor", + [stream_identifier_descriptor] = "stream_identifier_descriptor", + [CA_identifier_descriptor] = "CA_identifier_descriptor", + [content_descriptor] = "content_descriptor", + [parental_rating_descriptor] = "parental_rating_descriptor", + [teletext_descriptor] = "teletext_descriptor", + [telephone_descriptor] = "telephone_descriptor", + [local_time_offset_descriptor] = "local_time_offset_descriptor", + [subtitling_descriptor] = "subtitling_descriptor", + [terrestrial_delivery_system_descriptor] = "terrestrial_delivery_system_descriptor", + [multilingual_network_name_descriptor] = "multilingual_network_name_descriptor", + [multilingual_bouquet_name_descriptor] = "multilingual_bouquet_name_descriptor", + [multilingual_service_name_descriptor] = "multilingual_service_name_descriptor", + [multilingual_component_descriptor] = "multilingual_component_descriptor", + [private_data_specifier_descriptor] = "private_data_specifier_descriptor", + [service_move_descriptor] = "service_move_descriptor", + [short_smoothing_buffer_descriptor] = "short_smoothing_buffer_descriptor", + [frequency_list_descriptor] = "frequency_list_descriptor", + [partial_transport_stream_descriptor] = "partial_transport_stream_descriptor", + [data_broadcast_descriptor] = "data_broadcast_descriptor", + [scrambling_descriptor] = "scrambling_descriptor", + [data_broadcast_id_descriptor] = "data_broadcast_id_descriptor", + [transport_stream_descriptor] = "transport_stream_descriptor", + [DSNG_descriptor] = "DSNG_descriptor", + [PDC_descriptor] = "PDC_descriptor", + [AC_3_descriptor] = "AC_3_descriptor", + [ancillary_data_descriptor] = "ancillary_data_descriptor", + [cell_list_descriptor] = "cell_list_descriptor", + [cell_frequency_link_descriptor] = "cell_frequency_link_descriptor", + [announcement_support_descriptor] = "announcement_support_descriptor", + [application_signalling_descriptor] = "application_signalling_descriptor", + [adaptation_field_data_descriptor] = "adaptation_field_data_descriptor", + [service_identifier_descriptor] = "service_identifier_descriptor", + [service_availability_descriptor] = "service_availability_descriptor", + [default_authority_descriptor] = "default_authority_descriptor", + [related_content_descriptor] = "related_content_descriptor", + [TVA_id_descriptor] = "TVA_id_descriptor", + [content_identifier_descriptor] = "content_identifier_descriptor", + [time_slice_fec_identifier_descriptor] = "time_slice_fec_identifier_descriptor", + [ECM_repetition_rate_descriptor] = "ECM_repetition_rate_descriptor", + [S2_satellite_delivery_system_descriptor] = "S2_satellite_delivery_system_descriptor", + [enhanced_AC_3_descriptor] = "enhanced_AC_3_descriptor", + [DTS_descriptor] = "DTS_descriptor", + [AAC_descriptor] = "AAC_descriptor", + [XAIT_location_descriptor] = "XAIT_location_descriptor", + [FTA_content_management_descriptor] = "FTA_content_management_descriptor", + [extension_descriptor] = "extension_descriptor", + [conditional_access_descriptor] = "conditional_access_descriptor", + [copyright_descriptor] = "copyright_descriptor", + [carousel_id_descriptor] = "carousel_id_descriptor", + [association_tag_descriptor] = "association_tag_descriptor", + [deferred_association_tags_descriptor] = "deferred_association_tags_descriptor", + [AVC_video_descriptor] = "AVC_video_descriptor", + [AVC_timing_and_HRD_descriptor] = "AVC_timing_and_HRD_descriptor", + [hierarchical_transmission_descriptor] = "hierarchical_transmission_descriptor", + [digital_copy_control_descriptor] = "digital_copy_control_descriptor", + [network_identifier_descriptor] = "network_identifier_descriptor", + [partial_transport_stream_time_descriptor] = "partial_transport_stream_time_descriptor", + [audio_component_descriptor] = "audio_component_descriptor", + [hyperlink_descriptor] = "hyperlink_descriptor", + [target_area_descriptor] = "target_area_descriptor", + [data_contents_descriptor] = "data_contents_descriptor", + [video_decode_control_descriptor] = "video_decode_control_descriptor", + [download_content_descriptor] = "download_content_descriptor", + [CA_EMM_TS_descriptor] = "CA_EMM_TS_descriptor", + [CA_contract_information_descriptor] = "CA_contract_information_descriptor", + [CA_service_descriptor] = "CA_service_descriptor", + [TS_Information_descriptior] = "TS_Information_descriptior", + [extended_broadcaster_descriptor] = "extended_broadcaster_descriptor", + [logo_transmission_descriptor] = "logo_transmission_descriptor", + [basic_local_event_descriptor] = "basic_local_event_descriptor", + [reference_descriptor] = "reference_descriptor", + [node_relation_descriptor] = "node_relation_descriptor", + [short_node_information_descriptor] = "short_node_information_descriptor", + [STC_reference_descriptor] = "STC_reference_descriptor", + [series_descriptor] = "series_descriptor", + [event_group_descriptor] = "event_group_descriptor", + [SI_parameter_descriptor] = "SI_parameter_descriptor", + [broadcaster_Name_Descriptor] = "broadcaster_Name_Descriptor", + [component_group_descriptor] = "component_group_descriptor", + [SI_prime_TS_descriptor] = "SI_prime_TS_descriptor", + [board_information_descriptor] = "board_information_descriptor", + [LDT_linkage_descriptor] = "LDT_linkage_descriptor", + [connected_transmission_descriptor] = "connected_transmission_descriptor", + [content_availability_descriptor] = "content_availability_descriptor", + [service_group_descriptor] = "service_group_descriptor", + [carousel_compatible_composite_Descriptor] = "carousel_compatible_composite_Descriptor", + [conditional_playback_descriptor] = "conditional_playback_descriptor", + [ISDBT_delivery_system_descriptor] = "ISDBT_delivery_system_descriptor", + [partial_reception_descriptor] = "partial_reception_descriptor", + [emergency_information_descriptor] = "emergency_information_descriptor", + [data_component_descriptor] = "data_component_descriptor", + [system_management_descriptor] = "system_management_descriptor", +}; + static void parse_descriptor(struct dvb_descriptors *dvb_desc, const unsigned char *buf, int len, void *ptr) @@ -32,7 +145,8 @@ static void parse_descriptor(struct dvb_descriptors *dvb_desc, /* FIXME: Not all descriptors are valid for all tables */ if (dvb_desc->verbose) - printf("Descriptor 0x%02x, len %d\n", buf[0], buf[1]); + printf("%s (0x%02x), len %d\n", + descriptors[buf[0]], buf[0], buf[1]); switch(buf[0]) { case network_name_descriptor: parse_string(&dvb_desc->nit_table.network_name, -- 2.7.4