diff options
author | Matthias P. Braendli <matthias.braendli@mpb.li> | 2019-01-29 15:55:17 +0100 |
---|---|---|
committer | Matthias P. Braendli <matthias.braendli@mpb.li> | 2019-01-29 15:55:17 +0100 |
commit | 4acf7a34c202293884739b40af699943d7e8e9d9 (patch) | |
tree | 1f6b2d0a8c3646723c7785aa1f3fad25b7aadc1f /src/ConfigParser.cpp | |
parent | 2346b17f650e56f70046e95a54f356a8e3e29107 (diff) | |
download | dabmux-4acf7a34c202293884739b40af699943d7e8e9d9.tar.gz dabmux-4acf7a34c202293884739b40af699943d7e8e9d9.tar.bz2 dabmux-4acf7a34c202293884739b40af699943d7e8e9d9.zip |
Add partial FIG2 label support
Add support for Ensemble label, programme services and components,
although the implementation for the component label is not properly
tested. (data services still to be done)
Neither short labels nor UCS-2 are not yet implemented.
Also, support for draftETSI TS 103 176 which redefines the meaning of
Rfa is still pending.
Diffstat (limited to 'src/ConfigParser.cpp')
-rw-r--r-- | src/ConfigParser.cpp | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/src/ConfigParser.cpp b/src/ConfigParser.cpp index f51eb03..07aee0e 100644 --- a/src/ConfigParser.cpp +++ b/src/ConfigParser.cpp @@ -412,7 +412,7 @@ static void parse_general(ptree& pt, } int success = -5; - string ensemble_label = pt_ensemble.get<string>("label"); + string ensemble_label = pt_ensemble.get<string>("label", ""); string ensemble_short_label(ensemble_label); try { ensemble_short_label = pt_ensemble.get<string>("shortlabel"); @@ -447,6 +447,8 @@ static void parse_general(ptree& pt, abort(); } + ensemble->label.setFIG2Label(pt_ensemble.get<string>("fig2_label", "")); + try { ptree pt_announcements = pt_ensemble.get_child("announcements"); for (auto announcement : pt_announcements) { @@ -549,7 +551,7 @@ void parse_ptree( int success = -5; - string servicelabel = pt_service.get<string>("label"); + string servicelabel = pt_service.get<string>("label", ""); string serviceshortlabel(servicelabel); try { serviceshortlabel = pt_service.get<string>("shortlabel"); @@ -584,6 +586,8 @@ void parse_ptree( abort(); } + service->label.setFIG2Label(pt_service.get<string>("fig2_label", "")); + service->id = new_service_id; service->ecc = hexparse(pt_service.get("ecc", "0")); service->pty_settings.pty = hexparse(pt_service.get("pty", "0")); @@ -744,6 +748,8 @@ void parse_ptree( abort(); } + component->label.setFIG2Label(pt_comp.get<string>("fig2_label", "")); + if (component->SCIdS == 0 and not component->label.long_label().empty()) { etiLog.level(warn) << "Primary component " << component->uid << " has label set. Since V2.1.1 of the specification, only secondary" |