15012 Commits
Author SHA1 Message Date
Warchamp7andRyan Foster 9858e7e722 frontend: Enforce minimum height for QList items 31.1.0 2025-07-07 14:35:42 -04:00
Ryan Foster c88a364d90 CI: Prevent hotfixes from overwriting Flathub beta
When 31.0.4 was published, it published to the Flathub beta channel,
which overwrote the running 31.1.0 beta/rc. This was due to an
assumption that we would not publish an out-of-band hotfix release once
we had moved to a new beta release cycle. To prevent this in the future,
we can check the last two releases to see if they are different tag
series and if one is a prerelease.
2025-07-07 14:16:19 -04:00
Ryan Foster dc49a03697 Revert "CI: Prevent hotfixes from overwriting Flathub beta"
This reverts commit 8501c45390.
2025-07-07 14:16:19 -04:00
Ryan Foster e14ffeaacd Revert "fixup! CI: Prevent hotfixes from overwriting Flathub beta"
This reverts commit 9d3f14683a.
2025-07-07 14:16:19 -04:00
Ryan Foster 9d3f14683a fixup! CI: Prevent hotfixes from overwriting Flathub beta 2025-07-07 13:50:48 -04:00
Ryan Foster 8501c45390 CI: Prevent hotfixes from overwriting Flathub beta
When 31.0.4 was published, it published to the Flathub beta channel,
which overwrote the running 31.1.0 beta/rc. This was due to an
assumption that we would not publish an out-of-band hotfix release once
we had moved to a new beta release cycle. To prevent this in the future,
we can check the last two releases to see if they are different tag
series and if one is a prerelease.
2025-07-07 13:50:48 -04:00
Ryan Foster d91ccdefd2 obs-websocket: Update version to 5.6.2
Changes:
- Update translations
2025-07-04 13:52:56 -04:00
Ryan Foster 5f64568312 obs-browser: Update version to 2.25.2
033a23b - Update version to 2.25.2
2025-07-04 13:52:56 -04:00
Gol-D-AceandRyan Foster 9a4632ecb4 win-capture: Add Wuthering Waves to compatibility list 2025-07-02 13:30:49 -04:00
Gol-D-AceandRyan Foster d92cb156fc win-capture: Add Roblox to compatibility list 2025-07-01 15:04:20 -04:00
Matt GajownikandRyan Foster 70c85f9875 Update translations from Crowdin 2025-07-01 13:34:08 -04:00
Ryan Foster c605aa6d84 CI: Update minimum macOS version to 12 for building 2025-06-30 14:50:14 -04:00
Ryan Foster 86036c6dd9 CI: Update macOS deployment target to macOS 12
Qt 6.8.3 only supports macOS 12+. It does not support macOS 11, and OBS
Studio will fail to launch on macOS 11 as a result. We should reflect
that with our deployment target.

https://doc.qt.io/qt-6.8/supported-platforms.html
2025-06-30 14:50:14 -04:00
jcmandRyan Foster 6134923fe7 mac-virtualcam: Resolve deprecation warnings to reflect 12.0 target 2025-06-30 14:50:14 -04:00
jcmandRyan Foster 9dc9d67fd0 mac-avcapture: Resolve deprecation warnings to reflect 12.0 target 2025-06-30 14:50:14 -04:00
Sebastian BeckmannandRyan Foster d3c5d2ce0b frontend: Set Frontend-API QActions role to NoRole
When no role is set, the default is QAction::TextHeuristicRole. This
means that the text of the item gets fuzzy-matched in Qt against a set
of possible strings that could indicate that the menu should be in the
application menu on macOS.
For us this meant however that on some languages, the translation of
"WebSocket Server Settings" would begin with "Config", and as such the
related QAction replaces our "Settings" action for the PreferencesRole,
and clicking "Preferences..." in the application menu would open the
websocket settings. It should probably be considered a bug in Qt that
implicit matches via TextHeuristicRole can overwrite ones that are
explicitly set (like our PreferencesRole). However we explicitly set our
roles ourselves anyways and there is no scenario where a  plugin should
overwrite them, we can just default actions added via the Frontend API
to be NoRole; and worry about the Qt bug later.
31.1.0-rc1
2025-06-16 15:20:41 -04:00
PatTheMavandRyan Foster 059fd6210c frontend: Fix visibility issues of meta type stream operators
For custom types to become usable as QVariants they not only need to
be declared as meta types, but also need to have appropriate stream
operators declared.

These declarations (both of the meta type itself, which provides a
static meta type ID getter via the macro, as well as the operators)
need to be visible to the compiler in any compilation unit where they
might be used in their QVariant form, otherwise the templates will
be incomplete.

A blanket include of "qt-wrappers.hpp" in "OBSBasic.hpp" is not the
most subtle fix, but it's necessary to ensure that the meta types
are always "complete". Putting both declarations in the qt-wrappers
header (instead of splitting them up) ensures that (as the classes
themselves are declared in "obs.hpp", which is included by
"qt-wrappers.hpp", and thus qt-wrappers can provide a complete class.
2025-06-16 14:44:27 -04:00
shiina424andRyan Foster bd68d33b0d frontend: Fix preview zoom buttons translation string 2025-06-16 13:31:20 -04:00
Ryan Foster 5e7804c137 obs-websocket: Update version to 5.6.1
Changes:
- Update translations

Other Notes:
This diff effectively reverts an accidental submodule commit rollback
that occurred in ffef7504ac.
As a result, the submodule diff is larger than intended. However, the
only net changes between 31.1.0-beta2 and this commit are the updated
translations.
2025-06-13 18:23:21 -04:00
Ryan Foster b9bbde2e42 obs-browser: Update to 2.25.1
788cc61 - Update translations from Crowdin
6987eab - Allow vertical scrolling of error pages
9ffe382 - Update version to 2.25.1
2025-06-13 18:23:21 -04:00
shiina424andRyan Foster 2b38b92652 frontend: Fix group icon position in System theme 2025-06-13 17:54:04 -04:00
Ryan Foster f42412938d CI: Use rebuilt CEF to avoid memory allocation crashes on macOS
Use a rebuilt CEF of the same version (6533) that additionally disables
use_allocator_shim to avoid memory-related crashes on macOS 13 and
older.
2025-06-13 14:44:57 -04:00
Ryan Foster e7480af67d CI: Update sign-windows commit 2025-06-11 15:01:45 -04:00
Matt GajownikandRyan Foster ffef7504ac Update translations from Crowdin 2025-06-09 14:55:50 -04:00
Ryan Foster 68c01125d2 CI: Update steam-upload runner to macos-15 31.1.0-beta2 2025-06-06 17:45:48 -04:00
Ryan Foster 96aba03cf4 CI: Update windows-signing to rclone 1.69.3 2025-06-06 17:22:14 -04:00
Ryan Foster 8b5f82ff20 CI: Make windows-signing fully architecture aware 2025-06-06 16:32:35 -04:00
Ryan Foster 122c7f1123 CI: Use architecture subfolder for OBS builds for windows-signing 2025-06-06 16:32:35 -04:00
Ryan Foster 8c3a1d5053 CI: Use architecture subfolder for old builds for windows-patches 2025-06-06 16:32:35 -04:00
Ryan Foster bf902d8702 CI: Fix Steam upload again
After bf48a84d1c, the scheduled nightly
runs began to fail because the filenames of the artifacts had changed.
This would also have caused uploads on tag to fail. Explicitly specify
the asset architecture here. Windows arm64 builds are still ignored for
Steam Upload for now.
2025-06-06 15:51:43 -04:00
Ryan Foster ec041aa145 CI: Unpin actions/upload-artifact to v4.3.5 for windows-patches
We had previously pinned this to avoid a bug in the action. Said bug is
marked fixed as of actions/upload-artifact v4.4.1, so let us unpin this
and use actions/upload-artifact@v4 like we do everywhere else.

References:
 - https://github.com/obsproject/obs-studio/commit/df742ed0323feffa903381c16d81477db332b9b3
 - https://github.com/actions/upload-artifact/releases/tag/v4.4.1
2025-06-06 12:02:15 -04:00
Sebastian BeckmannandRyan Foster 1d5bcec80f frontend: Make Mac font base value configurable
Sets the base value to 1.2 times the "displayed" value instead of
forcing 12 (which was 1.2x of the default 10pt). This should look the
same as on other operating systems.
2025-06-05 15:19:49 -04:00
Sebastian BeckmannandRyan Foster 3cba029a38 frontend: Recognize OBS appearance setting usage in math statements
The check for whether an OBS appearance setting is used in a theme only
checks whether there is a direct alias to an injected variable, like
`--font_base_value: var(--obsFontScale)`. Math statements like
`--font_base_value: calc(1 + var(--obsFontScale))` would not get
recognized, so if a theme only uses such statements (no direct aliases),
the check would wrongfully conclude that the appearance setting is not
used, which would later lead to the setting being disabled in the UI.
The value however would be injected correctly.

This can be mitigated by checking whether the arguments of the math
operations contain the expression.
2025-06-05 15:19:49 -04:00
Huts, RomanandRyan Foster 48feb2c593 obs-ffmpeg: Add B-frame CQP support for AMD AV1 encoder 2025-06-05 14:37:20 -04:00
Ryan Foster bf48a84d1c CI: Explicitly label Windows artifact and asset architecture
Explicitly label the Windows x64 artifacts and assets as such to
disambiguate them from the Windows arm64 artifacts and assets.

Subsequently, make the windows-patches action able to take an
architecture argument which defaults to x64. This will help enable later
usage for Windows arm64.

Lastly, rearrange some of the Windows lines in push.yaml to have a
consistent order.
2025-06-04 16:26:58 -04:00
PatTheMavandRyan Foster 8b7331642f frontend: Fix metatype declaration for scenes' SignalContainer
To be used as a QVariant, stream operators need to be provided
as the meta type will otherwise be considered "incomplete". These were
implemented before the frontend reorganization but not migrated as part
of it.
2025-06-04 14:15:11 -04:00
MonsteerandRyan Foster 34eb24508b frontend: Fix tab padding for the new appearance options
Add padding variables for tabs to allow the new density option.
2025-06-04 13:49:27 -04:00
shiina424andRyan Foster 6a01aab641 frontend/forms: Fix text cut off in multitrack video info 2025-06-04 13:26:33 -04:00
Sebastian BeckmannandRyan Foster cabe65cb98 frontend/forms: Fix duplicate UI element name warning
horizontalLayout_5 was already used further up.
2025-06-04 13:03:35 -04:00
Warchamp7andRyan Foster b45f776ee3 frontend: Set minimum width for menubar padding 2025-06-04 12:30:51 -04:00
Warchamp7andRyan Foster 86e3e4b358 frontend: Fix appearance settings enabling Apply button 2025-06-04 12:30:51 -04:00
Warchamp7andRyan Foster dd71444069 frontend: Update projector menu for disabled preview 2025-06-04 12:30:51 -04:00
Warchamp7andRyan Foster 31bcad96ad frontend: Adjust volume mixer styling on Classic theme 2025-06-04 12:30:51 -04:00
Sebastian BeckmannandRyan Foster 8e66418dc9 libobs: Actually mark obs_[add|remove]_data_path as deprecated
3311a7105e was meant to mark these as
deprecated, but put the deprecated marker in the .c file which doesn't
work.
2025-06-02 14:50:19 -04:00
shiina424andRyan Foster b611c58fa9 shared/obs-hook-config: Update graphics hook to 1.8.7 2025-06-02 14:09:44 -04:00
Ryan Foster bbbdb8806b CI: Fix CEF ubuntu-aarch64 build
The v3 build did not have the wrapper built. This fixes that.
2025-06-02 13:47:59 -04:00
Ryan Foster c6a226fe91 CI: Fix Steam Upload
The recent addition of WoA builds caused Steam Upload to fail. Be more
explicit about what file to unzip and what files to remove to get the
Steam Upload for Windows x64 working again.

Note that this does remove all Windows zip files and not just the x64
ones. This is because we don't currently process the WoA files, and the
intent here seems to be to clean up all unnecessary files before running
the actual upload step. This will have to be updated if/when this is
updated to process WoA files.
2025-06-02 13:28:29 -04:00
Ryan Foster 796f04865b CI: Add WoA artifacts to releases
This only adds the build and the PDB zips to releases. We don't build
the installer right now, so we don't have to handle that here yet.
2025-06-02 13:08:19 -04:00
Ryan Foster 9bd4514b45 frontend: Ensure cookie ID is always 16 hexadecimal characters
At a glance, the GenId function looks like it can only return a
16-character hexadecimal string with all characters being [0-9A-F].
However, it seems that it can rarely return a 16-character string that
has one or two space characters at the beginning due to the value of id,
from which the final string is derived, being too low (lower than
1152921504606846976 or 0x1000000000000000) and the printf format
specifier having a width of 16. This results in a string of less than 16
characters that is padded with blank spaces. The end result is a cookie
directory that has leading spaces in its name, which can cause various
issues, such as breaking syncing on OneDrive.

If we set the format specifier to pad with zeroes instead of spaces, the
resulting hexadecimal value is always 16 characters long without spaces.
31.1.0-beta1
2025-05-28 12:42:22 -04:00
Warchamp7andRyan Foster a3884d1375 frontend: Update Dock toolbar styling 2025-05-28 12:22:41 -04:00