aboutsummaryrefslogtreecommitdiffstats
path: root/src/Outputs.cpp
diff options
context:
space:
mode:
authorMatthias P. Braendli <matthias.braendli@mpb.li>2025-07-11 10:30:42 +0200
committerMatthias P. Braendli <matthias.braendli@mpb.li>2025-07-11 10:31:32 +0200
commit12ca282e72c4680be3bf7e92ac984be01b4821b9 (patch)
treeb5f4f1eb5907cc7590c0793364b599dc85e5a2e5 /src/Outputs.cpp
parentba26d2b1b21ab6b67c2166f96b3e8ff92c830141 (diff)
downloadODR-AudioEnc-12ca282e72c4680be3bf7e92ac984be01b4821b9.tar.gz
ODR-AudioEnc-12ca282e72c4680be3bf7e92ac984be01b4821b9.tar.bz2
ODR-AudioEnc-12ca282e72c4680be3bf7e92ac984be01b4821b9.zip
common: EDI per-output PFT config; allow setting TTL without UDP sourcenext
Diffstat (limited to 'src/Outputs.cpp')
-rw-r--r--src/Outputs.cpp13
1 files changed, 6 insertions, 7 deletions
diff --git a/src/Outputs.cpp b/src/Outputs.cpp
index fd723f6..3f78501 100644
--- a/src/Outputs.cpp
+++ b/src/Outputs.cpp
@@ -158,10 +158,8 @@ void EDI::add_udp_destination(const std::string& host, unsigned int port)
auto dest = make_shared<edi::udp_destination_t>();
dest->dest_addr = host;
dest->dest_port = port;
+ dest->pft_settings.enable_pft = true;
m_edi_conf.destinations.push_back(dest);
-
- // We cannot carry AF packets over UDP, because they would be too large.
- m_edi_conf.enable_pft = true;
}
void EDI::add_tcp_destination(const std::string& host, unsigned int port)
@@ -170,14 +168,15 @@ void EDI::add_tcp_destination(const std::string& host, unsigned int port)
dest->dest_addr = host;
dest->dest_port = port;
m_edi_conf.destinations.push_back(dest);
-
- m_edi_conf.dump = false;
}
void EDI::set_fec(int fec)
{
- m_edi_conf.enable_pft = true;
- m_edi_conf.fec = fec;
+ for (auto& edi_dest : m_edi_conf.destinations) {
+ if (auto udp_dest = dynamic_pointer_cast<edi::udp_destination_t>(edi_dest)) {
+ udp_dest->pft_settings.fec = fec;
+ }
+ }
}
bool EDI::enabled() const