Skip to content
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

Architecture: adding windows on ARM support #1239

Open
wants to merge 1 commit into
base: master
Choose a base branch
from

Conversation

thirumalai-qcom
Copy link

@thirumalai-qcom thirumalai-qcom commented Jul 16, 2024

Description

This pull request introduces Windows on ARM support for the OBS-WebSocket. The changes include modifications which are carefully guarded with ARM-specific macros to ensure compatibility without affecting the existing codebase.

Motivation and Context

The primary motivation for this change is to expand the compatibility of OBS Studio to include Windows on ARM-based systems. This enhancement allows users running on ARM architecture to leverage the functionalities of OBS-WebSocket. By ensuring that changes are guarded with ARM-specific macros, we maintain the integrity and compatibility of the existing codebase.

How Has This Been Tested?

Tested OS(s): Windows 11

The changes were tested by building the OBS Studio application on an ARM machine (X-Elite machine). All builds were successful. Basic functionality tests confirmed that the OBS Studio application with the modified WebSocket is functional.

Types of changes

Code Refactoring:

  • Replaces "std::numeric_limits<uint32_t>::max()" with "(std::numeric_limits<uint32_t>::max)()" to avoid conflicts with macros named "max" in certain environments.

Checklist:

  • I have read the Contributing Guidelines.
  • All commit messages are properly formatted and commits squashed where appropriate.
  • My code is not on master or a release/* branch.
  • The code has been tested.
  • I have included updates to all appropriate documentation.

@thirumalai-qcom thirumalai-qcom changed the title Architecture: Add ARM support Architecture: adding windows on ARM support Jul 17, 2024
@thirumalai-qcom thirumalai-qcom marked this pull request as ready for review July 17, 2024 17:53
Updated the code to use min/max from limits to avoid potential
compilation Issues on WOA devices.
@tt2468
Copy link
Member

tt2468 commented Aug 18, 2024

I don't fully understand this. The code in master already builds on ARM platforms for Mac and Linux, and is valid C++ code. For what reason should Windows not also work fine?

@thirumalai-qcom
Copy link
Author

I don't fully understand this. The code in master already builds on ARM platforms for Mac and Linux, and is valid C++ code.

This code causes compilation errors in WOA devices related to the use of std::numeric_limits<int>::min() and std::numeric_limits<int>::max(). The () are included to ensure that we are explicitly invoking the functions from the <limits> header rather than the windows macros that are defined.

Click here to view the previous discussion on this particular change in the Obs-Studio repo.

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.

2 participants