-
-
Notifications
You must be signed in to change notification settings - Fork 419
Add check for minimum NDI & OBS version requirement - 6.1 release #1263
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Pull Request Overview
This PR enforces a minimum version check for OBS and the NDI SDK to ensure compatibility with the upcoming 6.1 release. Key changes include:
- Updating the minimum OBS version from 30.0.0 to 31.0.0 and adding a minimum check for the NDI SDK version.
- Implementing a new function for version comparison and integrating version checks in the module load process.
- Updating documentation in README.md to reflect the new OBS version requirement.
Reviewed Changes
Copilot reviewed 3 out of 4 changed files in this pull request and generated 2 comments.
| File | Description |
|---|---|
| src/plugin-main.h | Updated version macros to enforce new minimum OBS and NDI requirements. |
| src/plugin-main.cpp | Added a new version comparison function and integrated version checks. |
| README.md | Updated the OBS version requirement in the documentation. |
Files not reviewed (1)
- buildspec.json: Language not supported
|
Can the minimum version be dependent on the platform? Since the Fedora platform is behind, do we wait for that platform to move up before enforcing the minimum for all, or do we say Fedora will work with the minimum supported on that platform (5.6)? |
|
Sadly that minimum requirement is a hard requirement as it will impact on the configuration files, some functions and even some fixes This makes DISTROAV 6.1 a sane base to built upon. Also NDI 6 was technically already required for distroAV 6.0 but was not enforced. For the Fedora users : I contacted the maintainer of the libndi package, he will look into it in the coming weeks. This brings a broader question/issue : should we maintain the packages (libndi / DISTROAV) for the distro we officially support? Fedora is technically not officially supported, but we try to get it working still. In short : no platform-specific exception should be implemented. Should we have a way to allow for pre NDI V6 ? Nop, It was already required for distroAV 6.0. now enforced. Otherwise we are stuck to this feature level until the next DISTROAV major release Should we have a way to allow for pre OBS 31 ? Theses changes makes the reason for a new DistroAV major version. Also : anyone on 4.14, this might be the last version where the "upgrade" will be supported. |
|
Writing here since... discord is a mess and my memory issues preceeds me!
I like the fact of the release (as it is in the artifacs for Ubuntu) worked directly on Fedora, even if I haven't figured out yet the paths fully to place the things within their intended folder. It could work in fedora via direct install instead of repo.. this opens the path to not have to compile and almost provide support for any linux distro as long as the paths are known! That aside.. as I already brought up on the discord.. it is not detecting the version of NDI on Ubuntu.. As pointed by @Trouffman the release directly shows on the window popup as blank/empty. I tried to upload the log file here yet it isn't working.. it's within the discord messages! |
|
After the quick update:
I tested stability from Ubuntu through wifi6. 1440p@60 with 6 channel audio for aproximately 20 minutes. No issuess so far. |
Context
Prepare for 6.1 release
Add Minimum version check (OBS & NDI)
Goal
Enforce minimum requirements in OBS Major version and NDI SDK
Unload plugin if minimum requirements are not met (avoid issues & breaking things)
Why enforce min requirement for OBS/NDI version?
Read more at : #1189
TL;DR :
Adding a note to this TL;DR above : some changes in the audio processing in the DistroAV code requires it and bugs relating to audio have been corrected in NDI 6.1 (still we are only enforcing 6.0 for now).
Behavior expected
If the minimum OBS & NDI version are not met:
If the minimum OBS & NDI versions are met:
Change management / transparency / Roll-out plan
Some users are still on 4.14, and have not yet moved to DistroAV v6, but have moved on to OBS 31 and NDI 6. So no more excuses to hold back upgrade. The 4.14 codebase is over a year old and 2 major versions behind and not maintained/supported.
Some distros (Fedora?) are quite behind on NDI SDK (like 5.6), I have reached out to a couple maintainers of said package/distros (Nobara) that this might impact some of their users. - Fedora is not officially supported, so this was as far as I could go.
OBS 31 config management changes means that once the plugin is used on that version onwards, there is no way back for the config. No backward compatibility / downgrading will be put in place (as more than 2/3 of the users are on OBS 31+ already)
There are a lot of bug fixes and improvement in 6.1 that would have deserved a minor release. But here we are, the longer you wait to update, the more changes are required.
It is expected that upgrade from DistroAV 6.0 to 6.1 to be seamless. It is expected the same from 4.14 to 6.1 (but not planned to be tested)