10022 Commits

Author SHA1 Message Date
jp9000
e8d366f789 obs-ffmpeg/ffmpeg-mux: Allow codecs of any type
Allows the ability to mux with a codec which may not actually have an
encoder implementation within the current build of FFmpeg
2021-10-25 12:24:16 -07:00
jp9000
a4146a685b libobs: Allow last encoder error for last output error
(This commit also modifies UI)

This makes it more trivial for encoder plugins to communicate to users
why specifically an encoder error might have occurred mid-stream.
2021-10-25 12:24:16 -07:00
jp9000
6534bf5834 obs-x264: Move options parser to its own lib 2021-10-25 12:24:16 -07:00
furious
0c1524b53c UI: Add Hotkey filter search and duplicate detection 2021-10-24 08:39:53 -07:00
gxalpha
16906e7290 CI: Add copyright information to macOS bundle plist 2021-10-24 02:29:12 -07:00
Tommy Vercetti
19fab46ef7 simde: Update README.libobs 2021-10-24 02:26:17 -07:00
Tommy Vercetti
24a6766543 simde: Don't format simde 2021-10-24 02:26:17 -07:00
Grant Likely
0ac286bc27 Themes: Specify QListView instead of QListWidget
Plugins using a QListView widget (e.g. obs-ptz) do not get the theme
settings that are applied to QListWidget. However, QListWidget directly
inherits from QListView, so a theme specifying the QListView will also
get applied to QListWidget. Change the themes to all specify QListView
so that theming is consistent.

Signed-off-by: Grant Likely <grant.likely@secretlab.ca>
2021-10-24 02:23:55 -07:00
Jim
355eb4b8df
Merge pull request #5269 from jpark37/wasapi-cleanup
win-wasapi: WASAPISource improvements
2021-10-24 02:16:40 -07:00
Tommy Vercetti
31187d6997 obs-qsv11: Add ENABLE_QSV11 option 2021-10-24 02:13:04 -07:00
Clayton Groeneveld
d9b4fbba1a UI: Disable properties for groups in context menu
Makes it consistent with the source context menu.
2021-10-24 02:06:19 -07:00
Tommy Vercetti
232c35cc22 obs-filters: Add libSpeexDSP guard to method
`method` should be used under the same condition as they were defined. That is when both `LIBRNNOISE_ENABLED` and  `LIBSPEEXDSP_ENABLED` are defined.
2021-10-24 02:02:53 -07:00
Clayton Groeneveld
13c7998cb5 UI: Fix vertical/horizontal scene item alignment
If the transform position alignment was set to anything but
top left, or the item was flipped, the item would be moved to
the the wrong position when centering vertically or horizontally.
2021-10-24 02:01:56 -07:00
jp9000
48ee5a8ac9 libobs: Mark unused audio functions as deprecated 2021-10-24 02:00:16 -07:00
jp9000
18f97fb494 Revert "libobs: Remove unused volmeter code"
This reverts commit 07d30cbff9a0720fb4425f6790de65a7760d0fdd.
2021-10-24 01:58:46 -07:00
Clayton Groeneveld
07d30cbff9 libobs: Remove unused volmeter code
This code is unused as the volmeter interval is set on the
UI side.
2021-10-24 01:57:28 -07:00
Matt Gajownik
ffa733bd7f UI: Remove duplicate minimum width definition 2021-10-24 19:33:09 +11:00
Jim
5a9d4d1b26
Merge pull request #5411 from derrod/yt-fixes
More YouTube fixes
2021-10-24 00:47:51 -07:00
vishakh-h
c7f095ebd7 rtmp-services: add "Jio Games" 2021-10-24 00:46:33 -07:00
Matt Gajownik
a4f0999df5 CI: Validate Qt XML in UI files 2021-10-24 00:42:05 -07:00
Matt Gajownik
b03dc67a62 UI: Clean up XML warnings in layout files 2021-10-24 00:42:05 -07:00
Matt Gajownik
2568a5106d UI: Add Qt XML Schema definitions for validation
As all the .ui files follow a set schema, providing a way to validate
that schema is useful for manual XML modifications.

XML-Schema-Qt5.15.xsd source: https://doc.qt.io/qt-5/designer-ui-file-format.html
Note: some lines had to be commented out as they are not valid in XSD.
When a new version of Qt is used, compare the diff and update as necessary.

This file doesn't do anything on its own, but can be paired with an IDE
or a standalone linter to perform validation.
2021-10-24 00:42:05 -07:00
Aidan Delaney
f319556dc1 obs-qsv11: Add plain-text copy of QSV11 email chain
Add a plain-text copy of the email chain that clarifies Intel's
position on the license of the QSV11 code.
2021-10-24 00:39:09 -07:00
Aidan Delaney
134ffe924f obs-qsv11: Remove Intel NDA from qsv11 plugin
Intel committed an NDA disclaimer on each source file.  The stated
intention was that the NDA "added to OBS doesn't apply to open source
code once it's been accepted by the community. You can remove it for
your modifications".  This quote is from an email chain involving
Intel's legal team and developers.  The NDA in the source files
mistakenly triggers source code scanners that look for license
violations.  I have removed the comments that contain the NDA.
2021-10-24 00:39:09 -07:00
a1346054
ebd8647c4a COPYING: Use license file from gnu.org
They:
* changed maximum line length to <80
* stopped mixing tabs and spaces
* refer to LGPL as 'Lesser' instead of 'Library'
* removed non-printing characters that break some editors

Downloaded from:
https://www.gnu.org/licenses/old-licenses/gpl-2.0.txt
2021-10-24 00:35:27 -07:00
gxalpha
4a50e62120 mac-virtualcam: Remove unnecessary plugin version number 2021-10-24 00:22:53 -07:00
Clayton Groeneveld
96a5e11cd9 UI: Cleanup advanced audio functions
This removes the AdvAudioPropsClicked and AdvAudioPropsDestroyed
functions. The click function was not being used anywhere and the
destroy function was redundant because the dialog is set
to be deleted on close.
2021-10-24 00:21:10 -07:00
Morgan Rose
ccdf624c44 UI: Refactor Frontend API and header
Moved getters to be before setters. Moved functions in cpp file to match the order of their declarations in the header file.
2021-10-24 00:17:22 -07:00
Clayton Groeneveld
dae03c8a9f UI: Change position of filters defaults button
The button was not on the left side, as other default buttons are in
the UI.
2021-10-24 00:11:54 -07:00
Clayton Groeneveld
bb43a6fa7c UI: Make transition duration suffixes consistent
The suffixes for the source and override transition durations
were not consistent with the transition dock duration.
2021-10-24 00:10:45 -07:00
Norihiro Kamae
499af309b5 obs-ffmpeg: Fix unwritten audio-only output
When video is disabled, no audio was sent to the container so that the
audio was not saved. Prior to this change, all audio was discarded until
the first video packet arrives. This change limits to discard audio only
if video is available.
2021-10-24 00:02:32 -07:00
Norihiro Kamae
85f45a3ef6 libobs/audio-monitoring: Fix PulseAudio monitoring volume for u8 format
Change `char` to `uint8_t` in `process_byte` because the type is
expected unsigned 8-bit.
2021-10-23 23:59:53 -07:00
Norihiro Kamae
0eed7ca98f libobs/audio-monitoring: Fix PulseAudio monitoring volume for s32 format
When signed 32-bit audio arrived to pulseaudio-output and volume was
lowered, audio data was broken. In the function `process_volume`, the
type of the data is switched by `bytes_per_channel`. However the size of
signed 32-bit integer and the size of float are same so that the signed
32-bit integer is processed as float.
This commit changes these items.
- Use `format` instead of `bytes_per_channel` so that all the sample
  types can be differentiated.
- Change `short` to `int16_t` and renames existing function
  `process_short` to `process_s16` to clarify the function is
  processing signed 16-bit.
2021-10-23 23:59:53 -07:00
Matt Gajownik
8f1d2458bf decklink-captions: Build with Windows file descriptor
Additional details: #1944
2021-10-17 18:25:58 +11:00
James Beddek
5fccf86b07 UI: Fix build with Clang and libc++
std::bind conflicts with extern int bind defined in socket.h

Signed-off-by: James Beddek <telans@posteo.de>
2021-10-16 16:14:32 -07:00
Artem Polishchuk
3f341639ce CI: Update KDE image to 5.15-21.08 (Flatpak)
Update Flatpak KDE image to 5.15-21.08 in GitHub Actions.
2021-10-16 15:55:10 -07:00
Artem Polishchuk
8a1d74688c CI: Update modules for Flatpak build
* CI: Update mbedtls to v2.27.0
  * CI: Update srt to v1.4.4

Mandatory update for org.kde.Platform 5.15-21.08 runtime.
2021-10-16 15:55:10 -07:00
Artem Polishchuk
2f636ab2da CI: Update KDE Platform to 5.15-21.08 (Flatpak) 2021-10-16 15:55:10 -07:00
VodBox
19ced32c58 UI: Translate to current OS for all colection imports
Importers are written to convert third-party collection formats to a
Windows OBS scene collection. The Studio importer is capable of
translating scene collections to the correct types for the current
operating system. This change makes it so all imports will be ran
through the Studio translation, not just Studio and SL collections.
2021-10-16 15:34:53 -07:00
VodBox
8a132ad69f UI: Resolve relative paths on scene collection import
This change makes it so any strings in a scene collection that start
with "./" are checked as being a relative path. As long as the resulting
absolute path is contained within the same directory as the collection
being imported, it will be replaced with an absolute path.

This allows scene collections to be effectively "packaged" with assets,
so long as the assets are contained somewhere within the folder the
collection is being imported from.
2021-10-16 15:34:53 -07:00
gxalpha
5c26bf06f0 UI: Use correct color property for freetype in toolbar 2021-10-16 15:30:41 -07:00
gxalpha
4bd69bf46e UI: Make toolbar color selectors respect alpha 2021-10-16 15:30:41 -07:00
gxalpha
fab23d523b mac-virtualcam: Remove unneeded includes 2021-10-16 15:27:51 -07:00
Alexis King
08d4456339 v4l2: Ignore menu controls with no permissible values
At least one V4L2 device reports a menu control when queried with
QUERYCTRL yet does not report supporting a single value in its legal
range when queried with QUERYMENU. Such devices are arguably
ill-behaved, but the Linux UVC driver takes no special care to ignore
such pathological controls, so we have to do it ourselves.

Without this patch, a menu control with no valid values would cause
v4l2_control_changed to go into an infinite loop, since every S_CTRL
request on such pathological control properties would always fail,
triggering an additional modification event. By ignoring these
properties altogether, we avoid that problem, and the user benefits by
not having the UI cluttered by a confusing and useless menu control.
2021-10-16 15:24:20 -07:00
gxalpha
8f0964c2dd UI: Don't save defaults in oldSettings in properties
The default settings were saved in the oldSettings variable of the
properties dialog in `86eb7ae` to be able to restore default settings in
undo/redo, but this doesn't actually do anything.
Besides this, it introduced a bug where clicking "Cancel" in the
properties dialog would save all settings, including default ones, as
well as a bug where not changing anything in the properties dialog would
still add an undo action.
2021-10-16 15:07:13 -07:00
jp9000
b173d1ce2c UI: Disable paste source menu items when removed
Disables the "Paste (Reference)" and "Paste (Copy)" for sources when the
sources that have been copied have been removed

Fixes obsproject/obs-studio#4074
Closes obsproject/obs-studio#4096
2021-10-15 22:11:03 -07:00
jp9000
52497d23bb UI: Don't copy via name, use weak refs
This change makes it so that when copying filters or sources, that it
stores a weak reference to the source(s) or filter(s) being copied
rather than relying on their names.
2021-10-15 22:10:33 -07:00
jp9000
9819cb2924 libobs: Add obs_weak_source_expired() 2021-10-15 22:10:33 -07:00
Scratch
a78558b46a obs-scripting: add transition duration functions 2021-10-15 16:50:59 -07:00
Mike
96449877ef UI: Update Edit menu item states before displaying
Originally, the states of the items in the Edit menu would only update
when a context menu popup was created for sources. This moves that code
out of the context menu creation, and into its own dedicated function.
That function is then used both before the Edit menu is shown, and
before the context menu is created.

Fixes obsproject/obs-studio#3827
2021-10-15 16:11:08 -07:00