DAB: add 1MB pipe buffer (mbuffer) between dablin and ffmpeg to smooth dropouts

This commit is contained in:
DevBench 2026-02-06 01:14:43 +00:00
parent 22be3f3c97
commit 1944b3ce8e
2 changed files with 2 additions and 2 deletions

View file

@ -17,7 +17,7 @@ FROM jketterl/openwebrx:latest
# Install sox and runtime deps for dablin
# libfaad2 is required. libmpg123-0 is likely required for new dablin.
RUN apt-get update && apt-get install -y sox ffmpeg libfaad2 libmpg123-0 libsdl2-2.0-0 && rm -rf /var/lib/apt/lists/*
RUN apt-get update && apt-get install -y sox ffmpeg mbuffer libfaad2 libmpg123-0 libsdl2-2.0-0 && rm -rf /var/lib/apt/lists/*
# Copy new dablin binary
COPY --from=builder /src/dablin/build/src/dablin /usr/local/bin/dablin

View file

@ -12,7 +12,7 @@ class DablinModule(ExecModule):
)
def _buildArgs(self):
return ["bash", "-c", "dablin -u -s {:#06x} | ffmpeg -v error -i pipe:0 -f f32le -ar 48000 -ac 1 pipe:1".format(self.serviceId)]
return ["bash", "-c", "dablin -u -s {:#06x} | mbuffer -q -m 1M | ffmpeg -v error -i pipe:0 -f f32le -ar 48000 -ac 1 pipe:1".format(self.serviceId)]
def setDabServiceId(self, serviceId: int) -> None:
self.serviceId = serviceId