summaryrefslogtreecommitdiffstats
path: root/src/DabMultiplexer.h
diff options
context:
space:
mode:
authorMatthias P. Braendli <matthias.braendli@mpb.li>2016-12-23 22:27:03 +0100
committerMatthias P. Braendli <matthias.braendli@mpb.li>2016-12-23 22:27:03 +0100
commit2b014e2f00df81eefe977b901ab601ea11ccb895 (patch)
treea5c6fe371838ff3e153c99c6a87554b55b2284d1 /src/DabMultiplexer.h
parent1d2c8bf95e8d9c7c6f282f266b149bc82f1c8371 (diff)
downloaddabmux-2b014e2f00df81eefe977b901ab601ea11ccb895.tar.gz
dabmux-2b014e2f00df81eefe977b901ab601ea11ccb895.tar.bz2
dabmux-2b014e2f00df81eefe977b901ab601ea11ccb895.zip
Add EDI fragment interleaver
Diffstat (limited to 'src/DabMultiplexer.h')
-rw-r--r--src/DabMultiplexer.h9
1 files changed, 5 insertions, 4 deletions
diff --git a/src/DabMultiplexer.h b/src/DabMultiplexer.h
index e2a94f5..b3e432e 100644
--- a/src/DabMultiplexer.h
+++ b/src/DabMultiplexer.h
@@ -23,8 +23,7 @@
along with ODR-DabMux. If not, see <http://www.gnu.org/licenses/>.
*/
-#ifndef __DAB_MULTIPLEXER_H__
-#define __DAB_MULTIPLEXER_H__
+#pragma once
#ifdef HAVE_CONFIG_H
# include "config.h"
@@ -35,6 +34,7 @@
#include "dabOutput/edi/TagPacket.h"
#include "dabOutput/edi/AFPacket.h"
#include "dabOutput/edi/PFT.h"
+#include "dabOutput/edi/Interleaver.h"
#include "fig/FIGCarousel.h"
#include "crc.h"
#include "utils.h"
@@ -102,6 +102,9 @@ class DabMultiplexer : public RemoteControllable {
// The AF Packet will be protected with reed-solomon and split in fragments
edi::PFT edi_pft;
+
+ // To mitigate for burst packet loss, PFT fragments can be sent out-of-order
+ edi::Interleaver edi_interleaver;
#endif // HAVE_OUTPUT_EDI
/* New FIG Carousel */
@@ -130,5 +133,3 @@ class DabMultiplexer : public RemoteControllable {
#define DEFAULT_SERVICE_ID 50
#define DEFAULT_PACKET_ADDRESS 0
-#endif
-