-
-
Notifications
You must be signed in to change notification settings - Fork 8.1k
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
Windows ARM64 Support #4771
base: master
Are you sure you want to change the base?
Windows ARM64 Support #4771
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.
Please don't include merge commits or revert commits in PRs.
Please adhere to our Commit Guidelines.
Multiple commits seemingly commit the same changes:
You do not need to use backticks in commit messages. They don't render in Git CLI, so they're just taking up extra characters.
Some of the dependent PRs make the same changes present in this PR, but with different commit messages.
This is only a draft for now, and I may consider slowly cherry-picking them out from here to separate PRs if needed. This branch does need some substantial rebase process. I'm currently thinking about how to do it. Maybe I'll delete all of these commits and start over. The mentioned PRs are needed for it to compile for Windows ARM64, should I merge these PRs into this branch, or not? @RytoEX |
a22ac89
to
7263f25
Compare
0285e53
to
370b79c
Compare
d764086
to
3ce6287
Compare
76fcaa5
to
f6331c6
Compare
f6331c6
to
8e1935f
Compare
8e1935f
to
73e26fd
Compare
73e26fd
to
3a24339
Compare
523c7e4
to
4b4710e
Compare
Instead of merging other branches into your branch or creating merge commits, please rebase your changes on top of the current git master. For an example of how you can incorporate changes from separate, but dependent, PRs into this one, see #5218 and its various related PRs. |
That's exactly what I did, |
Looks like the second force push you did corrected the issue I was seeing in the GitHub Web UI. |
fdd6110
to
de74b88
Compare
This addresses potential warnings and errors on symbol/macro redefinitions, including `max`, `min` and `WIN32_LEAN_AND_MEAN`.
`S_THRESHOLD` is defined in `winbase.h`.
de74b88
to
35cb9b6
Compare
Current statusAs of this commit, the Windows ARM64 port is near complete. |
Python has experimental arm64 installers on its website, and I believe LuaJIT can be compiled for arm64 on windows. In case you need testers, I have an arm64 device and can do some light testing. |
Oh, there are also arm64 nightly builds for VLC: https://artifacts.videolan.org/vlc/nightly-win64-arm-llvm/ |
what is news now? it is completed? |
Unfortunately, due to some upstream changes, it’s currently no where near completed. The Windows dependencies are currently being overhauled to use the MSVC toolchain. It’s better to wait for that overhaul to be completed first, then we can have proper support for Windows ARM64. |
could you guide me to build windows ARM64? I want to try it. I have qcom arm windows compute now. |
Basically:
The MSVC toolchain dep PR has been merged not long ago, and I just started getting back. The last time I tried to compile OBS Studio, there were some regressions that needs quite a lot of work. For example, NVENC is somewhat glued in while it needs to be removed entirely for Windows ARM64 build. |
We don't have a Windows ARM64 driver for AJA devices yet. It is safe to disable AJA plugins in a Windows ARM64 build. |
Description
Port OBS Studio to Windows ARM64
You can find the latest build here:
https://github.com/tommyvct/obs-studio/releases
Motivation and Context
Microsoft launched another ARM based Windows device in October 2019, and this time it looks promising.
More and more manufactures are joining the Windows ARM64 force and their product looks promising, too.
This time the situation is much better than Windows 8 era.
ARM devices are always on, always connected, consume much less energy, and have days of battery life.
Then I bought it. It was great except the lack of native ARM64 software.
I decided to do my part to make it better by porting open source software to Windows ARM64.
How Has This Been Tested?
It compiles, and can stream and record on Windows ARM64 devices like Surface Pro X.
CI Builds can be found here:
Types of changes
Breaking Changes, New Feature
See also
https://github.com/obsproject/obs-studio/wiki/Build-Instructions-for-Windows-ARM64
Road to official release
PR Dependency
The following PR needs to be merged first:
method
#4730 or obs-filters: Don't require libSpeexDSP to compile #4601ENABLE_QSV11
option to disable QSV encoder #4748External Dependency
Quality of Life Improvements
simde
#5067Checklist: