Commit Graph

5818 Commits (1f1120f4a447d1992e80ed17e60c2e223cd533fb)

Author SHA1 Message Date
pkviet 732617251c UI: Fix mem leak with volume meter 2018-06-07 00:44:28 +02:00
Jim 8c0be08040
Merge pull request #1309 from nleseul/effect-arg-modifier
libobs: Handle 'in', 'out', and 'inout' keywords in shader parsers
2018-06-05 15:51:36 -07:00
craftwar 36d893db03 UI: Compact ClearVolumeControls()
Closes obsproject/obs-studio#1296
2018-06-05 14:46:02 -07:00
vokama 54ab27bda6 UI: Update hotkey label on quick transition rename 2018-06-05 01:38:19 +03:00
vokama 4c73e5f6c5 libobs: Update hotkey label on scene item rename 2018-06-05 01:24:42 +03:00
vokama c457630c39 libobs: Enable setting hotkey name and description 2018-06-05 01:23:19 +03:00
Jim bae80a3ec4
Merge pull request #1312 from stream-labs/fix-property-precision
obs-filters: Use double-precision where viable
2018-06-04 05:36:30 -07:00
Jim b188883966
Merge pull request #1315 from RytoEX/copy-stream-metadata-on-remux
libobs: Copy metadata for tracks/streams when remuxing
2018-06-04 04:52:43 -07:00
jp9000 88b6c63964 UI: Add grouping 2018-06-04 04:01:39 -07:00
jp9000 46cce067f0 UI: Fix missing newline at the end of a file 2018-06-03 15:04:40 -07:00
jp9000 196eed8e8f UI: Refactor DrawCircleAtPos 2018-06-03 15:04:40 -07:00
jp9000 c7897acddf UI: Use vector value for nudge callback 2018-06-03 15:04:39 -07:00
jp9000 4fd22f1316 UI: Move frontend API initialization to constructor 2018-06-03 15:04:39 -07:00
jp9000 26d5560da3 libobs: Add scene item grouping
Allows the ability to group scene items.  Groups internally are
sub-scenes, which allows the ability to add unique filters and
transforms to each group.
2018-06-03 15:04:39 -07:00
jp9000 690f738a76 libobs: Add custom size support to scenes
Allows scenes to have a custom size.  Mainly used for grouping, but can
be extended with public API later.
2018-06-03 15:04:39 -07:00
jp9000 f0164f9d28 libobs: Do not signal reorder while scene mutex locked
Prevents a potential race condition with the scene mutex.
2018-06-03 15:04:39 -07:00
jp9000 ff52d34027 libobs: Defer and refactor scene item transform update
Defers updating the scene item transform to the graphics thread to
reduce the number of transform update calls.
2018-06-03 15:04:39 -07:00
jp9000 7a2337c1f2 libobs: Refactor item signaling (add func to signal parent) 2018-06-03 15:04:39 -07:00
jp9000 a1012c3f2c libobs: Do not draw item texture if source size 0 2018-06-03 15:04:39 -07:00
jp9000 b3dfd7ef80 libobs: Fix bug where cropped items would recalc transform
Fixes a bug where items that had cropping would recalculate transform
every frame.  obs_scene_item::last_width and obs_scene_item::last_height
would be set to the cropped sizes rather than the source's actual size.
2018-06-03 15:04:38 -07:00
jp9000 df88140e6a libobs: Zero scene data instead of setting members manually 2018-06-03 15:04:38 -07:00
jp9000 3a05cf6ab0 libobs/callback: Add signal reference counting
Adds a simple signal reference counting function
(signal_handler_connect_ref) that makes it so that signals keep the
handler around until the all the signal itself is disconnected.  This
prevents potential crashes where a signal might try to disconnect after
a handler has already been destroyed (typically in C++ with
OBSSignalHandler helper objects, where destruction isn't guaranteed to
be predictable).

This also modifies OBSSignalHandler to use the reference-counting
connections.
2018-06-03 15:04:03 -07:00
jp9000 10fc206f98 libobs: Refactor obs_scene_add to allow adding internally
Allows using obs_scene_add_internal to add without sending signals.
2018-06-03 07:24:59 -07:00
jp9000 b46fab87b2 UI: Fix a few unused lambda closure captures 2018-06-03 07:24:59 -07:00
Ryan Foster 797c9d330c libobs: Copy metadata for tracks/streams when remuxing 2018-06-02 10:15:13 -04:00
Zachary Lund 698e6418ba obs-filters: Use double-precision where viable
We're expecting a variable with double precision. Since we don't read
the value of these doubles with a particular precision, it can often
lead to unpredictable results where the value set isn't the one
intended due to the loss of precision from float->double conversion.
2018-05-30 14:52:39 -07:00
Richard Stanway 834ebbd2d4
libobs: Avoid busy cursor when starting processes
Windows 10 shows a busy cursor when a process is created, this is not
useful for our background processes which have no UI.
2018-05-30 17:25:33 +02:00
Zachary Lund 396c05e23c libobs: Allow custom core data paths
Closes obsproject/obs-studio#1300
2018-05-29 04:56:37 -07:00
Jim 3dccabe96c
Merge pull request #1302 from craftwar/appveyor
CI: Upgrade to VS2017 on Appveyor
2018-05-29 02:22:04 -07:00
nleseul 5a111cf073 libobs: Handle 'in', 'out', and 'inout' keywords in shader parsers 2018-05-28 12:07:20 -04:00
Ryan Foster 1f592d12aa obs-ffmpeg: Set average framerate in video stream
This commit fixes an issue where videos created with OBS will appear as
having 1000 FPS in some media players.
2018-05-27 00:45:05 -04:00
Justin Love a4b2b6f3bf Make alpha visible in property color
Show a light/dark pattern so alpha in the selected color is evident.
2018-05-26 09:23:05 -05:00
Justin Love 86b69b7d24 Use selected color in color property label
Originally wanted to do a separate color swatch, but was stymied by the
single widget reference in WidgetInfo. Using QPalette values achives
basic white/black text for contrast, though it is still possible to
select a color with poor contrast.
2018-05-23 11:50:41 -05:00
Jim 32d2aeb4ee
Merge pull request #1260 from admshao/multiview-updates
Multiview updates
2018-05-21 14:58:55 -07:00
craftwar 563e90a9fd CI: Upgrade to VS2017 on Appveyor 2018-05-21 11:44:40 +08:00
Shaolin c145b129f3 UI: Add new Multiview Layout for up to 24 scenes
The variable name changes were done with the intent to ease the
abstraction of the scene, preview and program width/height size
so its not related with the canvas size but directly related with
our concept of scenes.
2018-05-20 23:20:52 -03:00
Shaolin b3a4051530 UI: Move more fixed values to multiview update 2018-05-20 23:20:52 -03:00
Shaolin 5921558548 UI: Adjust the multiview num sources by the layout
The variable name changes were done with the intent to ease the
abstraction of the scene, preview and program width/height size
so its not related with the canvas size but directly related with
our concept of scenes.
2018-05-20 23:20:52 -03:00
Shaolin abb929c0d1 UI: Calculate fixed values of the Multiview once 2018-05-20 23:20:52 -03:00
Shaolin 5b642c14de UI: Move multiview setting checks from draw path 2018-05-20 23:20:52 -03:00
Shaolin b8966802ef UI: Add option to toggle multiview draw safe area 2018-05-20 23:20:52 -03:00
Shaolin 03de558af1 UI: Update multiview safe areas
Make the safe areas respect the EBU R 95 and Rec. ITU-R BT.1848-1
standards for 16:9 content.
Links: https://tech.ebu.ch/docs/r/r095rev1_March2016.pdf and
https://www.itu.int/dms_pubrec/itu-r/rec/bt/R-REC-BT.1848-1-201510-I!!PDF-E.pdf
2018-05-20 23:20:52 -03:00
Shaolin 4649783b1e UI: Add option to toggle multiview scene names 2018-05-20 23:20:52 -03:00
Shaolin e0e2cc57a0 UI: Add option to toggle multiview mouse switching 2018-05-20 23:20:52 -03:00
Shaolin 2420d4d31d UI: Move multiview settings to its own groupbox 2018-05-20 23:20:52 -03:00
Shaolin 177ce13655 UI: Update multiview on scene list reorder 2018-05-20 23:20:52 -03:00
Shaolin 09135d6917 UI: Update multiview on resolution change 2018-05-20 23:20:52 -03:00
Shaolin 959bdda48c UI: Adjust multiview label size 2018-05-20 23:20:52 -03:00
Shaolin b4d2d5d9c4 UI: Add proper source markers to multiview
This ensures the pixel correctness of the sources selection highlight
boxes when on a fullscreen projector.

When on a windowed projector due to the nature of int<->float
conversions and also due to the limited space, some source boxes
might be like 'off-by-one' and barely noticeable.
2018-05-20 23:20:52 -03:00
Shaolin 98839524f7 UI: Simplify multiview draw code 2018-05-20 23:20:52 -03:00