Skip to content

Default NDI name for filters to be <filter> (<source>)#1412

Merged
Trouffman merged 14 commits into
DistroAV:masterfrom
BitRate27:defaultfiltername
Apr 9, 2026
Merged

Default NDI name for filters to be <filter> (<source>)#1412
Trouffman merged 14 commits into
DistroAV:masterfrom
BitRate27:defaultfiltername

Conversation

@BitRate27

@BitRate27 BitRate27 commented Feb 20, 2026

Copy link
Copy Markdown
Contributor

This fixes issue 1302 requesting default for NDI names be unique.

To do this we look for <filter> and <source> in the NDI name field and replace with the appropriate string from OBS. We also set the Default for NDI names for Filters to be "<filter> (<source>)" in en-US so that we continue to support existing names in saved collections. One caveat is we had to remove the NDIPlugin.FilterProps.NDIName.Default from the other locale files as this would require the tests to be language dependent.

This keeps the names unique as there are no duplicated filter names in a source and no duplicated source names in a OBS collection.

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Updates the NDI dedicated output filter so its default NDI stream name is unique by default (based on filter + source name), and keeps existing saved collections working by using placeholder expansion at runtime.

Changes:

  • Set the en-US default NDI filter name to "<filter> (<source>)" and remove the localized default keys from other locales.
  • Expand <filter> / <source> placeholders when creating the NDI sender and recreate the sender on rename events.
  • Attempt to lazily create the sender during ndi_filter_tick when it wasn’t created earlier (e.g., missing parent).

Reviewed changes

Copilot reviewed 14 out of 14 changed files in this pull request and generated 5 comments.

Show a summary per file
File Description
src/ndi-filter.cpp Adds placeholder expansion and rename-driven sender recreation for unique default filter NDI names.
data/locale/en-US.ini Changes default filter NDI name string to "<filter> (<source>)".
data/locale/ca-ES.ini Removes localized default key for filter NDI name (relies on fallback).
data/locale/de-DE.ini Removes localized default key for filter NDI name (relies on fallback).
data/locale/es-ES.ini Removes localized default key for filter NDI name (relies on fallback).
data/locale/fr-FR.ini Removes localized default key for filter NDI name (relies on fallback).
data/locale/hu-HU.ini Removes localized default key for filter NDI name (relies on fallback).
data/locale/ko-KR.ini Removes localized default key for filter NDI name (relies on fallback).
data/locale/nl-NL.ini Removes localized default key for filter NDI name (relies on fallback).
data/locale/pt-BR.ini Removes localized default key for filter NDI name (relies on fallback).
data/locale/ro-RO.ini Removes localized default key for filter NDI name (relies on fallback).
data/locale/sv-SE.ini Removes localized default key for filter NDI name (relies on fallback).
data/locale/uk-UA.ini Removes localized default key for filter NDI name (relies on fallback).
data/locale/zh-CN.ini Removes localized default key for filter NDI name (relies on fallback).

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment thread src/ndi-filter.cpp
Comment thread src/ndi-filter.cpp
Comment thread src/ndi-filter.cpp
Comment thread src/ndi-filter.cpp Outdated
Comment thread src/ndi-filter.cpp Outdated
@Trouffman
Trouffman merged commit 5c51cf3 into DistroAV:master Apr 9, 2026
6 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants