Commit graph

63 commits

Author SHA1 Message Date
PatTheMav 59904a66a3 cmake: Update Framework link definition for macOS builds 2023-06-17 12:23:33 -04:00
PatTheMav 50a4e83251 cmake: Remove Info.plist template files for macOS builds
Creation of Info.plist files through Xcode is more canonical and
future-proof, as it will automatically pick up changes/updates
introduced by Apple. Non-standard keys can still be added via a
template file, which will then be extended by Xcode with the default
keys.
2023-06-17 12:23:33 -04:00
PatTheMav f8e00d6071 clang-format: Update formatting of all ObjC and ObjC++ files 2023-06-11 14:56:45 +02:00
Lain 106c7aa61f Update copyrights/names 2023-05-20 01:31:18 -07:00
Translation Updater a0fbdc3c34 Update translations from Crowdin 2023-05-01 23:11:13 +00:00
PatTheMav 349372b3b3 cmake: Add changes for CMake build framework 3.0
New code path only taken if OBS_CMAKE_VERSION is set to 3.0.0 or
greater, old functionality remains unchanged.
2023-03-26 18:20:38 -04:00
gxalpha 9c6a3a1d49 obs-vst: Fix memory leaks on macOS when VST's fail to load
Detected by clang-analyzer.
2023-03-09 15:18:38 -05:00
derrod 2c48e61207 UI,obs-vst: Set Qt RCC format to 1
v2 introduces last-modified timestamps that ruin reproducibility.
2023-03-07 18:13:24 -05:00
PatTheMav f4bbe080bf obs-vst: Fix missing newlines at the end of files 2023-02-18 15:22:33 -08:00
bin d831e9403f obs-vst: Read plugins in symlink 2023-02-11 15:50:29 -08:00
Crocodile Gena a96211a0ee obs-vst: Add reporting of vendor name 2023-01-28 23:07:48 -08:00
tytan652 723ca8f034 CI,obs-vst: Update Flatpak KDE Runtime to version 6.4
The 6.4 runtime rely on Freedesktop 22.08 which provide a more recent
version of Mesa and PipeWire.

The switch to 22.08 also requires to migrate paths of VST 2 plugins.
2022-11-20 17:16:02 -05:00
Richard Stanway 02c6ce8b58 obs-vst: Improve some string handling
- Use constant references where appropriate
- Avoid unnecessary use of strcmp / strlen
- Clear std::string with clear()

Issues detected by PVS Studio.
2022-11-20 17:25:33 +11:00
Richard Stanway fe9c3748ce obs-vst: Use libobs memory allocation functions 2022-11-20 17:25:33 +11:00
PatTheMav e76fbaa016 obs-vst: Toggle properties button visibility upon VST selection
A prior patch made the button to show/hide a VST check the current
status of a loaded VST. This lead to situation where upon first
selection a VST might be loaded but the button's visibility is not
changed.

This change will reevaluate the status of a loaded VST upon selection
in the drop-down menu and trigger button visibility accordingly.
2022-10-09 16:33:27 -07:00
PatTheMav 2dbd6c2a2f obs-vst: Make VST editor buttons reflect UI and VST loaded state
This changes the buttons to better reflect the state of the filter:
* When no VST is loaded, hide both buttons
* Check if VST is loaded before changing visibility
* Check if VST is loaded and editor is open before changing visibility
2022-09-21 11:05:01 -04:00
PatTheMav 4a73b01581 obs-vst: Add public function to check for load state of VST
The bundle/dllHandle/soHandle property is private, so a getter method
is needed to fetch the status of a loaded VST.
2022-09-21 11:05:01 -04:00
PatTheMav e0f1f95c7a obs-vst: Fix crash on macOS when no VST bundle was loaded
When loading a function from the bundle fails, the binary is unloaded
and the reference is released, but the pointer itself is not reset -
thus the check in the unload function will succeed and try to unload
an invalid bundle reference.

Similar to Linux and Windows, the pointer needs to be explicitly set
to a null pointer to ensure this check fails.
2022-09-21 11:05:01 -04:00
PatTheMav 9c3c2edd6f obs-vst: Allow fetching source properties without source
Per OBS API documentation, `get_properties` can be used to get the
properties of a source, but also of a source type. The latter would
pass a NULL pointer for a given source.

This adds the necessary change to avoid crashing OBS by passing such
a null pointer.
2022-09-21 11:05:01 -04:00
Translation Updater 81734be37c Update translations from Crowdin 2022-07-31 23:40:53 +00:00
Matt Gajownik a7c3d94e4c obs-vst: Remove submodule in favour of direct merge 2/2
Please visit the submodule repo for blame history:
https://github.com/obsproject/obs-vst

This also replaces the obs-vst .clang-format with obs-studio's.

This commit depends on the previous commit, which removes the submodule
separately as Git complains otherwise.

Co-authored-by: Alex Anderson <anderson.john.alexander@gmail.com>
Co-authored-by: Anton <camotank12345@gmail.com>
Co-authored-by: Blue Cat Audio <support@bluecataudio.com>
Co-authored-by: Cephas Reis <c3r1c3@nevermindonline.com>
Co-authored-by: Colin Edwards <colin@recursivepenguin.com>
Co-authored-by: Florian Zwoch <fzwoch@gmail.com>
Co-authored-by: Fogmoon <i@fogmoon.com>
Co-authored-by: Gol-D-Ace <Gol-D-Ace@users.noreply.github.com>
Co-authored-by: Igor Bochkariov <ujifgc@gmail.com>
Co-authored-by: Jesse Chappell <jesse@sonosaurus.com>
Co-authored-by: Keen <523059842@qq.com>
Co-authored-by: Kurt Kartaltepe <kkartaltepe@gmail.com>
Co-authored-by: Matt Gajownik <matt@obsproject.com>
Co-authored-by: Matt Gajownik <matt@wizardcm.com>
Co-authored-by: Richard Stanway <notr1ch@users.noreply.github.com>
Co-authored-by: Ryan Foster <RytoEX@gmail.com>
Co-authored-by: follower <github@rancidbacon.com>
Co-authored-by: gxalpha <beckmann.sebastian@outlook.de>
Co-authored-by: jp9000 <obs.jim@gmail.com>
Co-authored-by: jpark37 <jpark37@users.noreply.github.com>
Co-authored-by: mntone <sd8@live.jp>
Co-authored-by: tytan652 <tytan652@tytanium.xyz>
Co-authored-by: wangshaohui <97082645@qq.com>
Co-authored-by: wangshaohui <wang.shaohui@navercorp.com>
2022-07-26 22:12:23 -04:00
Matt Gajownik 34ff76c0e7 obs-vst: Remove submodule in favour of direct merge 1/2
Please visit the submodule repo for blame history:
https://github.com/obsproject/obs-vst

NOTE: You may need to manually delete plugins/obs-vst to pull this diff.
2022-07-26 22:12:23 -04:00
tytan652 02537e9c4a obs-vst,obs-browser: Update submodules
- Update find_qt macro usage in CMake
- Remove QT_VERSION and find_qt macro definition in CMake
2022-07-26 17:34:26 +02:00
jpark37 731c6f991b obs-vst: Update submodule 2022-07-25 20:15:20 -07:00
PatTheMav f3e23c2332
obs-vst: Update submodule to pull in CMake changes 2022-03-17 14:28:59 +01:00
Translation Updater ac8dbf67be Update translations from Crowdin 2022-02-06 02:24:08 +00:00
jp9000 c2b1f93a7b obs-vst: Fix VSTs losing their settings when upgrading 2022-01-26 08:12:04 -08:00
Matt Gajownik 5c07cc12b2 obs-vst: Fix formatting, fix size truncation warning
31c2fc6 - Fix size truncation warning for silenceChannel
7e53139 - Fix formatting
2022-01-23 21:27:59 +11:00
Matt Gajownik 7c84fb49bc obs-vst: Fix closing & resizing VSTs on macOS
* 2b2f15f - Don't disable VST close button on macOS
* 95d81a3 - Fix resizing most VSTs on macOS
2022-01-22 19:07:16 +11:00
Matt Gajownik 00232e6b98 obs-vst: Fix mvMeter2 resize crash, fix SPAN resizing 2022-01-22 13:14:02 +11:00
Matt Gajownik cdb5b6e812 obs-vst: Fix crashes due to unhandled events, fix stutter when loading
* 106868e - Improve lock for effect object
* 566c213 - Handle more VST events to avoid crashes
2022-01-13 19:09:29 +11:00
Matt Gajownik 046d98d871 obs-vst: Fix crashes when switching VSTs, and large channel counts
* 0f6470c - Fix crash with plugins using large channel count
* 9cdde97 - obs-vst: Check hash before applying "chunk_data"
2022-01-11 10:41:57 +11:00
Matt Gajownik 5defdaf1db obs-vst: Fix resizing, always use source name in window title
425935a - Fix VST plug-ins disappearing when resized
2e90d23 - Correctly use source name (not target) for window title
2022-01-07 23:48:06 +11:00
jp9000 8629d6a028 obs-vst: Fix race condition and prevent double invoke
1dde4c37a obs-vst: Fix VSTPlugin::effect race condition
e33e8ee62 obs-vst: Modify VSTPlugin::closeEditor()
2021-12-23 10:58:44 -08:00
Matt Gajownik 96ee97e997 obs-vst: Avoid using empty editorWidget for deleteLater() 2021-12-19 10:55:59 +11:00
Translation Updater 261345f9ef Update translations from Crowdin 2021-12-12 02:38:59 +00:00
Matt Gajownik 748279bd86 obs-vst: Update submodule with a variety of bugfixes
- Cleanup EditorWidget.h
 - Modify log in obs-vst, fix compile error
 - Update effect name even effect is unavailable
 - Fix crash caused by unsupported interface
 - Use deleteLater on editorWidget to prevent crash
 - Check result after creating vst plugin
 - Fix button states on properties refresh
 - Replace QMacCocoaViewContainer with QWidget::createWindowContainer
 - Modify incorrect code about mallocing memory
2021-12-12 11:37:46 +11:00
Vainock 11a690b038 Update translations from Crowdin 2021-09-24 09:42:08 -07:00
Gol-D-Ace 90df8d44df Update translations from Crowdin 2021-05-30 20:33:35 +02:00
jp9000 740ff34b65 obs-vst: Remove unused code 2021-05-16 19:24:38 -07:00
jp9000 535e7dfa15 obs-vst: Update to latest version 2021-03-22 12:42:54 -07:00
Gol-D-Ace c66ebde080 Update translations from Crowdin 2020-09-27 23:07:27 +02:00
Matt Gajownik 3370e8fc12 obs-vst: Support older Qt versions 2020-08-29 10:56:12 +10:00
Matt Gajownik 94ca885bda obs-vst: Fix VST detection in home directory on Linux 2020-08-29 09:38:57 +10:00
Colin Edwards 78a40f0fc4 obs-vst: Fix crash when the blocksize is smaller than frames 2020-05-20 19:17:39 -05:00
Colin Edwards bfc2063b1a obs-vst: Compile the vst plugin on linux 2020-05-20 12:32:49 -05:00
jp9000 7993179466 cmake: Add cmake folders 2020-05-13 06:52:37 -07:00
jp9000 824a0ec416 obs-browser, obs-vst: Fix formatting 2020-04-23 16:50:13 -07:00
jp9000 01df98b3aa obs-vst: Fix formatting 2020-04-18 12:28:19 -07:00
Colin Edwards e7636f89a6 obs-vst: Don't allow widget close on macOS 2020-04-13 19:28:55 -05:00