aboutsummaryrefslogtreecommitdiffstats
path: root/src/etianalyse.cpp
diff options
context:
space:
mode:
authorMatthias P. Braendli <matthias.braendli@mpb.li>2019-01-16 15:44:45 +0100
committerMatthias P. Braendli <matthias.braendli@mpb.li>2019-01-16 15:44:45 +0100
commit9d3d404a46dd79ed2b7a6c39719c76839787127e (patch)
tree9f67996d2f72b0f93302d695299b173e50698244 /src/etianalyse.cpp
parent1df947bae7346948e08edb75616d34fcf8802dae (diff)
downloadetisnoop-9d3d404a46dd79ed2b7a6c39719c76839787127e.tar.gz
etisnoop-9d3d404a46dd79ed2b7a6c39719c76839787127e.tar.bz2
etisnoop-9d3d404a46dd79ed2b7a6c39719c76839787127e.zip
Add charset decoder for FIG1 labels
Diffstat (limited to 'src/etianalyse.cpp')
-rw-r--r--src/etianalyse.cpp26
1 files changed, 5 insertions, 21 deletions
diff --git a/src/etianalyse.cpp b/src/etianalyse.cpp
index b419593..69f4cf7 100644
--- a/src/etianalyse.cpp
+++ b/src/etianalyse.cpp
@@ -91,19 +91,6 @@ static void print_fig_result(const fig_result_t& fig_result, const display_setti
}
}
-static std::string flag_to_shortlabel(const ensemble_database::label_t label)
-{
- stringstream shortlabel;
- for (size_t i = 0; i < label.label.size(); ++i) {
- if (label.shortlabel_flag & 0x8000 >> i) {
- shortlabel << label.label[i];
- }
- }
-
- return shortlabel.str();
-}
-
-
void ETI_Analyser::analyse()
{
if (config.etifd != nullptr) {
@@ -578,8 +565,8 @@ void ETI_Analyser::eti_analyse()
fprintf(stat_fd, "---\n");
fprintf(stat_fd, "ensemble:\n");
fprintf(stat_fd, " id: 0x%x\n", ensemble.EId);
- fprintf(stat_fd, " label: %s\n", ensemble.label.label.c_str());
- fprintf(stat_fd, " shortlabel: %s\n", flag_to_shortlabel(ensemble.label).c_str());
+ fprintf(stat_fd, " label: %s\n", ensemble.label.label().c_str());
+ fprintf(stat_fd, " shortlabel: %s\n", ensemble.label.shortlabel().c_str());
fprintf(stat_fd, "audio:\n");
for (const auto& snoop : config.streams_to_decode) {
@@ -592,12 +579,9 @@ void ETI_Analyser::eti_analyse()
corresponding_service_found = true;
fprintf(stat_fd, " - service_id: 0x%x\n", service.id);
fprintf(stat_fd, " subchannel_id: 0x%x\n", component.subchId);
- fprintf(stat_fd, " label: %s\n", service.label.label.c_str());
- fprintf(stat_fd, " shortlabel: %s\n", flag_to_shortlabel(service.label).c_str());
- if (not component.label.label.empty()) {
- fprintf(stat_fd, " component_label: %s\n", component.label.label.c_str());
- }
- // TODO FIG2 labels
+ fprintf(stat_fd, " label: %s\n", service.label.label().c_str());
+ fprintf(stat_fd, " shortlabel: %s\n", service.label.shortlabel().c_str());
+ fprintf(stat_fd, " extended_label: %s\n", service.label.assemble().c_str());
try {
const auto& subch = ensemble.get_subchannel(component.subchId);