5659 Commits

Author SHA1 Message Date
Shaolin
be8189b0f8 UI: Fix start up crash with saved projectors
This fixes a crash in case the user selected the option to save
projectors on exit and had multiple monitors at that time. Later on,
when obs is started again if the monitor list is lower now the open
projector code will return null when trying to create the saved
projector.

Just check if the returned projector pointer is valid before trying
to restore the saved geometry.
2018-07-24 17:43:58 -03:00
jp9000
d13bbe6e59 libobs: Always try to update transform in current thread
Due to the recent change in which scene items now only update their
transforms during the next frame's tick, snapping sources would
sometimes jitter and have incorrect snapping.  This fixes that issue by
reverting to the behavior of updating the transform immediately rather
than deferring the update to the next frame tick, but only on non-group
items.

This should not be done on items that are sub-items of groups because we
rely on the obs_scene_item::update_transform variable to update the
parent group's transform in addition.
2018-07-24 02:41:31 -07:00
jp9000
593345a3b1 libobs: Only update scene item texture on frame tick
Instead of updating the scene item texture any time
update_item_transform() is called, only update it when
obs_scene_item::update_transform is called.  Prevents having to lock the
graphics mutex needlessly.
2018-07-24 02:41:31 -07:00
jp9000
8741bfcb8f libobs: Don't assign variables before if/return 2018-07-24 02:41:31 -07:00
jp9000
7ef3350d50 UI: Do not open properties dialog for groups
On initial creation of an empty group, do not open a properties dialog
for groups.
2018-07-24 02:41:31 -07:00
Richard Stanway
cc69ec16ec
obs-outputs: Update librtmp with upstream patches
Mostly security / reliability related, fixing various access to
uninitialized data, integer overflows, etc from
https://git.ffmpeg.org/rtmpdump
2018-07-23 23:22:37 +02:00
Jim
12b592ccf0
Merge pull request #1380 from derrod/discord-webhook
CI: Add AppVeyor webhook for Discord bot
2018-07-22 15:19:31 -07:00
derrod
79684316a3 CI: Add AppVeyor webhook for Discord bot 2018-07-22 23:52:57 +02:00
Jim
17426240c9
Merge pull request #1378 from derrod/discord-webhook
CI: Add travis webhook URL for Discord bot
2018-07-22 11:45:20 -07:00
derrod
414929f296 CI: Add travis webhook for Discord bot 2018-07-22 20:30:02 +02:00
jp9000
8dc2e6b5fb UI: Add signal for when theme has changed 2018-07-21 19:14:36 -07:00
jp9000
e1ab9a0fc4 UI: Add ability to parse OBSStyle from qss
Adds the ability to set the current palette for the program via adding
"OBSTheme" objects to the qss files.  The values for the OBSTheme object
are the values used by QPalette::ColorRole.

Modifying the global palette allows the ability to easily/quickly look
up application theme colors (especially if you would like to use them
for QML), as well as the ability to fix the hyperlink color issue.  (On
dark themes, links would still be dark blue, causing them to be
difficult to see)
2018-07-21 19:14:36 -07:00
Jim
8b6d437a97
Merge pull request #1374 from mixer/ftl-update
obs-output: Update ftl-sdk version
2018-07-20 23:19:33 -07:00
jp9000
310c98e641 UI: Fix bug with advanced output service settings
When the user had advanced output mode selected and they created a new
profile, enforced service settings for advanced output mode would not be
applied because GetDataFromJsonFile would return a nullptr (because the
settings file did not yet exist).  Instead of returning nullptr, always
return a valid data object, and in addition, apply the defaults of the
encoder to pass to obs_service_apply_encoder_settings just to be safe.
2018-07-20 01:57:57 -07:00
jp9000
621c519cc5 libobs: Add function to get encoder object's defaults
Rather than relying on the encoder's type identifier, additionally allow
the ability to get defaults via an encoder object.
2018-07-20 01:49:32 -07:00
jp9000
2f49bf0463 obs-browser: Fix error and warning
Fixes an error and a warning when compiling with experimental shared
texture support.
2018-07-20 00:45:08 -07:00
jp9000
730764d557 obs-browser: Update to latest version 2018-07-20 00:33:27 -07:00
jp9000
d11b05a83d libobs: Defer update of scene item texture
If the scene item crop/filtering is updated, instead of
creating/destroying the item texture on the spot, update it in the
graphics thread to prevent potential race conditions (especially when
the crop function for example could be called from within
obs_scene_enum_items in some situations, which would lock the graphics
and scene mutexes in the wrong order).
2018-07-19 00:53:30 -07:00
jp9000
01ac60c760 UI: Allow alt-cropping on bounding box scene items
Allows the use of alt-cropping on scene items that have bounding box
enabled.  The crop will simply apply to the source within the bounding
box rather than try to do anything fancy.  A simple solution to an
annoying problem.
2018-07-18 22:04:32 -07:00
jp9000
1aeb87ac52 libobs/util: Don't use assert for darray_push_back_array
Instead, just check to see whether array and num are valid, and if they
are not, safely return.
2018-07-18 18:47:44 -07:00
Bird, Christopher
3a08e858a6 obs-qsv: Allow for multiple QSV encoders
Allow multiple QSV encoders, usefull for live + recorded parallel
sessions.  The first QSV encoder will create a DirectX device and return
a handle / pointer.  Any additional QSV encoder will use that same
pointer to the DirectX device.  We keep track of the number of open
QSV encoders so that we wait to close the DirectX resources after all
encoders are closed.

Closes obsproject/obs-studio#1341
2018-07-18 17:16:01 -07:00
Quinn Damerell
b5fb4d8673 obs-output: Update ftl-sdk version 2018-07-18 10:42:27 -07:00
Jim
8c910a9e3b
Merge pull request #1365 from cyberhicham/patch-1
Update INSTALL
2018-07-18 01:41:27 -07:00
Jim
75d460b2e8
Merge pull request #1353 from cg2121/fix-checkable-buttons
UI: Fix stream button checkable state
2018-07-18 01:28:49 -07:00
Jim
955bc849e0
Merge pull request #1349 from Fenrirthviti/acri-fix
UI: Update Acri theme for disabled buttons
2018-07-18 01:26:51 -07:00
Jim
d0c5f72048
Merge pull request #1348 from dtcooper/macos-fix-cef-path
CI: Fix CEF Path on Package Build
2018-07-18 01:26:34 -07:00
Jim
5d942a6be0
Merge pull request #1340 from RytoEX/update-sparkle-default-url
CI: Update Sparkle default base_url
2018-07-18 01:12:37 -07:00
Jim
af596592db
Merge pull request #1326 from admshao/transition_rename_fire_event
UI: Add missing OBS_FRONTEND_EVENT_TRANSITION_LIST_CHANGED
2018-07-18 00:54:46 -07:00
Ryan Foster
d4059f11c6 CI: Update Sparkle default base_url 2018-07-18 03:45:41 -04:00
Andrew Surzhynskyi
bfbe9de5b5 rtmp-services: Update ingest list for Restream.io
Closes obsproject/obs-studio#1347
2018-07-17 22:50:11 -07:00
Jim
4af10547bf
Merge pull request #1359 from eastkiki/master
rtmp-services: Add KakaoTV
2018-07-17 20:57:13 -07:00
Jim
b41113f972
Merge pull request #1370 from nocodedweb/master
rtmp-services: Update ingest list for GamePlank
2018-07-17 20:50:15 -07:00
Joshua Rowe
849f25f910 rtmp-services: Update ingest list for GamePlank 2018-07-17 07:37:03 -06:00
jp9000
573d5719d8 UI: Fix signals for sub-items of groups
Because sub-items of groups can no longer reroute their signals to the
parent scenes of groups, delegates removal handling to SourceTreeItem
instead of OBSBasic.
2018-07-16 19:03:34 -07:00
jp9000
256b7b793d UI: Add OBSBasic::SavingDisabled() function 2018-07-16 19:03:34 -07:00
jp9000
b4f345680f UI: Allow copying/pasting of groups
Allows copying and pasting of groups.  The user can fully duplicate the
group, or create a reference of the group.  The user cannot paste a
reference of the group if it already exists within the same scene
however.
2018-07-16 19:03:34 -07:00
jp9000
5dfab20a46 libobs: Allow group duplication 2018-07-16 19:03:34 -07:00
jp9000
5993834815 libobs: Change groups to actual public types
(This commit also modifies UI)

Changes groups to their own independent type, "group".  This allows them
to be used like other regular types, and allows the ability to reference
groups in multiple scenes.  Before, a group would always be linked to
the scene it was in.  This made it cumbersome for users to modify groups
if they had a similar group in multiple scenes (they would have to
modify each group in each scene).  Making groups like other source types
makes more sense to solve this issue so they can be referenced in
multiple scenes at once.  This also removes a significant amount of
group-specific handling code required for implementing groups in the
front-end.

One limitation however: due to the way sub-items of groups are
seamlessly modifiable and sortable as part of the whole scene, the user
cannot have multiple references to the same group within one scene.
2018-07-16 19:01:51 -07:00
jp9000
f45247d5c8 libobs: Abstract resize_group to resize_scene_base 2018-07-15 19:01:34 -07:00
jp9000
8f786db5f2 libobs: Refactor creation of scenes
Allows using a different source type (I.E. "group" instead of "scene").
2018-07-15 19:01:28 -07:00
jp9000
35704c4c04 libobs: Remove group_sceneitem from obs_scene struct
(This commit also modifies UI)

Removes obs_scene::group_sceneitem and replaces it with
obs_scene::is_group.  Changes a number of other functions related to
groups so that a group is not inherently tied to a specific scene, and
helps allow a single group to be referenced in multiple scenes if
desired.
2018-07-15 19:01:14 -07:00
jp9000
2329c6f6ea libobs: Add obs_data_array_push_back_array
Allows easily/safely appending all the values of one data array to
another.
2018-07-15 17:09:02 -07:00
Hicham LEMGHARI
6e9cf7d2cb
Update INSTALL 2018-07-14 08:21:00 +01:00
Shaolin
0c43448ca2 UI: Fix OBS_FRONTEND_EVENT_TRANSITION_LIST_CHANGED
This event is fired during Add/Delete operations but was missing on
renaming a transition.
2018-07-09 19:08:42 -03:00
eastkiki
4b7c64ef7e rtmp-services: Add KakaoTV 2018-07-09 17:14:02 +09:00
Matthew Szatmary
a8517f3698 libobs: Update libcaption library
(This commit also modifies deps/libcaption)

Closes obsproject/obs-studio#1354
2018-07-08 01:14:27 -07:00
Jim
f84e490ebe
Merge pull request #1355 from allenh1/fix-gcc-9-warnings
Fix GCC 9 Warnings
2018-07-07 11:52:17 -07:00
Jim
b00272210b
Merge pull request #1356 from TheMuso/fix-vlc-plugin-on-mac
vlc-video: Dlopen libvlccore.dylib on mac OS
2018-07-07 11:50:00 -07:00
Jim
b298f707b2
Merge pull request #1357 from wahajdar/service-addition/cast.io-rtmp-ingests
rtmp-services: Adding Castr.io ingests to service list
2018-07-07 11:34:54 -07:00
Wahaj Dar
2b0a728722 rtmp-services: Adding Castr.io ingests to service list 2018-07-04 10:29:18 +05:00