From 530b765a6ab2b43f7240896b92ed83e3518ff3ba Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Gast=C3=B3n=20Bogar=C3=ADn?= Date: Fri, 28 Aug 2026 17:06:18 -0300 Subject: [PATCH 1/3] pass no-interleave flag to output --- src/moq-output.cpp | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/src/moq-output.cpp b/src/moq-output.cpp index 1fddb5e..337695a 100644 --- a/src/moq-output.cpp +++ b/src/moq-output.cpp @@ -7,6 +7,10 @@ #define VIDEO_TIMESCALE 1000000u #define MOQ_HANDSHAKE_TIMEOUT_US 5000000ull +#ifndef OBS_OUTPUT_NO_INTERLEAVE +#define OBS_OUTPUT_NO_INTERLEAVE (1 << 7) +#endif + MOQOutput::MOQOutput(obs_data_t *settings, obs_output_t *output) : output(output) { blog(LOG_INFO, "[obs-moq] output created"); @@ -472,7 +476,7 @@ void register_moq_output() { struct obs_output_info info = {}; info.id = "moq_output"; - info.flags = OBS_OUTPUT_AV | OBS_OUTPUT_ENCODED | OBS_OUTPUT_SERVICE; + info.flags = OBS_OUTPUT_AV | OBS_OUTPUT_ENCODED | OBS_OUTPUT_SERVICE | OBS_OUTPUT_NO_INTERLEAVE; info.protocols = "MOQ"; info.encoded_video_codecs = "h264;hevc;av1"; info.encoded_audio_codecs = "aac;opus"; From 6d110c855310f3728bfe9830a4064f9f7ad819ac Mon Sep 17 00:00:00 2001 From: ghbogarin <103210250+ghbogarin@users.noreply.github.com> Date: Mon, 14 Sep 2026 17:23:36 -0300 Subject: [PATCH 2/3] Update src/moq-output.cpp Co-authored-by: santi-ferreiro --- src/moq-output.cpp | 3 --- 1 file changed, 3 deletions(-) diff --git a/src/moq-output.cpp b/src/moq-output.cpp index 337695a..f9c88c7 100644 --- a/src/moq-output.cpp +++ b/src/moq-output.cpp @@ -7,9 +7,6 @@ #define VIDEO_TIMESCALE 1000000u #define MOQ_HANDSHAKE_TIMEOUT_US 5000000ull -#ifndef OBS_OUTPUT_NO_INTERLEAVE -#define OBS_OUTPUT_NO_INTERLEAVE (1 << 7) -#endif MOQOutput::MOQOutput(obs_data_t *settings, obs_output_t *output) : output(output) { From 745a4ea85640cb3aeabdb18232960e283051d502 Mon Sep 17 00:00:00 2001 From: ghbogarin <103210250+ghbogarin@users.noreply.github.com> Date: Mon, 14 Sep 2026 17:23:42 -0300 Subject: [PATCH 3/3] Update src/moq-output.cpp Co-authored-by: santi-ferreiro --- src/moq-output.cpp | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/src/moq-output.cpp b/src/moq-output.cpp index f9c88c7..c967d72 100644 --- a/src/moq-output.cpp +++ b/src/moq-output.cpp @@ -473,7 +473,13 @@ void register_moq_output() { struct obs_output_info info = {}; info.id = "moq_output"; - info.flags = OBS_OUTPUT_AV | OBS_OUTPUT_ENCODED | OBS_OUTPUT_SERVICE | OBS_OUTPUT_NO_INTERLEAVE; + uint32_t flags = OBS_OUTPUT_AV | OBS_OUTPUT_ENCODED | OBS_OUTPUT_SERVICE; +#ifdef OBS_OUTPUT_NO_INTERLEAVE + flags |= OBS_OUTPUT_NO_INTERLEAVE; +#else +blog(LOG_INFO, "[obs-moq] libobs does not have OBS_OUTPUT_NO_INTERLEAVE; the interleaver will remain active"); +#endif + info.flags = flags; info.protocols = "MOQ"; info.encoded_video_codecs = "h264;hevc;av1"; info.encoded_audio_codecs = "aac;opus";