Commit Graph

1818 Commits (4ad41004e03076d189e21ec3084338ee4855df31)

Author SHA1 Message Date
Palana abb95781dd mac-capture: Rename display_capture::draw_effect to …::effect 2014-10-03 23:53:37 +02:00
jp9000 a1b46c0fa5 libobs-d3d11: Don't depend on specific D3DCompiler
I do not want the D3D11 library to depend on a specific compiler
version.  This way, I do not have to distribute D3D Compiler libraries
with the program (proprietary binary blobs).  Any particular version
works because the API for the D3DCompiler function appears to be the
same; the only things that change are other features and additions
mostly (at least as far as I can tell).  Using any version available on
the system should be more than sufficient rather than depending on some
specific D3D compiler version.

If the user doesn't have it, a download of the latest D3D distributables
should be fine, though it should work with the ones that come with
windows 7+ as well.
2014-10-03 14:33:56 -07:00
Palana 0f15cc143e Add obs_get_default_rect_effect
This provides a default effect for users of GL_TEXTURE_RECTANGLE/textures
that return true for gs_texture_is_rect
2014-10-03 20:18:01 +02:00
Palana 9c4024f5b3 Implement 'update_properties' for mac-avcapture 2014-10-01 15:48:16 +02:00
Palana 59f2a6ac5a Handle 'update_properties' signal in window-basic-properties 2014-10-01 15:39:58 +02:00
Palana b99c378e33 Add 'update_properties' signal and obs_source_update_properties call
obs_source_update_properties should be called by sources when property
values change, e.g. a capture device source would use this when it
detects a new capture device (in case its properties contain a list of
available capture devices or similar)
2014-10-01 15:39:57 +02:00
Palana 088a05db8f Move properties loading to OBSPropertiesView 2014-10-01 15:39:57 +02:00
Palana 7c0018d4bc Remove destructor from OBSPropertiesView 2014-10-01 15:39:57 +02:00
Palana 94a93abb2b (API Change) Pass data to get_properties when possible 2014-10-01 15:39:57 +02:00
Palana 74c4932184 Sort obs_data_items by name
This allows for easier comparison between two obs_data_t and it will make

const char *json1 = obs_data_get_json(data);
obs_data_t *data_ = obs_data_create_from_json(json1);
const char *json2 = obs_data_get_json(data_);

produce the same string in json1 and json2
2014-10-01 15:32:49 +02:00
BtbN 8841ea8a6f cmake: Export plugin data destination 2014-09-27 09:41:32 -07:00
BtbN f24f53ea27 cmake: Add helper function to install plain files 2014-09-27 09:41:32 -07:00
BtbN 73d3dbf947 cmake: Change obs helper macros to functions 2014-09-27 09:41:31 -07:00
BtbN 599febcb54 cmake: Replace FFMpeg modules with single module
Now using components instead of one find_package call per module
2014-09-27 09:41:13 -07:00
BtbN c9d3c6c8c1 cmake: Refactor growing list of library locations 2014-09-27 09:40:45 -07:00
BtbN 9dd341a3ed cmake: Properly check for Threading support 2014-09-26 22:52:30 -07:00
jp9000 41fad2d1a4 (API Change) Use const params where applicable
This Fixes a minor flaw with the API where data had to always be mutable
to be usable by the API.

Functions that do not modify the fundamental underlying data of a
structure should be marked as constant, both for safety and to signify
that the parameter is input only and will not be modified by the
function using it.
2014-09-26 17:23:07 -07:00
jp9000 05ac1aea2c Do not modify gs_init_data parameter in gs_create 2014-09-26 16:31:20 -07:00
jp9000 05f89f48ea Ensure num_backbuffers > 0 in gs_swapchain_create 2014-09-26 16:31:20 -07:00
Jim 3b91247f4b Merge pull request #271 from GoaLitiuM/master
Fixed NULL pointer dereferencing in linked lists
2014-09-26 15:45:22 -07:00
GoaLitiuM 10f5d7f3aa Fixed NULL pointer dereferencing in linked lists 2014-09-27 01:35:36 +03:00
Jim d17565afc8 Merge pull request #270 from jp9000/remove-type-pointers
Remove type pointers
2014-09-26 07:22:23 -07:00
jp9000 0ef7a3f3d0 libobs-opengl: Fix styling (80 column limit) 2014-09-25 21:48:16 -07:00
jp9000 c9df41c1e2 (API Change) Remove pointers from all typedefs
Typedef pointers are unsafe.  If you do:
typedef struct bla *bla_t;
then you cannot use it as a constant, such as: const bla_t, because
that constant will be to the pointer itself rather than to the
underlying data.  I admit this was a fundamental mistake that must
be corrected.

All typedefs that were pointer types will now have their pointers
removed from the type itself, and the pointers will be used when they
are actually used as variables/parameters/returns instead.

This does not break ABI though, which is pretty nice.
2014-09-25 21:48:11 -07:00
jp9000 4a06960188 Basic UI: Add "Use Constant Bitrate" advanced option.
It's better to use VBR for local recordings, so this option should be
nice for people who want to do that.
2014-09-24 21:22:50 -07:00
jp9000 fd64fbb2f4 Basic UI: Remove "CPU" from "x264 CPU Preset" text
I feel like people keep mistaking how x264 preset functions.  They often
associate it with their own CPU speed, and I feel the name does not help
with that issue.  I think it may be for the best to just take it out.
At best, it will keep people away from using it unless they know what
they're doing, and at worst, people at least won't be able to associate
it with their CPU as easily anymore.
2014-09-24 21:20:41 -07:00
jp9000 ecc102fc51 Basic UI: Clarify "advanced encoder settings" text
Change checkbox with text "Advanced Encoder Settings" to "Use Advanced
Encoder Settings".  This way it will hint that the settings will be
disabled when unchecked.
2014-09-24 21:13:28 -07:00
jp9000 d753cee1e7 win-dshow: Update libdshowcapture to 0.3.3
Adds full support for the HD-PVR Rocket
2014-09-23 04:56:39 -07:00
jp9000 46c0dd7ffb win-dshow: Change FFmpeg MPGA decoder
Apparently MPGA is equivalent to MP2, not MP1.
2014-09-23 04:56:33 -07:00
jp9000 1ccc03308d win-dshow: Add debug macros for logging timestamps 2014-09-23 04:56:32 -07:00
jp9000 5fb149a48c Add more search directories for cmake modules
I actually did this because it makes it a bit easier to use with a
build from cross-compiled windows FFMpeg/x264 DLLs.  When compiling on
linux I just have it compile to a custom prefix directory for the
specific windows arch, then I just copy the arch dir back to my windows
HD when complete.  Adding this to the cmake allows me to use the compile
arch directories directly without modification.
2014-09-23 04:56:32 -07:00
jp9000 3937f47954 Add *32 and *64 build directories to gitignore. 2014-09-23 04:56:31 -07:00
Jim 34e2b77c0f Merge pull request #266 from fryshorts/v4l2-input
Fix device capabilities checking and add "Leave unchanged" option for all settings.
2014-09-22 11:53:05 -07:00
jp9000 732d24caa1 Remove unused variables 2014-09-19 18:46:25 -07:00
jp9000 3967c6354a Replace ARB_separate_shader_objects extension
This replaces the ARB_separate_shader_objects extension with traditional
linked shaders.  I was able to get the existing system to use linked
shaders without having to change any libobs graphics API.

This essentially creates a linked list of shader programs with
references to the shaders they link.  Before draw, it searches that
linked list for a particular pixel/vertex shader pair, and the linked
program associated with it.  If no matching program exists, it creates
the program.
2014-09-19 18:23:51 -07:00
John Bradley 6ff5a3ab2c Fix APPLE -> __APPLE__ def in interaction gui 2014-09-17 12:09:26 -05:00
John Bradley c62a0059ed Set proper source relative X,Y coords on wheel interaction 2014-09-17 12:05:49 -05:00
John Bradley 3b0fa22f8a Move raw pointer usage/delete to RAII in interaction 2014-09-17 11:01:54 -05:00
John Bradley 688af46664 Remove interaction event filter in destructor
QT fakes a mouse move when destructing which is
caught by our filter
2014-09-17 10:02:53 -05:00
fryshorts 0132453d23 Add video format check in v4l2 input.
This adds a check whether the video format from the device is compatible
with obs. This could either happen if the "Leave unchanged" option is
selected for the video format, or if the driver simply overwrites the
requested video format.
2014-09-16 21:54:42 +02:00
fryshorts 91fc59faca Refactor source structure in v4l2 input.
Due to the refactoring of the update function the separation of data
members only to be accessed from inside/outside the capture thread is
no longer needed.
2014-09-16 21:54:42 +02:00
fryshorts 875398e9dd Refactor update function for v4l2 input.
The old implementation of this function assumed that there would be some
settings that could be changed on the fly without restarting the
capture. That was actually never used for any setting.
2014-09-16 20:46:04 +02:00
fryshorts 632642010d Minor refactoring in v4l2 input.
We don't really need to use a dstr here, simply using the
right format specifier for blog will suffice.
2014-09-16 20:35:09 +02:00
Jim c1da19e8c6 Merge pull request #267 from BtbN/seh
Disable safeseh on 32bit builds
2014-09-16 03:09:57 -07:00
BtbN aeab5c35ef Disable safeseh on 32bit builds 2014-09-16 10:37:08 +02:00
Jim 8bfa7398b0 Merge pull request #265 from kc5nra/interaction
Add interaction support to libobs and support for pumping the events/interaction in gui
2014-09-15 16:42:19 -07:00
John Bradley 4221134748 Add interaction gui 2014-09-15 18:29:26 -05:00
John Bradley 3f993e40df Add helper function to get specific scene item 2014-09-15 18:19:39 -05:00
kc5nra 26cf4688c2 Add interaction support to libobs 2014-09-15 17:19:37 -05:00
fryshorts c3783d055f Add option to leave settings unchanged in v4l2 input.
This adds an additional option for all settings to leave the current
configuration of the device unchanged.
2014-09-16 00:12:45 +02:00