summaryrefslogtreecommitdiffstats
path: root/src/fig/FIG0.h
diff options
context:
space:
mode:
authorMatthias P. Braendli <matthias.braendli@mpb.li>2016-09-23 16:33:42 +0200
committerMatthias P. Braendli <matthias.braendli@mpb.li>2016-09-23 16:33:42 +0200
commit61e917e09678bad4ed3652b1dcbb3d8391cf34d6 (patch)
treea8bd2fbdf408dda6590984112b0c47642a2b4a56 /src/fig/FIG0.h
parentfedd97e8339e1bcdc3f657ecfb0c3d5b482d7cff (diff)
downloaddabmux-61e917e09678bad4ed3652b1dcbb3d8391cf34d6.tar.gz
dabmux-61e917e09678bad4ed3652b1dcbb3d8391cf34d6.tar.bz2
dabmux-61e917e09678bad4ed3652b1dcbb3d8391cf34d6.zip
Add FIG0/5 to transmit language now that it's not in 0/17 anymore
Diffstat (limited to 'src/fig/FIG0.h')
-rw-r--r--src/fig/FIG0.h29
1 files changed, 29 insertions, 0 deletions
diff --git a/src/fig/FIG0.h b/src/fig/FIG0.h
index 64d376d..95a8a85 100644
--- a/src/fig/FIG0.h
+++ b/src/fig/FIG0.h
@@ -114,6 +114,28 @@ class FIG0_3 : public IFIG
std::vector<DabComponent*>::iterator componentFIG0_3;
};
+// FIG type 0/5
+// The service component language feature is used to signal a language
+// associated with a service component; the spoken language of an audio
+// component or the language of the content of a data component. This
+// information can be used for user selection or display. The feature is
+// encoded in Extension 5 of FIG type 0 (FIG 0/5).
+class FIG0_5 : public IFIG
+{
+ public:
+ FIG0_5(FIGRuntimeInformation* rti);
+ virtual FillStatus fill(uint8_t *buf, size_t max_size);
+ virtual FIG_rate repetition_rate(void) { return FIG_rate::B; }
+
+ virtual const int figtype(void) const { return 0; }
+ virtual const int figextension(void) const { return 5; }
+
+ private:
+ FIGRuntimeInformation *m_rti;
+ bool m_initialised;
+ std::vector<DabComponent*>::iterator componentFIG0_5;
+};
+
// FIG type 0/8
// The Extension 8 of FIG type 0 (FIG 0/8) provides information to link
// together the service component description that is valid within the ensemble
@@ -371,6 +393,13 @@ struct FIGtype0_3 {
}
} PACKED;
+struct FIGtype0_5_short {
+ uint8_t SubChId:6;
+ uint8_t rfu:1;
+ uint8_t LS:1;
+
+ uint8_t language;
+} PACKED;
struct FIGtype0_8_short {
uint8_t SCIdS:4;